Commit 797886bf authored by Linus Torvalds's avatar Linus Torvalds

Fix naming confusion: number of symbol kallsyms is "num_kallsyms",

while number of symbols is "num_syms". It used to be "num_syms" and
"num_ksyms" respectively (ie the "k" was the wrong way around).

The previous naming was not just confusing, it had caused one actual
bug (ie the normal symbol code had used "num_syms", which was wrong
in the old confusing naming scheme).
parent e193be86
...@@ -183,7 +183,7 @@ struct module ...@@ -183,7 +183,7 @@ struct module
/* Exported symbols */ /* Exported symbols */
const struct kernel_symbol *syms; const struct kernel_symbol *syms;
unsigned int num_ksyms; unsigned int num_syms;
const unsigned long *crcs; const unsigned long *crcs;
/* GPL-only exported symbols. */ /* GPL-only exported symbols. */
...@@ -233,7 +233,7 @@ struct module ...@@ -233,7 +233,7 @@ struct module
#ifdef CONFIG_KALLSYMS #ifdef CONFIG_KALLSYMS
/* We keep the symbol and string tables for kallsyms. */ /* We keep the symbol and string tables for kallsyms. */
Elf_Sym *symtab; Elf_Sym *symtab;
unsigned long num_syms; unsigned long num_kallsyms;
char *strtab; char *strtab;
#endif #endif
......
...@@ -156,7 +156,7 @@ static unsigned long __find_symbol(const char *name, ...@@ -156,7 +156,7 @@ static unsigned long __find_symbol(const char *name,
/* Now try modules. */ /* Now try modules. */
list_for_each_entry(mod, &modules, list) { list_for_each_entry(mod, &modules, list) {
*owner = mod; *owner = mod;
for (i = 0; i < mod->num_ksyms; i++) for (i = 0; i < mod->num_syms; i++)
if (strcmp(mod->syms[i].name, name) == 0) { if (strcmp(mod->syms[i].name, name) == 0) {
*crc = symversion(mod->crcs, i); *crc = symversion(mod->crcs, i);
return mod->syms[i].value; return mod->syms[i].value;
...@@ -1283,7 +1283,7 @@ static struct module *load_module(void *umod, ...@@ -1283,7 +1283,7 @@ static struct module *load_module(void *umod,
mod->gpl_crcs = (void *)sechdrs[gplcrcindex].sh_addr; mod->gpl_crcs = (void *)sechdrs[gplcrcindex].sh_addr;
#ifdef CONFIG_MODVERSIONS #ifdef CONFIG_MODVERSIONS
if ((mod->num_ksyms&&!crcindex) || (mod->num_gpl_syms&&!gplcrcindex)) { if ((mod->num_kallsyms && !crcindex) || (mod->num_gpl_syms && !gplcrcindex)) {
printk(KERN_WARNING "%s: No versions for exported symbols." printk(KERN_WARNING "%s: No versions for exported symbols."
" Tainting kernel.\n", mod->name); " Tainting kernel.\n", mod->name);
tainted |= TAINT_FORCED_MODULE; tainted |= TAINT_FORCED_MODULE;
...@@ -1309,7 +1309,7 @@ static struct module *load_module(void *umod, ...@@ -1309,7 +1309,7 @@ static struct module *load_module(void *umod,
#ifdef CONFIG_KALLSYMS #ifdef CONFIG_KALLSYMS
mod->symtab = (void *)sechdrs[symindex].sh_addr; mod->symtab = (void *)sechdrs[symindex].sh_addr;
mod->num_syms = sechdrs[symindex].sh_size / sizeof(Elf_Sym); mod->num_kallsyms = sechdrs[symindex].sh_size / sizeof(Elf_Sym);
mod->strtab = (void *)sechdrs[strindex].sh_addr; mod->strtab = (void *)sechdrs[strindex].sh_addr;
#endif #endif
err = module_finalize(hdr, sechdrs, mod); err = module_finalize(hdr, sechdrs, mod);
...@@ -1452,7 +1452,7 @@ static const char *get_ksymbol(struct module *mod, ...@@ -1452,7 +1452,7 @@ static const char *get_ksymbol(struct module *mod,
/* Scan for closest preceeding symbol, and next symbol. (ELF /* Scan for closest preceeding symbol, and next symbol. (ELF
starts real symbols at 1). */ starts real symbols at 1). */
for (i = 1; i < mod->num_syms; i++) { for (i = 1; i < mod->num_kallsyms; i++) {
if (mod->symtab[i].st_shndx == SHN_UNDEF) if (mod->symtab[i].st_shndx == SHN_UNDEF)
continue; continue;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment