aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/sunrpc/sched.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/net/sunrpc/sched.c b/net/sunrpc/sched.c
index e6db49699bce..69049179c280 100644
--- a/net/sunrpc/sched.c
+++ b/net/sunrpc/sched.c
@@ -133,7 +133,9 @@ static void __rpc_add_wait_queue(struct rpc_wait_queue *queue,
133 struct rpc_task *task, 133 struct rpc_task *task,
134 unsigned char queue_priority) 134 unsigned char queue_priority)
135{ 135{
136 BUG_ON (RPC_IS_QUEUED(task)); 136 WARN_ON_ONCE(RPC_IS_QUEUED(task));
137 if (RPC_IS_QUEUED(task))
138 return;
137 139
138 if (RPC_IS_PRIORITY(queue)) 140 if (RPC_IS_PRIORITY(queue))
139 __rpc_add_wait_queue_priority(queue, task, queue_priority); 141 __rpc_add_wait_queue_priority(queue, task, queue_priority);
@@ -707,7 +709,9 @@ static void __rpc_execute(struct rpc_task *task)
707 dprintk("RPC: %5u __rpc_execute flags=0x%x\n", 709 dprintk("RPC: %5u __rpc_execute flags=0x%x\n",
708 task->tk_pid, task->tk_flags); 710 task->tk_pid, task->tk_flags);
709 711
710 BUG_ON(RPC_IS_QUEUED(task)); 712 WARN_ON_ONCE(RPC_IS_QUEUED(task));
713 if (RPC_IS_QUEUED(task))
714 return;
711 715
712 for (;;) { 716 for (;;) {
713 void (*do_action)(struct rpc_task *); 717 void (*do_action)(struct rpc_task *);