aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2010-12-24 10:00:17 -0500
committerTejun Heo <tj@kernel.org>2010-12-24 10:00:17 -0500
commit0d9c76aedbac3ad8ac4e99a2b441bc3f91dd6679 (patch)
treeed63d25f7034651be0afd7fbe046cfa464b7aece /drivers
parent99ef21216b4f85c56392ed41500d2f07f58cc360 (diff)
dvb: don't use flush_scheduled_work()
flush_scheduled_work() is deprecated and scheduled to be removed. * Flush the used works directly. * Replace the deprecated cancel_rearming_delayed_work() + flush_scheduled_work() -> cancel_delayed_work_sync(). * Make sure mantis->uart_work isn't running on exit. Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Mauro Carvalho Chehab <mchehab@infradead.org> Cc: linux-media@vger.kernel.org
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/dvb/dvb-core/dvb_net.c3
-rw-r--r--drivers/media/dvb/dvb-usb/dvb-usb-remote.c1
-rw-r--r--drivers/media/dvb/mantis/mantis_evm.c2
-rw-r--r--drivers/media/dvb/mantis/mantis_uart.c1
4 files changed, 4 insertions, 3 deletions
diff --git a/drivers/media/dvb/dvb-core/dvb_net.c b/drivers/media/dvb/dvb-core/dvb_net.c
index 4df42aaae7f7..51752a9ef7a4 100644
--- a/drivers/media/dvb/dvb-core/dvb_net.c
+++ b/drivers/media/dvb/dvb-core/dvb_net.c
@@ -1329,7 +1329,8 @@ static int dvb_net_remove_if(struct dvb_net *dvbnet, unsigned long num)
1329 return -EBUSY; 1329 return -EBUSY;
1330 1330
1331 dvb_net_stop(net); 1331 dvb_net_stop(net);
1332 flush_scheduled_work(); 1332 flush_work_sync(&priv->set_multicast_list_wq);
1333 flush_work_sync(&priv->restart_net_feed_wq);
1333 printk("dvb_net: removed network interface %s\n", net->name); 1334 printk("dvb_net: removed network interface %s\n", net->name);
1334 unregister_netdev(net); 1335 unregister_netdev(net);
1335 dvbnet->state[num]=0; 1336 dvbnet->state[num]=0;
diff --git a/drivers/media/dvb/dvb-usb/dvb-usb-remote.c b/drivers/media/dvb/dvb-usb/dvb-usb-remote.c
index 0831469af69f..d5f3d3c7463e 100644
--- a/drivers/media/dvb/dvb-usb/dvb-usb-remote.c
+++ b/drivers/media/dvb/dvb-usb/dvb-usb-remote.c
@@ -299,7 +299,6 @@ int dvb_usb_remote_exit(struct dvb_usb_device *d)
299{ 299{
300 if (d->state & DVB_USB_STATE_REMOTE) { 300 if (d->state & DVB_USB_STATE_REMOTE) {
301 cancel_delayed_work_sync(&d->rc_query_work); 301 cancel_delayed_work_sync(&d->rc_query_work);
302 flush_scheduled_work();
303 if (d->props.rc.mode == DVB_RC_LEGACY) 302 if (d->props.rc.mode == DVB_RC_LEGACY)
304 input_unregister_device(d->rc_input_dev); 303 input_unregister_device(d->rc_input_dev);
305 else 304 else
diff --git a/drivers/media/dvb/mantis/mantis_evm.c b/drivers/media/dvb/mantis/mantis_evm.c
index a7b369a439d6..9f73c2cfc9ea 100644
--- a/drivers/media/dvb/mantis/mantis_evm.c
+++ b/drivers/media/dvb/mantis/mantis_evm.c
@@ -111,7 +111,7 @@ void mantis_evmgr_exit(struct mantis_ca *ca)
111 struct mantis_pci *mantis = ca->ca_priv; 111 struct mantis_pci *mantis = ca->ca_priv;
112 112
113 dprintk(MANTIS_DEBUG, 1, "Mantis Host I/F Event manager exiting"); 113 dprintk(MANTIS_DEBUG, 1, "Mantis Host I/F Event manager exiting");
114 flush_scheduled_work(); 114 flush_work_sync(&ca->hif_evm_work);
115 mantis_hif_exit(ca); 115 mantis_hif_exit(ca);
116 mantis_pcmcia_exit(ca); 116 mantis_pcmcia_exit(ca);
117} 117}
diff --git a/drivers/media/dvb/mantis/mantis_uart.c b/drivers/media/dvb/mantis/mantis_uart.c
index 7d2f2398fa8b..97b889e8a341 100644
--- a/drivers/media/dvb/mantis/mantis_uart.c
+++ b/drivers/media/dvb/mantis/mantis_uart.c
@@ -182,5 +182,6 @@ void mantis_uart_exit(struct mantis_pci *mantis)
182{ 182{
183 /* disable interrupt */ 183 /* disable interrupt */
184 mmwrite(mmread(MANTIS_UART_CTL) & 0xffef, MANTIS_UART_CTL); 184 mmwrite(mmread(MANTIS_UART_CTL) & 0xffef, MANTIS_UART_CTL);
185 flush_work_sync(&mantis->uart_work);
185} 186}
186EXPORT_SYMBOL_GPL(mantis_uart_exit); 187EXPORT_SYMBOL_GPL(mantis_uart_exit);