OSDN Git Service

nfsd: Pass correct slot number to nfsd4_put_drc_mem()
authorYanchuan Nian <ycnian@gmail.com>
Mon, 24 Dec 2012 10:11:27 +0000 (18:11 +0800)
committerJ. Bruce Fields <bfields@redhat.com>
Wed, 23 Jan 2013 23:17:36 +0000 (18:17 -0500)
In alloc_session(), numslots is the correct slot number used by the session.
But the slot number passed to nfsd4_put_drc_mem() is the one from nfs client.

Signed-off-by: Yanchuan Nian <ycnian@gmail.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4state.c

index ac8ed96..29924a0 100644 (file)
@@ -905,7 +905,7 @@ static struct nfsd4_session *alloc_session(struct nfsd4_channel_attrs *fchan,
 
        new = __alloc_session(slotsize, numslots);
        if (!new) {
-               nfsd4_put_drc_mem(slotsize, fchan->maxreqs);
+               nfsd4_put_drc_mem(slotsize, numslots);
                return NULL;
        }
        init_forechannel_attrs(&new->se_fchannel, fchan, numslots, slotsize, nn);