2012-12-24 10:21:40

by Yanchuan Nian

[permalink] [raw]
Subject: [PATCH] nfsd: Pass correct slot number to nfsd4_put_drc_mem()

From: Yanchuan Nian <[email protected]>

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 <[email protected]>
---
fs/nfsd/nfs4state.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index ac8ed96..29924a0 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -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);
--
1.7.4.4



2013-01-03 00:34:07

by J. Bruce Fields

[permalink] [raw]
Subject: Re: [PATCH] nfsd: Pass correct slot number to nfsd4_put_drc_mem()

On Mon, Dec 24, 2012 at 06:11:27PM +0800, [email protected] wrote:
> From: Yanchuan Nian <[email protected]>
>
> 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.

Thanks, applying for 3.9.--b.

>
> Signed-off-by: Yanchuan Nian <[email protected]>
> ---
> fs/nfsd/nfs4state.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
> index ac8ed96..29924a0 100644
> --- a/fs/nfsd/nfs4state.c
> +++ b/fs/nfsd/nfs4state.c
> @@ -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);
> --
> 1.7.4.4
>