Most recent kernel where this bug did not occur: 2.6.12 Starting around kernel version 2.6.13, the scsi_eh_x and scsi_wq_x processes that are created per scsi host will not terminate if the driver for the scsi interface is removed. I don't know whether there are any serious problems involved with this, but one thing that is definitely annoying, is that the process list fills very quickly when modules are loaded/unloaded on demand, because 2 new processes will be created every time the driver for a scsi adapter gets loaded. (I guess, this happens with all scsi host modules - in my case, the "culprit" is a qlogic fibre channel driver that gets loaded only when needed.)
Bug 5237 (http://bugzilla.kernel.org/show_bug.cgi?id=5237) might be related ...
Begin forwarded message: Date: Mon, 7 Nov 2005 14:49:17 -0800 From: bugme-daemon@bugzilla.kernel.org To: bugme-new@lists.osdl.org Subject: [Bugme-new] [Bug 5566] New: scsi_eh_x/scsi_wq_x "zombie" processes in kernel 2.6.13+ http://bugzilla.kernel.org/show_bug.cgi?id=5566 Summary: scsi_eh_x/scsi_wq_x "zombie" processes in kernel 2.6.13+ Kernel Version: 2.6.13+ Status: NEW Severity: normal Owner: andrew.vasquez@qlogic.com Submitter: gator@cs.tu-berlin.de Most recent kernel where this bug did not occur: 2.6.12 Starting around kernel version 2.6.13, the scsi_eh_x and scsi_wq_x processes that are created per scsi host will not terminate if the driver for the scsi interface is removed. I don't know whether there are any serious problems involved with this, but one thing that is definitely annoying, is that the process list fills very quickly when modules are loaded/unloaded on demand, because 2 new processes will be created every time the driver for a scsi adapter gets loaded. (I guess, this happens with all scsi host modules - in my case, the "culprit" is a qlogic fibre channel driver that gets loaded only when needed.) ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
This problem does not seem to occur with all scsi drivers, I can't reproduce it with "sym53c8xx" or "tmscsim" (only a tape drive attached). With qla2200, when the cable is not connected, the scsi_* kernel do terminate when the driver is unloaded.
How is it working now, with new kernel (2.6.22+)? It looks like there were multiple fixes in this area. Thanks.
(In reply to comment #4) > How is it working now, with new kernel (2.6.22+)? ...it's even worse: now the qla2xxx module always has a usage count >= 1 (without anything else actually using it), so unless you get really violent (rmmod -f qla2xxx, which causes a mess), there is no way to unload the module at all anymore :-( (tried with 2.6.22.1)
James, do you know who could take a look into this? Thanks!