Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1034075AbcJTQSU (ORCPT ); Thu, 20 Oct 2016 12:18:20 -0400 Received: from mail-qt0-f181.google.com ([209.85.216.181]:34451 "EHLO mail-qt0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933197AbcJTQSS (ORCPT ); Thu, 20 Oct 2016 12:18:18 -0400 From: Aaron Tomlin To: linux-kernel@vger.kernel.org Cc: rusty@rustcorp.com.au, rostedt@goodmis.org Subject: [RFC PATCH 1/2] module: Ensure a module's state is set accordingly during module coming cleanup code Date: Thu, 20 Oct 2016 17:18:12 +0100 Message-Id: <1476980293-19062-2-git-send-email-atomlin@redhat.com> X-Mailer: git-send-email 2.5.5 In-Reply-To: <1476980293-19062-1-git-send-email-atomlin@redhat.com> References: <1476980293-19062-1-git-send-email-atomlin@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 948 Lines: 28 In load_module() in the event of an error, for e.g. unknown module parameter(s) specified we go to perform some module coming clean up operations. At this point the module is still in a "formed" state when it is actually going away. This patch updates the module's state accordingly to ensure anyone on the module_notify_list waiting for a module going away notification will be notified accordingly. Signed-off-by: Aaron Tomlin --- kernel/module.c | 1 + 1 file changed, 1 insertion(+) diff --git a/kernel/module.c b/kernel/module.c index f57dd63..ff93ab8 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -3708,6 +3708,7 @@ static int load_module(struct load_info *info, const char __user *uargs, sysfs_cleanup: mod_sysfs_teardown(mod); coming_cleanup: + mod->state = MODULE_STATE_GOING; blocking_notifier_call_chain(&module_notify_list, MODULE_STATE_GOING, mod); klp_module_going(mod); -- 2.5.5