diff --git a/net/sunrpc/sched.c b/net/sunrpc/sched.c index 5356b120dbf8e2fe61ba88081d1fab1941f135a9..849ca413522c415104971e7bcf1dea36a951b0b5 100644 --- a/net/sunrpc/sched.c +++ b/net/sunrpc/sched.c @@ -825,9 +825,11 @@ static void __rpc_execute(struct rpc_task *task) */ void rpc_execute(struct rpc_task *task) { + bool is_async = RPC_IS_ASYNC(task); + rpc_set_active(task); rpc_make_runnable(task); - if (!RPC_IS_ASYNC(task)) + if (!is_async) __rpc_execute(task); }