[Bug 192257] New: modevent_nop always returns EBUSY on MOD_UNLOAD; blocks user from being able to unload modules with evhand = NULL

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Jul 29 23:18:07 UTC 2014


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=192257

            Bug ID: 192257
           Summary: modevent_nop always returns EBUSY on MOD_UNLOAD;
                    blocks user from being able to unload modules with
                    evhand = NULL
           Product: Base System
           Version: 11.0-CURRENT
          Hardware: Any
                OS: Any
            Status: Needs Triage
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: yaneurabeya at gmail.com

The code in modevent_nop always returns EBUSY when one tries to unload a
module. This doesn't necessarily make sense because it effectively wires the
module into the kernel until it's rebooted, making it difficult for
developers/testers/users to swap out kernel modules as need be:

 68 static int
 69 modevent_nop(module_t mod, int what, void *arg)
 70 {
 71
 72         switch(what) {
 73         case MOD_LOAD:
 74                 return (0);
 75         case MOD_UNLOAD:
 76                 return (EBUSY);
 77         default:
 78                 return (EOPNOTSUPP);
 79         }
 80 }

It would make more sense if it returned 0 when MOD_LOAD/MOD_UNLOAD events are
passed through, like it used to before r132167, but this requires additional
discussion.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list