lkml.org 
[lkml]   [2004]   [Nov]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Subject[PATCH] Don't ignore try_stop_module return
From
Date
Name: Fix Module Removal Bug: Don't Ignore try_stop_module Return
Status: Trivial
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>

Since 2.6.4 we've been ignoring the failure of try_stop_module: it
will normally fail if the module reference count is non-zero. This
would have been mainly unnoticed, since "modprobe -r" checks the usage
count before calling sys_delete_module(), however there is a race
which would cause a hang in this case.

Index: linux-2.6.10-rc1-bk10-Module/kernel/module.c
===================================================================
--- linux-2.6.10-rc1-bk10-Module.orig/kernel/module.c 2004-11-01 17:54:17.861349784 +1100
+++ linux-2.6.10-rc1-bk10-Module/kernel/module.c 2004-11-01 17:57:15.020417512 +1100
@@ -576,6 +576,8 @@

/* Stop the machine so refcounts can't move and disable module. */
ret = try_stop_module(mod, flags, &forced);
+ if (ret != 0)
+ goto out;

/* Never wait if forced. */
if (!forced && module_refcount(mod) != 0)
--
A bad analogy is like a leaky screwdriver -- Richard Braakman

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:07    [W:0.031 / U:0.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site