summaryrefslogtreecommitdiff
path: root/drivers/target/target_core_cdb.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2011-08-26 09:25:38 -0700
committerNicholas Bellinger <nab@linux-iscsi.org>2011-09-16 09:50:09 +0000
commit58fc73d10f3e92bfcd1e9a8391eb3e49b68df8e5 (patch)
tree0be84c4241f9080cfa01a369675e883114ed37cf /drivers/target/target_core_cdb.c
parent079587b4eb4d3b78a4d65d142f662aa9d7eedab4 (diff)
tcm_fc: Work queue based approach instead of managing own thread and event based mechanism
Problem: Changed from wake_up_interruptible -> wake_up_process and wait_event_interruptible-> schedule_timeout_interruptible broke the FCoE target. Earlier approach of wake_up_interruptible was also looking at 'queue_cnt' which is not necessary, because it increment of 'queue_cnt' with wake_up_inetrriptible / waker_up_process introduces race condition. Fix: Instead of fixing the code which used wake_up_process and remove 'queue_cnt', using work_queue based approach is cleaner and acheives same result. As well, work queue based approach has less programming overhead and OS manages threads which processes work queues. This patch is developed by Christoph Hellwig and reviwed+validated by Kiran Patil. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Kiran Patil <kiran.patil@intel.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target/target_core_cdb.c')
0 files changed, 0 insertions, 0 deletions