aboutsummaryrefslogtreecommitdiff
path: root/include/linux/module.h
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2016-03-21 17:08:52 +0000
committerMark Brown <broonie@kernel.org>2016-03-21 17:08:52 +0000
commit5c1af2f870ab94f94f9dff231c6f18845e5a800a (patch)
tree9cebefa529103691eab8561449c00d43d6420b34 /include/linux/module.h
parentc35983d487b56c023b70d6727ad002b19f935827 (diff)
parent917a9133a6b3c6cc2b6b5649d28c617a4ccac3e6 (diff)
Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-rtlsk-v4.4-16.03-rt
Diffstat (limited to 'include/linux/module.h')
-rw-r--r--include/linux/module.h17
1 files changed, 9 insertions, 8 deletions
diff --git a/include/linux/module.h b/include/linux/module.h
index 3a19c79918e0..b229a9961d02 100644
--- a/include/linux/module.h
+++ b/include/linux/module.h
@@ -302,6 +302,12 @@ struct mod_tree_node {
struct latch_tree_node node;
};
+struct mod_kallsyms {
+ Elf_Sym *symtab;
+ unsigned int num_symtab;
+ char *strtab;
+};
+
struct module {
enum module_state state;
@@ -411,14 +417,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;