diff options
Diffstat (limited to 'net/sunrpc/sched.c')
| -rw-r--r-- | net/sunrpc/sched.c | 5 | 
1 files changed, 2 insertions, 3 deletions
diff --git a/net/sunrpc/sched.c b/net/sunrpc/sched.c index c8321de341ee..6debf4fd42d4 100644 --- a/net/sunrpc/sched.c +++ b/net/sunrpc/sched.c @@ -927,11 +927,10 @@ static void __rpc_execute(struct rpc_task *task)  		 */  		do_action = task->tk_action;  		/* Tasks with an RPC error status should exit */ -		if (do_action != rpc_exit_task && +		if (do_action && do_action != rpc_exit_task &&  		    (status = READ_ONCE(task->tk_rpc_status)) != 0) {  			task->tk_status = status; -			if (do_action != NULL) -				do_action = rpc_exit_task; +			do_action = rpc_exit_task;  		}  		/* Callbacks override all actions */  		if (task->tk_callback) {  |