[PATCH 2 0/4] cciss rmmod/scan-thread fixes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The following series fixes several problems causing hangs while
rmmoding the cciss driver. In the process of fixing these hangs, I
also reworked the the logical drive scanning kernel thread to use one
thread per driver rather than one thread per controller. I also added
a sysfs attribute to kick off a controller scan.

Changelog

v2

Staticially initialize scan_mutex and scan_q.
Remove unneeded function declarations.
Added a patch that uses a mutex to indicate we are busy initializing
rather than a integer flag.
Remove a possible scan race by moving the busy_initializing unlock after
the call to rebuild_luntable in cciss_init_one.
Reworked the scan thread to use a more traditional loop with a
set_current_state(TASK_INTERRUPTIBLE); schedule() at the top of the
loop.

 .../ABI/testing/sysfs-bus-pci-devices-cciss        |    7 +
 drivers/block/cciss.c                              |  204 +++++++++++++++++---
 drivers/block/cciss.h                              |    9 +
 3 files changed, 191 insertions(+), 29 deletions(-)

Andrew Patterson (4):
      cciss: remove logical drive sysfs entries during driver cleanup.
      cciss: use mutex instead of flag to indicate busy initializing
      cciss: use only one scan thread
      cciss: kick off logical drive topology rescan through sysfs



-- 
Andrew Patterson
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux