Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9db8995b authored by Tejun Heo's avatar Tejun Heo
Browse files

rtc: don't use flush_scheduled_work()



flush_scheduled_work() is deprecated and scheduled to be removed.  On
removal, directly cancel the work, and flush the uie_task in
rtc-dev.c::clear_uie().

Signed-off-by: default avatarTejun Heo <tj@kernel.org>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: rtc-linux@googlegroups.com
parent 0d9ee5b2
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -104,7 +104,7 @@ static int clear_uie(struct rtc_device *rtc)
		}
		}
		if (rtc->uie_task_active) {
		if (rtc->uie_task_active) {
			spin_unlock_irq(&rtc->irq_lock);
			spin_unlock_irq(&rtc->irq_lock);
			flush_scheduled_work();
			flush_work_sync(&rtc->uie_task);
			spin_lock_irq(&rtc->irq_lock);
			spin_lock_irq(&rtc->irq_lock);
		}
		}
		rtc->uie_irq_active = 0;
		rtc->uie_irq_active = 0;
+1 −1
Original line number Original line Diff line number Diff line
@@ -813,7 +813,7 @@ static int __devexit ds1305_remove(struct spi_device *spi)
	if (spi->irq) {
	if (spi->irq) {
		set_bit(FLAG_EXITING, &ds1305->flags);
		set_bit(FLAG_EXITING, &ds1305->flags);
		free_irq(spi->irq, ds1305);
		free_irq(spi->irq, ds1305);
		flush_scheduled_work();
		cancel_work_sync(&ds1305->work);
	}
	}


	rtc_device_unregister(ds1305->rtc);
	rtc_device_unregister(ds1305->rtc);
+1 −1
Original line number Original line Diff line number Diff line
@@ -417,7 +417,7 @@ static int __devexit ds1374_remove(struct i2c_client *client)
		mutex_unlock(&ds1374->mutex);
		mutex_unlock(&ds1374->mutex);


		free_irq(client->irq, client);
		free_irq(client->irq, client);
		flush_scheduled_work();
		cancel_work_sync(&ds1374->work);
	}
	}


	rtc_device_unregister(ds1374->rtc);
	rtc_device_unregister(ds1374->rtc);
+1 −1
Original line number Original line Diff line number Diff line
@@ -463,7 +463,7 @@ static int __devexit ds3232_remove(struct i2c_client *client)
		mutex_unlock(&ds3232->mutex);
		mutex_unlock(&ds3232->mutex);


		free_irq(client->irq, client);
		free_irq(client->irq, client);
		flush_scheduled_work();
		cancel_work_sync(&ds3232->work);
	}
	}


	rtc_device_unregister(ds3232->rtc);
	rtc_device_unregister(ds3232->rtc);
+1 −1
Original line number Original line Diff line number Diff line
@@ -650,7 +650,7 @@ static int __devexit rx8025_remove(struct i2c_client *client)
		mutex_unlock(lock);
		mutex_unlock(lock);


		free_irq(client->irq, client);
		free_irq(client->irq, client);
		flush_scheduled_work();
		cancel_work_sync(&rx8025->work);
	}
	}


	rx8025_sysfs_unregister(&client->dev);
	rx8025_sysfs_unregister(&client->dev);