Thread (27 messages) flat view 27 messages, 6 authors, 2016-02-10

Re: [RFC PATCH v4 2/6] module: preserve Elf information for livepatch modules

From: Jiri Kosina <jikos@kernel.org>
Date: 2016-02-09 10:33:14
Also in: linux-s390, lkml

On Tue, 9 Feb 2016, Petr Mladek wrote:
quoted
+#ifdef CONFIG_KALLSYMS
+	/* Make symtab and strtab available prior to module init call */
+	mod->num_symtab = mod->core_num_syms;
+	mod->symtab = mod->core_symtab;
+	mod->strtab = mod->core_strtab;
+#endif
This should be done with module_mutex. Otherwise, it looks racy at least 
against module_kallsyms_on_each_symbol().
Hmm, if this is the case, the comment describing the locking rules for 
module_mutex should be updated.
BTW: I wonder why even the original code is not racy for example against 
module_get_kallsym. It is called without the mutex. This code sets the 
number of entries before the pointer to the entries.

Note that the module is in the list even in the UNFORMED state.
module_kallsyms_on_each_symbol() gives up in such case though.

-- 
Jiri Kosina
SUSE Labs
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help