aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2012-08-20 17:51:24 -0400
committerTejun Heo <tj@kernel.org>2012-08-20 17:51:24 -0400
commit43829731dd372d04d6706c51052b9dabab9ca356 (patch)
tree2cfa255dcec2f5cc867ab39cdcf4a25eae54845f /drivers/scsi
parentae930e0f4e66fd540c6fbad9f1e2a7743d8b9afe (diff)
workqueue: deprecate flush[_delayed]_work_sync()
flush[_delayed]_work_sync() are now spurious. Mark them deprecated and convert all users to flush[_delayed]_work(). If you're cc'd and wondering what's going on: Now all workqueues are non-reentrant and the regular flushes guarantee that the work item is not pending or running on any CPU on return, so there's no reason to use the sync flushes at all and they're going away. This patch doesn't make any functional difference. Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Russell King <linux@arm.linux.org.uk> Cc: Paul Mundt <lethal@linux-sh.org> Cc: Ian Campbell <ian.campbell@citrix.com> Cc: Jens Axboe <axboe@kernel.dk> Cc: Mattia Dongili <malattia@linux.it> Cc: Kent Yoder <key@linux.vnet.ibm.com> Cc: David Airlie <airlied@linux.ie> Cc: Jiri Kosina <jkosina@suse.cz> Cc: Karsten Keil <isdn@linux-pingi.de> Cc: Bryan Wu <bryan.wu@canonical.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Alasdair Kergon <agk@redhat.com> Cc: Mauro Carvalho Chehab <mchehab@infradead.org> Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Cc: David Woodhouse <dwmw2@infradead.org> Cc: "David S. Miller" <davem@davemloft.net> Cc: linux-wireless@vger.kernel.org Cc: Anton Vorontsov <cbou@mail.ru> Cc: Sangbeom Kim <sbkim73@samsung.com> Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Eric Van Hensbergen <ericvh@gmail.com> Cc: Takashi Iwai <tiwai@suse.de> Cc: Steven Whitehouse <swhiteho@redhat.com> Cc: Petr Vandrovec <petr@vandrovec.name> Cc: Mark Fasheh <mfasheh@suse.com> Cc: Christoph Hellwig <hch@infradead.org> Cc: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/arcmsr/arcmsr_hba.c4
-rw-r--r--drivers/scsi/ipr.c2
-rw-r--r--drivers/scsi/pmcraid.c2
-rw-r--r--drivers/scsi/qla2xxx/qla_target.c2
4 files changed, 5 insertions, 5 deletions
diff --git a/drivers/scsi/arcmsr/arcmsr_hba.c b/drivers/scsi/arcmsr/arcmsr_hba.c
index def24a1079ad..33c52bc2c7b4 100644
--- a/drivers/scsi/arcmsr/arcmsr_hba.c
+++ b/drivers/scsi/arcmsr/arcmsr_hba.c
@@ -999,7 +999,7 @@ static void arcmsr_remove(struct pci_dev *pdev)
999 int poll_count = 0; 999 int poll_count = 0;
1000 arcmsr_free_sysfs_attr(acb); 1000 arcmsr_free_sysfs_attr(acb);
1001 scsi_remove_host(host); 1001 scsi_remove_host(host);
1002 flush_work_sync(&acb->arcmsr_do_message_isr_bh); 1002 flush_work(&acb->arcmsr_do_message_isr_bh);
1003 del_timer_sync(&acb->eternal_timer); 1003 del_timer_sync(&acb->eternal_timer);
1004 arcmsr_disable_outbound_ints(acb); 1004 arcmsr_disable_outbound_ints(acb);
1005 arcmsr_stop_adapter_bgrb(acb); 1005 arcmsr_stop_adapter_bgrb(acb);
@@ -1045,7 +1045,7 @@ static void arcmsr_shutdown(struct pci_dev *pdev)
1045 (struct AdapterControlBlock *)host->hostdata; 1045 (struct AdapterControlBlock *)host->hostdata;
1046 del_timer_sync(&acb->eternal_timer); 1046 del_timer_sync(&acb->eternal_timer);
1047 arcmsr_disable_outbound_ints(acb); 1047 arcmsr_disable_outbound_ints(acb);
1048 flush_work_sync(&acb->arcmsr_do_message_isr_bh); 1048 flush_work(&acb->arcmsr_do_message_isr_bh);
1049 arcmsr_stop_adapter_bgrb(acb); 1049 arcmsr_stop_adapter_bgrb(acb);
1050 arcmsr_flush_adapter_cache(acb); 1050 arcmsr_flush_adapter_cache(acb);
1051} 1051}
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
index 467dc38246f9..2ffeb9afd1b7 100644
--- a/drivers/scsi/ipr.c
+++ b/drivers/scsi/ipr.c
@@ -9020,7 +9020,7 @@ static void __ipr_remove(struct pci_dev *pdev)
9020 9020
9021 spin_unlock_irqrestore(ioa_cfg->host->host_lock, host_lock_flags); 9021 spin_unlock_irqrestore(ioa_cfg->host->host_lock, host_lock_flags);
9022 wait_event(ioa_cfg->reset_wait_q, !ioa_cfg->in_reset_reload); 9022 wait_event(ioa_cfg->reset_wait_q, !ioa_cfg->in_reset_reload);
9023 flush_work_sync(&ioa_cfg->work_q); 9023 flush_work(&ioa_cfg->work_q);
9024 spin_lock_irqsave(ioa_cfg->host->host_lock, host_lock_flags); 9024 spin_lock_irqsave(ioa_cfg->host->host_lock, host_lock_flags);
9025 9025
9026 spin_lock(&ipr_driver_lock); 9026 spin_lock(&ipr_driver_lock);
diff --git a/drivers/scsi/pmcraid.c b/drivers/scsi/pmcraid.c
index ea8a0b47d66d..af763eab2039 100644
--- a/drivers/scsi/pmcraid.c
+++ b/drivers/scsi/pmcraid.c
@@ -5459,7 +5459,7 @@ static void __devexit pmcraid_remove(struct pci_dev *pdev)
5459 pmcraid_shutdown(pdev); 5459 pmcraid_shutdown(pdev);
5460 5460
5461 pmcraid_disable_interrupts(pinstance, ~0); 5461 pmcraid_disable_interrupts(pinstance, ~0);
5462 flush_work_sync(&pinstance->worker_q); 5462 flush_work(&pinstance->worker_q);
5463 5463
5464 pmcraid_kill_tasklets(pinstance); 5464 pmcraid_kill_tasklets(pinstance);
5465 pmcraid_unregister_interrupt_handler(pinstance); 5465 pmcraid_unregister_interrupt_handler(pinstance);
diff --git a/drivers/scsi/qla2xxx/qla_target.c b/drivers/scsi/qla2xxx/qla_target.c
index 5b30132960c7..bddc97c5c8e9 100644
--- a/drivers/scsi/qla2xxx/qla_target.c
+++ b/drivers/scsi/qla2xxx/qla_target.c
@@ -969,7 +969,7 @@ void qlt_stop_phase1(struct qla_tgt *tgt)
969 spin_unlock_irqrestore(&ha->hardware_lock, flags); 969 spin_unlock_irqrestore(&ha->hardware_lock, flags);
970 mutex_unlock(&ha->tgt.tgt_mutex); 970 mutex_unlock(&ha->tgt.tgt_mutex);
971 971
972 flush_delayed_work_sync(&tgt->sess_del_work); 972 flush_delayed_work(&tgt->sess_del_work);
973 973
974 ql_dbg(ql_dbg_tgt_mgt, vha, 0xf009, 974 ql_dbg(ql_dbg_tgt_mgt, vha, 0xf009,
975 "Waiting for sess works (tgt %p)", tgt); 975 "Waiting for sess works (tgt %p)", tgt);