diff --git a/kernel/module.c b/kernel/module.c index aa9348aa993..5242890c4cd 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -1866,7 +1866,9 @@ static void free_module(struct module *mod) /* We leave it in list to prevent duplicate loads, but make sure * that noone uses it while it's being deconstructed. */ + mutex_lock(&module_mutex); mod->state = MODULE_STATE_UNFORMED; + mutex_unlock(&module_mutex); /* Remove dynamic debug info */ ddebug_remove_module(mod->name);