mark TAINT_FORCED_RMMOD correctly
PATCH 1/1 mark TAINT_FORCED_RMMOD correctly
Currently TAINT_FORCED_RMMOD is totally unused. Because it is marked as TAINT_FORCED_MODULE instead when user forced a module unload.
This patch marks it correctly
Signed-off-by Akinobu Mita <[email protected]>
kernel/module.c renamed from kernel/module.c.orig +5 -5
@@ -496,15 +496,15 @@ static void module_unload_free(struct mo }#ifdef CONFIG_MODULE_FORCE_UNLOAD -static inline int try_force (unsigned int flags) +static inline int try_force_unload (unsigned int flags) {int ret = (flags &O_TRUNC );if (ret) -add_taint (TAINT_FORCED_MODULE ); +add_taint (TAINT_FORCED_RMMOD );return ret; }#else -static inline int try_force (unsigned int flags) +static inline int try_force_unload (unsigned int flags) {return 0 ; }
@@ -524,7 +524,7 @@ static int __try_stop_module(void *_sref/* If it's not unused, quit unless we are told to block. */ if ((sref->flags &O_NONBLOCK ) &&module_refcount (sref->mod) !=0 ) { -if (!(*sref->forced =try_force (sref->flags))) +if (!(*sref->forced =try_force_unload (sref->flags)))return -EWOULDBLOCK ; }
@@ -609,7 +609,7 @@ sys_delete_module(const char __user *nam/* If it has an init func, it must have an exit func to unload */ if ((mod->init !=NULL && mod->exit ==NULL ) || mod->unsafe) { - forced =try_force (flags); + forced =try_force_unload (flags);if (!forced) {/* This module can't be removed */ ret = -EBUSY ;