summaryrefslogtreecommitdiff
path: root/drivers/block/rsxx/rsxx_priv.h
diff options
context:
space:
mode:
authorPhilip J Kelleher <pjk1939@linux.vnet.ibm.com>2013-06-18 14:34:54 -0500
committerJens Axboe <axboe@kernel.dk>2013-06-19 13:52:09 +0200
commita3299ab18591d36ad5622f5064619123c439b779 (patch)
tree5a08d03af4ef28eea4f1638a385d10d3fa107856 /drivers/block/rsxx/rsxx_priv.h
parent9138125beabbb76b4a373d4a619870f6f5d86fc5 (diff)
rsxx: Individual workqueues for interruptible events.
Giving all interrupt based events their own workqueue to complete tasks on. This fixes a bug that would cause creg commands to timeout if too many are issued at once. Signed-off-by: Philip J Kelleher <pjk1939@linux.vnet.ibm.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/block/rsxx/rsxx_priv.h')
-rw-r--r--drivers/block/rsxx/rsxx_priv.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/block/rsxx/rsxx_priv.h b/drivers/block/rsxx/rsxx_priv.h
index 382e8bf5c03b..0dd62d966772 100644
--- a/drivers/block/rsxx/rsxx_priv.h
+++ b/drivers/block/rsxx/rsxx_priv.h
@@ -134,6 +134,7 @@ struct rsxx_cardinfo {
spinlock_t lock;
bool active;
struct creg_cmd *active_cmd;
+ struct workqueue_struct *creg_wq;
struct work_struct done_work;
struct list_head queue;
unsigned int q_depth;
@@ -154,6 +155,7 @@ struct rsxx_cardinfo {
int buf_len;
} log;
+ struct workqueue_struct *event_wq;
struct work_struct event_work;
unsigned int state;
u64 size8;