* [PATCH 04/44] nfsd41: turn off create session caching
@ 2009-06-16 1:19 Benny Halevy
2009-06-16 18:27 ` J. Bruce Fields
0 siblings, 1 reply; 3+ messages in thread
From: Benny Halevy @ 2009-06-16 1:19 UTC (permalink / raw)
To: bfields; +Cc: pnfs, linux-nfs
From: Andy Adamson <andros@netapp.com>
In preparation for switching clientid cache strategies.
If cstate->slot is not set, nfsdsvc_encode_compoundres will not cache
the create session response.
Signed-off-by: Andy Adamson <andros@netapp.com>
Signed-off-by: Benny Halevy <bhalevy@panasas.com>
---
fs/nfsd/nfs4state.c | 7 -------
1 files changed, 0 insertions(+), 7 deletions(-)
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index c22ec9b..5fdef66 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1344,7 +1344,6 @@ nfsd4_create_session(struct svc_rqst *rqstp,
struct nfsd4_create_session *cr_ses)
{
u32 ip_addr = svc_addr_in(rqstp)->sin_addr.s_addr;
- struct nfsd4_compoundres *resp = rqstp->rq_resp;
struct nfs4_client *conf, *unconf;
struct nfsd4_slot *slot = NULL;
int status = 0;
@@ -1360,11 +1359,6 @@ nfsd4_create_session(struct svc_rqst *rqstp,
if (status == nfserr_replay_cache) {
dprintk("Got a create_session replay! seqid= %d\n",
slot->sl_seqid);
- cstate->slot = slot;
- cstate->status = status;
- /* Return the cached reply status */
- status = nfsd4_replay_cache_entry(resp, NULL);
- goto out;
} else if (cr_ses->seqid != conf->cl_slot.sl_seqid + 1) {
status = nfserr_seq_misordered;
dprintk("Sequence misordered!\n");
@@ -1413,7 +1407,6 @@ nfsd4_create_session(struct svc_rqst *rqstp,
cr_ses->seqid = slot->sl_seqid;
slot->sl_inuse = true;
- cstate->slot = slot;
/* Ensure a page is used for the cache */
slot->sl_cache_entry.ce_cachethis = 1;
out:
--
1.6.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 04/44] nfsd41: turn off create session caching
2009-06-16 1:19 [PATCH 04/44] nfsd41: turn off create session caching Benny Halevy
@ 2009-06-16 18:27 ` J. Bruce Fields
2009-06-17 1:47 ` [pnfs] " William A. (Andy) Adamson
0 siblings, 1 reply; 3+ messages in thread
From: J. Bruce Fields @ 2009-06-16 18:27 UTC (permalink / raw)
To: Benny Halevy; +Cc: pnfs, linux-nfs
On Tue, Jun 16, 2009 at 04:19:23AM +0300, Benny Halevy wrote:
> From: Andy Adamson <andros@netapp.com>
>
> In preparation for switching clientid cache strategies.
> If cstate->slot is not set, nfsdsvc_encode_compoundres will not cache
> the create session response.
This is a regression. If you can't find a way to replace the reply
cache without a temporary regression, a comment here to that affect
would be helpful. I guess I can live with this (reluctantly) for code
in this early a state.
--b.
>
> Signed-off-by: Andy Adamson <andros@netapp.com>
> Signed-off-by: Benny Halevy <bhalevy@panasas.com>
> ---
> fs/nfsd/nfs4state.c | 7 -------
> 1 files changed, 0 insertions(+), 7 deletions(-)
>
> diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
> index c22ec9b..5fdef66 100644
> --- a/fs/nfsd/nfs4state.c
> +++ b/fs/nfsd/nfs4state.c
> @@ -1344,7 +1344,6 @@ nfsd4_create_session(struct svc_rqst *rqstp,
> struct nfsd4_create_session *cr_ses)
> {
> u32 ip_addr = svc_addr_in(rqstp)->sin_addr.s_addr;
> - struct nfsd4_compoundres *resp = rqstp->rq_resp;
> struct nfs4_client *conf, *unconf;
> struct nfsd4_slot *slot = NULL;
> int status = 0;
> @@ -1360,11 +1359,6 @@ nfsd4_create_session(struct svc_rqst *rqstp,
> if (status == nfserr_replay_cache) {
> dprintk("Got a create_session replay! seqid= %d\n",
> slot->sl_seqid);
> - cstate->slot = slot;
> - cstate->status = status;
> - /* Return the cached reply status */
> - status = nfsd4_replay_cache_entry(resp, NULL);
> - goto out;
> } else if (cr_ses->seqid != conf->cl_slot.sl_seqid + 1) {
> status = nfserr_seq_misordered;
> dprintk("Sequence misordered!\n");
> @@ -1413,7 +1407,6 @@ nfsd4_create_session(struct svc_rqst *rqstp,
> cr_ses->seqid = slot->sl_seqid;
>
> slot->sl_inuse = true;
> - cstate->slot = slot;
> /* Ensure a page is used for the cache */
> slot->sl_cache_entry.ce_cachethis = 1;
> out:
> --
> 1.6.3
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [pnfs] [PATCH 04/44] nfsd41: turn off create session caching
2009-06-16 18:27 ` J. Bruce Fields
@ 2009-06-17 1:47 ` William A. (Andy) Adamson
0 siblings, 0 replies; 3+ messages in thread
From: William A. (Andy) Adamson @ 2009-06-17 1:47 UTC (permalink / raw)
To: J. Bruce Fields; +Cc: Benny Halevy, linux-nfs, pnfs
On Tue, Jun 16, 2009 at 2:27 PM, J. Bruce Fields<bfields@fieldses.org> wrote:
> On Tue, Jun 16, 2009 at 04:19:23AM +0300, Benny Halevy wrote:
>> From: Andy Adamson <andros@netapp.com>
>>
>> In preparation for switching clientid cache strategies.
>> If cstate->slot is not set, nfsdsvc_encode_compoundres will not cache
>> the create session response.
>
> This is a regression. If you can't find a way to replace the reply
> cache without a temporary regression, a comment here to that affect
> would be helpful. I guess I can live with this (reluctantly) for code
> in this early a state.
I can put the replacement of the create session replay cache into one
patch and avoid any temporary regressions if that would be helpful.
-->Andy
>
> --b.
>
>>
>> Signed-off-by: Andy Adamson <andros@netapp.com>
>> Signed-off-by: Benny Halevy <bhalevy@panasas.com>
>> ---
>> fs/nfsd/nfs4state.c | 7 -------
>> 1 files changed, 0 insertions(+), 7 deletions(-)
>>
>> diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
>> index c22ec9b..5fdef66 100644
>> --- a/fs/nfsd/nfs4state.c
>> +++ b/fs/nfsd/nfs4state.c
>> @@ -1344,7 +1344,6 @@ nfsd4_create_session(struct svc_rqst *rqstp,
>> struct nfsd4_create_session *cr_ses)
>> {
>> u32 ip_addr = svc_addr_in(rqstp)->sin_addr.s_addr;
>> - struct nfsd4_compoundres *resp = rqstp->rq_resp;
>> struct nfs4_client *conf, *unconf;
>> struct nfsd4_slot *slot = NULL;
>> int status = 0;
>> @@ -1360,11 +1359,6 @@ nfsd4_create_session(struct svc_rqst *rqstp,
>> if (status == nfserr_replay_cache) {
>> dprintk("Got a create_session replay! seqid= %d\n",
>> slot->sl_seqid);
>> - cstate->slot = slot;
>> - cstate->status = status;
>> - /* Return the cached reply status */
>> - status = nfsd4_replay_cache_entry(resp, NULL);
>> - goto out;
>> } else if (cr_ses->seqid != conf->cl_slot.sl_seqid + 1) {
>> status = nfserr_seq_misordered;
>> dprintk("Sequence misordered!\n");
>> @@ -1413,7 +1407,6 @@ nfsd4_create_session(struct svc_rqst *rqstp,
>> cr_ses->seqid = slot->sl_seqid;
>>
>> slot->sl_inuse = true;
>> - cstate->slot = slot;
>> /* Ensure a page is used for the cache */
>> slot->sl_cache_entry.ce_cachethis = 1;
>> out:
>> --
>> 1.6.3
>>
> _______________________________________________
> pNFS mailing list
> pNFS@linux-nfs.org
> http://linux-nfs.org/cgi-bin/mailman/listinfo/pnfs
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-06-17 1:47 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-16 1:19 [PATCH 04/44] nfsd41: turn off create session caching Benny Halevy
2009-06-16 18:27 ` J. Bruce Fields
2009-06-17 1:47 ` [pnfs] " William A. (Andy) Adamson
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.