diff options
author | Alex Shi <alex.shi@linaro.org> | 2016-03-18 11:41:51 +0800 |
---|---|---|
committer | Alex Shi <alex.shi@linaro.org> | 2016-03-18 16:01:49 +0800 |
commit | 70e00db9eb8ffc4dcaf5f035ec6a4440ba428794 (patch) | |
tree | ea67e279adedc950c3d4d8e98546b3823a2b3e93 /include/linux/module.h | |
parent | 34e0913e457f8469667faf5fa600447aa93371cf (diff) | |
parent | dfbed80c63bb8d965067da3a6dbcc4682edcce0c (diff) |
Merge remote-tracking branch 'lts/linux-3.14.y' into linux-linaro-lsk-v3.14lsk-v3.14-16.03linux-linaro-lsk-v3.14
Conflicts:
Most of conflicts are due to efivar_validate() change which
introduced a new parameter to check efi guid.
I added efi guid for this change in sanity_check()/efivar_create()
in drivers/firmware/efi/efivars.c
and keep new efivar_validate() in drivers/firmware/efi/vars.c,
since it's newer than LSK version.
nothing need mentioned in include/linux/efi.h
Diffstat (limited to 'include/linux/module.h')
-rw-r--r-- | include/linux/module.h | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/include/linux/module.h b/include/linux/module.h index eaf60ff9ba94..adea1d663a06 100644 --- a/include/linux/module.h +++ b/include/linux/module.h @@ -227,6 +227,12 @@ struct module_ref { unsigned long decs; } __attribute((aligned(2 * sizeof(unsigned long)))); +struct mod_kallsyms { + Elf_Sym *symtab; + unsigned int num_symtab; + char *strtab; +}; + struct module { enum module_state state; @@ -314,14 +320,9 @@ struct module { #endif #ifdef CONFIG_KALLSYMS - /* - * We keep the symbol and string tables for kallsyms. - * The core_* fields below are temporary, loader-only (they - * could really be discarded after module init). - */ - Elf_Sym *symtab, *core_symtab; - unsigned int num_symtab, core_num_syms; - char *strtab, *core_strtab; + /* Protected by RCU and/or module_mutex: use rcu_dereference() */ + struct mod_kallsyms *kallsyms; + struct mod_kallsyms core_kallsyms; /* Section attributes */ struct module_sect_attrs *sect_attrs; |