Hide Forgot
Description of problem: When we want rmmod the nfsd, the rmmod just tell me module "is in use". But not tell me who use it. [root@dhcp12-144 ~]# rmmod nfsd rmmod: ERROR: Module nfsd is in use <<<--- NOT GOOD [root@dhcp12-144 ~]# rmmod auth_rpcgss rmmod: ERROR: Module auth_rpcgss is in use by: nfsd <<<--- GOOD And my buddy cost more than half an hours to find why can not rmmod, Finally we find it used by /proc/fs/nfsd. Could rmmod output the dependences, if the dependences is not module name? Version-Release number of selected component (if applicable): all version in RHEL{5,6,7} How reproducible: 100% Steps to Reproduce: 1. rmmod nfsd 2. 3. Actual results: [root@dhcp12-144 ~]# rmmod nfsd rmmod: ERROR: Module nfsd is in use Expected results: [root@dhcp12-144 ~]# rmmod nfsd rmmod: ERROR: Module nfsd is in use "by: /proc/fs/nfsd" OR like follow (if difficult to get): rmmod: ERROR: Module nfsd is in use "by: nil(maybe used by special filesystem)" Additional info:
I am afraid this is not possible. As rmmod can only get the idea whether the module is used or not from refcnt (/sys/module/nfsd/refcnt), which is set by kernel, I don't see any option how to get the information what is actually using the module. CC'ing Josh Boyer for his opinion.
I agree with Václav. The only things rmmod/modprobe have to look at are the refcnt and the module dependency list (holders). If a module has its refcnt incremented by something other than another module, there is no simple way for rmmod/modprobe -r to determine that.
So closing as CANTFIX.