From 405873634336fa4f6974f5c431b661ea7d8343fd Mon Sep 17 00:00:00 2001 From: Trond Myklebust Date: Tue, 15 Jan 2008 14:17:11 -0500 Subject: [PATCH] --- yaml --- r: 79673 b: refs/heads/master c: 34f5b4662bf4b54f22b32ce76ce70eccd7ebc68a h: refs/heads/master i: 79671: 2b0812cd5089d4828bbdb5ad747f38dedbb44adf v: v3 --- [refs] | 2 +- trunk/net/sunrpc/clnt.c | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 06ab178c9557..8ed78b883218 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: afc881124b8aff83c7a28269ef9d9cfce543256c +refs/heads/master: 34f5b4662bf4b54f22b32ce76ce70eccd7ebc68a diff --git a/trunk/net/sunrpc/clnt.c b/trunk/net/sunrpc/clnt.c index e775ca793249..924916ceaa43 100644 --- a/trunk/net/sunrpc/clnt.c +++ b/trunk/net/sunrpc/clnt.c @@ -579,9 +579,12 @@ struct rpc_task *rpc_run_task(const struct rpc_task_setup *task_setup_data) } atomic_inc(&task->tk_count); /* Mask signals on synchronous RPC calls and RPCSEC_GSS upcalls */ - rpc_task_sigmask(task, &oldset); - rpc_execute(task); - rpc_restore_sigmask(&oldset); + if (!RPC_IS_ASYNC(task)) { + rpc_task_sigmask(task, &oldset); + rpc_execute(task); + rpc_restore_sigmask(&oldset); + } else + rpc_execute(task); ret = task; out: return ret;