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

From: Andrew Patterson
Date: Tue Jul 21 2009 - 15:55:29 EST


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-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/