aboutsummaryrefslogtreecommitdiffstats
path: root/net/sunrpc/sched.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/sunrpc/sched.c')
-rw-r--r--net/sunrpc/sched.c19
1 files changed, 3 insertions, 16 deletions
diff --git a/net/sunrpc/sched.c b/net/sunrpc/sched.c
index 77d251e02593..93a7a4e94d80 100644
--- a/net/sunrpc/sched.c
+++ b/net/sunrpc/sched.c
@@ -446,20 +446,6 @@ static void rpc_wake_up_task_queue_locked(struct rpc_wait_queue *queue, struct r
446} 446}
447 447
448/* 448/*
449 * Tests whether rpc queue is empty
450 */
451int rpc_queue_empty(struct rpc_wait_queue *queue)
452{
453 int res;
454
455 spin_lock_bh(&queue->lock);
456 res = queue->qlen;
457 spin_unlock_bh(&queue->lock);
458 return res == 0;
459}
460EXPORT_SYMBOL_GPL(rpc_queue_empty);
461
462/*
463 * Wake up a task on a specific queue 449 * Wake up a task on a specific queue
464 */ 450 */
465void rpc_wake_up_queued_task(struct rpc_wait_queue *queue, struct rpc_task *task) 451void rpc_wake_up_queued_task(struct rpc_wait_queue *queue, struct rpc_task *task)
@@ -804,7 +790,6 @@ static void __rpc_execute(struct rpc_task *task)
804 task->tk_flags |= RPC_TASK_KILLED; 790 task->tk_flags |= RPC_TASK_KILLED;
805 rpc_exit(task, -ERESTARTSYS); 791 rpc_exit(task, -ERESTARTSYS);
806 } 792 }
807 rpc_set_running(task);
808 dprintk("RPC: %5u sync task resuming\n", task->tk_pid); 793 dprintk("RPC: %5u sync task resuming\n", task->tk_pid);
809 } 794 }
810 795
@@ -825,9 +810,11 @@ static void __rpc_execute(struct rpc_task *task)
825 */ 810 */
826void rpc_execute(struct rpc_task *task) 811void rpc_execute(struct rpc_task *task)
827{ 812{
813 bool is_async = RPC_IS_ASYNC(task);
814
828 rpc_set_active(task); 815 rpc_set_active(task);
829 rpc_make_runnable(task); 816 rpc_make_runnable(task);
830 if (!RPC_IS_ASYNC(task)) 817 if (!is_async)
831 __rpc_execute(task); 818 __rpc_execute(task);
832} 819}
833 820