mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-04-24 14:07:52 -04:00
Remove "unsafe" from module struct
Adrian Bunk points out that "unsafe" was used to mark modules touched by the deprecated MOD_INC_USE_COUNT interface, which has long gone. It's time to remove the member from the module structure, as well. If you want a module which can't unload, don't register an exit function. (Vlad Yasevich says SCTP is now safe to unload, so just remove the __unsafe there). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Acked-by: Shannon Nelson <shannon.nelson@intel.com> Acked-by: Dan Williams <dan.j.williams@intel.com> Acked-by: Vlad Yasevich <vladislav.yasevich@hp.com> Cc: Sridhar Samudrala <sri@us.ibm.com> Cc: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
d9c9bef134
commit
af49d9248f
4 changed files with 9 additions and 37 deletions
|
@ -312,9 +312,6 @@ struct module
|
|||
/* Arch-specific module values */
|
||||
struct mod_arch_specific arch;
|
||||
|
||||
/* Am I unsafe to unload? */
|
||||
int unsafe;
|
||||
|
||||
unsigned int taints; /* same bits as kernel:tainted */
|
||||
|
||||
#ifdef CONFIG_GENERIC_BUG
|
||||
|
@ -441,16 +438,6 @@ static inline void __module_get(struct module *module)
|
|||
__mod ? __mod->name : "kernel"; \
|
||||
})
|
||||
|
||||
#define __unsafe(mod) \
|
||||
do { \
|
||||
if (mod && !(mod)->unsafe) { \
|
||||
printk(KERN_WARNING \
|
||||
"Module %s cannot be unloaded due to unsafe usage in" \
|
||||
" %s:%u\n", (mod)->name, __FILE__, __LINE__); \
|
||||
(mod)->unsafe = 1; \
|
||||
} \
|
||||
} while(0)
|
||||
|
||||
/* For kallsyms to ask for address resolution. NULL means not found. */
|
||||
const char *module_address_lookup(unsigned long addr,
|
||||
unsigned long *symbolsize,
|
||||
|
@ -518,8 +505,6 @@ static inline void module_put(struct module *module)
|
|||
|
||||
#define module_name(mod) "kernel"
|
||||
|
||||
#define __unsafe(mod)
|
||||
|
||||
/* For kallsyms to ask for address resolution. NULL means not found. */
|
||||
static inline const char *module_address_lookup(unsigned long addr,
|
||||
unsigned long *symbolsize,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue