summaryrefslogtreecommitdiff
path: root/include/linux/module.h
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-02-15 01:29:55 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-02-15 01:29:55 +0300
commitc21b04f9890ce35bfbb4f5ee1937017613f66017 (patch)
tree0f15558258d2d67f8149d3378b0e6bb83f0d8a35 /include/linux/module.h
parent28c09ec4b6b7a2f9f769966baf54eaf0d6fadf8c (diff)
parent18558cae0272f8fd9647e69d3fec1565a7949865 (diff)
downloadlinux-c21b04f9890ce35bfbb4f5ee1937017613f66017.tar.xz
Merge 4.5-rc4 into driver-core-next
We want the fixes in here as well. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/module.h')
-rw-r--r--include/linux/module.h19
1 files changed, 10 insertions, 9 deletions
diff --git a/include/linux/module.h b/include/linux/module.h
index 4560d8f1545d..2bb0c3085706 100644
--- a/include/linux/module.h
+++ b/include/linux/module.h
@@ -324,6 +324,12 @@ struct module_layout {
#define __module_layout_align
#endif
+struct mod_kallsyms {
+ Elf_Sym *symtab;
+ unsigned int num_symtab;
+ char *strtab;
+};
+
struct module {
enum module_state state;
@@ -405,15 +411,10 @@ 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;