diff --git a/[refs] b/[refs] index dd27038f0130..8ef01e270219 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4b7c8dd205d6df1629ccde9f6dcf6a85d34c37ff +refs/heads/master: 11588f493a2441f09ceb2088d07cc012b53cbf75 diff --git a/trunk/fs/nfs/idmap.c b/trunk/fs/nfs/idmap.c index f9f89fc83ee0..a701a83047d3 100644 --- a/trunk/fs/nfs/idmap.c +++ b/trunk/fs/nfs/idmap.c @@ -656,14 +656,19 @@ static int nfs_idmap_legacy_upcall(struct key_construction *cons, idmap->idmap_key_cons = cons; - return rpc_queue_upcall(idmap->idmap_pipe, msg); + ret = rpc_queue_upcall(idmap->idmap_pipe, msg); + if (ret < 0) + goto out2; + + return ret; out2: kfree(im); out1: kfree(msg); out0: - complete_request_key(cons, ret); + key_revoke(cons->key); + key_revoke(cons->authkey); return ret; }