mirror of https://gitee.com/openkylin/linux.git
[PATCH] module support: record in vermagic ability to unload a module
An UML user reported (against 2.6.13.3/UML) he got kernel Oopses when trying to rmmod (on a kernel with module unloading enabled) a module compiled with module unloading disabled. As crashing is a very correct thing to do in that case, a solution is altering the vermagic string to include this too. Possibly, however, the code should not crash in this case, even if the module didn't support unloading - it should simply abort the module removal. In this case, fixing that bug would be a better solution. I've not investigated though. (akpm: a bit marginal - root screwed up and shot himself in the foot). Cc: Hayim Shaul <hayim@post.tau.ac.il> Cc: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
7ad04b0d0e
commit
5ac90c9f78
|
@ -12,6 +12,11 @@
|
|||
#else
|
||||
#define MODULE_VERMAGIC_PREEMPT ""
|
||||
#endif
|
||||
#ifdef CONFIG_MODULE_UNLOAD
|
||||
#define MODULE_VERMAGIC_MODULE_UNLOAD "mod_unload "
|
||||
#else
|
||||
#define MODULE_VERMAGIC_MODULE_UNLOAD ""
|
||||
#endif
|
||||
#ifndef MODULE_ARCH_VERMAGIC
|
||||
#define MODULE_ARCH_VERMAGIC ""
|
||||
#endif
|
||||
|
@ -19,5 +24,5 @@
|
|||
#define VERMAGIC_STRING \
|
||||
UTS_RELEASE " " \
|
||||
MODULE_VERMAGIC_SMP MODULE_VERMAGIC_PREEMPT \
|
||||
MODULE_ARCH_VERMAGIC \
|
||||
MODULE_VERMAGIC_MODULE_UNLOAD MODULE_ARCH_VERMAGIC \
|
||||
"gcc-" __stringify(__GNUC__) "." __stringify(__GNUC_MINOR__)
|
||||
|
|
Loading…
Reference in New Issue