summaryrefslogtreecommitdiff
path: root/include/linux/spi
diff options
context:
space:
mode:
authorChris Lesiak <chris.lesiak@licor.com>2007-03-16 13:38:13 -0800
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-03-16 19:25:04 -0700
commita836f5856ae46ccb2464ea76031ea05ae967b832 (patch)
treeeb0153e3b91381840d478d3e8c5b021dc12b92f9 /include/linux/spi
parent65b8291c4000e5f38fc94fb2ca0cb7e8683c8a1b (diff)
downloadlinux-3.10-a836f5856ae46ccb2464ea76031ea05ae967b832.tar.gz
linux-3.10-a836f5856ae46ccb2464ea76031ea05ae967b832.tar.bz2
linux-3.10-a836f5856ae46ccb2464ea76031ea05ae967b832.zip
[PATCH] spi: destroy workqueue after spi_unregister_master
Fix a bug in the cleanup of an spi_bitbang bus. The workqueue associated with the bus was destroyed before the call to spi_unregister_master. That meant that spi devices on that bus would be unable to do IO in their remove method. The shutdown flag should have been able to prevent a segfault, but was never getting set. By waiting to destroy the workqueue until after the master is unregistered, devices are able to do IO in their remove methods. An added benefit is that neither the shutdown flag nor a wait for the queue of messages to empty is needed. Signed-off-by: Chris Lesiak <chris.lesiak@licor.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/spi')
-rw-r--r--include/linux/spi/spi_bitbang.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/include/linux/spi/spi_bitbang.h b/include/linux/spi/spi_bitbang.h
index 2e8c048b9b8..9dbca629dcf 100644
--- a/include/linux/spi/spi_bitbang.h
+++ b/include/linux/spi/spi_bitbang.h
@@ -25,7 +25,6 @@ struct spi_bitbang {
spinlock_t lock;
struct list_head queue;
u8 busy;
- u8 shutdown;
u8 use_dma;
struct spi_master *master;