diff options
Diffstat (limited to 'fs/afs/vlocation.c')
| -rw-r--r-- | fs/afs/vlocation.c | 14 | 
1 files changed, 3 insertions, 11 deletions
diff --git a/fs/afs/vlocation.c b/fs/afs/vlocation.c index 431984d2e37..57bcb159653 100644 --- a/fs/afs/vlocation.c +++ b/fs/afs/vlocation.c @@ -561,12 +561,7 @@ static void afs_vlocation_reaper(struct work_struct *work)  		if (expiry > now) {  			delay = (expiry - now) * HZ;  			_debug("delay %lu", delay); -			if (!queue_delayed_work(afs_wq, &afs_vlocation_reap, -						delay)) { -				cancel_delayed_work(&afs_vlocation_reap); -				queue_delayed_work(afs_wq, &afs_vlocation_reap, -						   delay); -			} +			mod_delayed_work(afs_wq, &afs_vlocation_reap, delay);  			break;  		} @@ -614,13 +609,10 @@ void afs_vlocation_purge(void)  	spin_lock(&afs_vlocation_updates_lock);  	list_del_init(&afs_vlocation_updates);  	spin_unlock(&afs_vlocation_updates_lock); -	cancel_delayed_work(&afs_vlocation_update); -	queue_delayed_work(afs_vlocation_update_worker, -			   &afs_vlocation_update, 0); +	mod_delayed_work(afs_vlocation_update_worker, &afs_vlocation_update, 0);  	destroy_workqueue(afs_vlocation_update_worker); -	cancel_delayed_work(&afs_vlocation_reap); -	queue_delayed_work(afs_wq, &afs_vlocation_reap, 0); +	mod_delayed_work(afs_wq, &afs_vlocation_reap, 0);  }  /*  |