diff options
Diffstat (limited to 'drivers/staging/lustre/lnet/lnet/router.c')
-rw-r--r-- | drivers/staging/lustre/lnet/lnet/router.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/staging/lustre/lnet/lnet/router.c b/drivers/staging/lustre/lnet/lnet/router.c index d1ee44232eef..995f50976c42 100644 --- a/drivers/staging/lustre/lnet/lnet/router.c +++ b/drivers/staging/lustre/lnet/lnet/router.c @@ -779,7 +779,8 @@ lnet_wait_known_routerstate(void) if (all_known) return; - cfs_pause(cfs_time_seconds(1)); + set_current_state(TASK_UNINTERRUPTIBLE); + schedule_timeout(cfs_time_seconds(1)); } } @@ -1147,7 +1148,8 @@ lnet_prune_rc_data(int wait_unlink) i++; CDEBUG(((i & (-i)) == i) ? D_WARNING : D_NET, "Waiting for rc buffers to unlink\n"); - cfs_pause(cfs_time_seconds(1) / 4); + set_current_state(TASK_UNINTERRUPTIBLE); + schedule_timeout(cfs_time_seconds(1) / 4); lnet_net_lock(LNET_LOCK_EX); } @@ -1206,11 +1208,11 @@ rescan: lnet_prune_rc_data(0); /* don't wait for UNLINK */ - /* Call cfs_pause() here always adds 1 to load average + /* Call schedule_timeout() here always adds 1 to load average * because kernel counts # active tasks as nr_running * + nr_uninterruptible. */ - schedule_timeout_and_set_state(TASK_INTERRUPTIBLE, - cfs_time_seconds(1)); + set_current_state(TASK_INTERRUPTIBLE); + schedule_timeout(cfs_time_seconds(1)); } LASSERT(the_lnet.ln_rc_state == LNET_RC_STATE_STOPPING); |