All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/22] SQUASHME: nfsd41: add nfsd4_session pointer to nfsd4_compound_state
@ 2009-04-03  0:19 andros
  2009-04-03  0:19 ` [PATCH 02/22] SQUASHME: nfsd41: use cstate session in nfsd4_replay_cache_entry andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review by Bruce

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 include/linux/nfsd/xdr4.h |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h
index 7ed9955..a895bba 100644
--- a/include/linux/nfsd/xdr4.h
+++ b/include/linux/nfsd/xdr4.h
@@ -49,6 +49,7 @@ struct nfsd4_compound_state {
 	struct svc_fh		save_fh;
 	struct nfs4_stateowner	*replay_owner;
 	/* For sessions DRC */
+	struct nfsd4_session	*session;
 	struct nfsd4_slot	*slot;
 	__be32			*statp;
 	size_t			iovlen;
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 02/22] SQUASHME: nfsd41: use cstate session in nfsd4_replay_cache_entry
  2009-04-03  0:19 [PATCH 01/22] SQUASHME: nfsd41: add nfsd4_session pointer to nfsd4_compound_state andros
@ 2009-04-03  0:19 ` andros
  2009-04-03  0:19   ` [PATCH 03/22] SQUASHME nfsd41: use cstate session in nfsd4_sequence andros
  2009-04-03  1:50   ` [pnfs] [PATCH 02/22] SQUASHME: nfsd41: use cstate session in nfsd4_replay_cache_entry Benny Halevy
  0 siblings, 2 replies; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review by Bruce
squash into nfsd41: DRC save, restore, and clear functions

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 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 b7c4ed0..b233efa 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1154,7 +1154,7 @@ nfsd4_replay_cache_entry(struct nfsd4_compoundres *resp,
 	 * is sent (lease renewal).
 	 */
 	if (seq && nfsd4_no_page_in_cache(resp)) {
-		seq->maxslots = resp->cstate.slot->sl_session->se_fnumslots;
+		seq->maxslots = resp->cstate.session->se_fnumslots;
 		return nfs_ok;
 	}
 
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 03/22] SQUASHME nfsd41: use cstate session in nfsd4_sequence
  2009-04-03  0:19 ` [PATCH 02/22] SQUASHME: nfsd41: use cstate session in nfsd4_replay_cache_entry andros
@ 2009-04-03  0:19   ` andros
  2009-04-03  0:19     ` [PATCH 04/22] SQUASHME: nfsd41: use cstate session in nfsd4_check_drc_limit andros
  2009-04-03  1:50   ` [pnfs] [PATCH 02/22] SQUASHME: nfsd41: use cstate session in nfsd4_replay_cache_entry Benny Halevy
  1 sibling, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 reveiw by Bruce
squash into nfsd41: sequence operation

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 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 b233efa..2b8d3ba 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1537,7 +1537,7 @@ replay_cache:
 	 * nfsd4_put_session called only if the cstate slot is set.
 	 */
 	renew_client(session->se_client);
-	nfsd4_get_session(slot->sl_session);
+	nfsd4_get_session(session);
 out:
 	spin_unlock(&sessionid_lock);
 	dprintk("%s: return %d\n", __func__, ntohl(status));
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 04/22] SQUASHME: nfsd41: use cstate session in nfsd4_check_drc_limit
  2009-04-03  0:19   ` [PATCH 03/22] SQUASHME nfsd41: use cstate session in nfsd4_sequence andros
@ 2009-04-03  0:19     ` andros
  2009-04-03  0:19       ` [PATCH 05/22] SQUASHME: nfsd41: use cstate session in nfs4svc_encode_compoundres andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review by Bruce
squash into  nfsd41: check encode size for sessions maxresponse cached

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4xdr.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
index 0084459..36469f5 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -3189,7 +3189,7 @@ static int nfsd4_check_drc_limit(struct nfsd4_compoundres *resp)
 	if (!nfsd4_has_session(&resp->cstate))
 		return status;
 
-	session = slot->sl_session;
+	session = resp->cstate.session;
 	if (session == NULL || slot->sl_cache_entry.ce_cachethis == 0)
 		return status;
 
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 05/22] SQUASHME: nfsd41: use cstate session in nfs4svc_encode_compoundres
  2009-04-03  0:19     ` [PATCH 04/22] SQUASHME: nfsd41: use cstate session in nfsd4_check_drc_limit andros
@ 2009-04-03  0:19       ` andros
  2009-04-03  0:19         ` [PATCH 06/22] SQUASHME: nfsd41 remove sl_session from nfsd4_open andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review by Bruce:
squash into nfsd DRC logic

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4xdr.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
index 36469f5..0c924de 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -3348,8 +3348,8 @@ nfs4svc_encode_compoundres(struct svc_rqst *rqstp, __be32 *p, struct nfsd4_compo
 			dprintk("%s: SET SLOT STATE TO AVAILABLE\n", __func__);
 			resp->cstate.slot->sl_inuse = 0;
 		}
-		if (resp->cstate.slot->sl_session)
-			nfsd4_put_session(resp->cstate.slot->sl_session);
+		if (resp->cstate.session)
+			nfsd4_put_session(resp->cstate.session);
 	}
 #endif /* CONFIG_NFSD_V4_1 */
 	return 1;
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 06/22] SQUASHME: nfsd41 remove sl_session from nfsd4_open
  2009-04-03  0:19       ` [PATCH 05/22] SQUASHME: nfsd41: use cstate session in nfs4svc_encode_compoundres andros
@ 2009-04-03  0:19         ` andros
  2009-04-03  0:19           ` [PATCH 07/22] SQUASHME: nfsd41 remove sl_session from alloc_init_session andros
  2009-04-03  1:46           ` [pnfs] [PATCH 06/22] SQUASHME: nfsd41 remove sl_session from nfsd4_open Benny Halevy
  0 siblings, 2 replies; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review by Bruce
squash into nfsd41: create_session operation

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4proc.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
index a393d38..29428ab 100644
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
@@ -201,7 +201,7 @@ nfsd4_open(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
 		return nfserr_inval;
 
 	if (nfsd4_has_session(cstate))
-		copy_clientid(&open->op_clientid, cstate->slot->sl_session);
+		copy_clientid(&open->op_clientid, cstate->session);
 
 	nfs4_lock_state();
 
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 07/22] SQUASHME: nfsd41 remove sl_session from alloc_init_session
  2009-04-03  0:19         ` [PATCH 06/22] SQUASHME: nfsd41 remove sl_session from nfsd4_open andros
@ 2009-04-03  0:19           ` andros
  2009-04-03  0:19             ` [PATCH 08/22] SQUASHME: nfsd41 remove sl_session from nfsd4_slot andros
  2009-04-03  1:46           ` [pnfs] [PATCH 06/22] SQUASHME: nfsd41 remove sl_session from nfsd4_open Benny Halevy
  1 sibling, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review by Bruce
squash into nfsd41: create_session operation

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4state.c |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 2b8d3ba..f70c10f 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -511,9 +511,6 @@ alloc_init_session(struct svc_rqst *rqstp, struct nfs4_client *clp,
 	if (!new->se_slots)
 		goto out_free;
 
-	for (i = 0; i < new->se_fnumslots; i++)
-		new->se_slots[i].sl_session = new;
-
 	new->se_client = clp;
 	gen_sessionid(new);
 	idx = hash_sessionid(&new->se_sessionid);
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 08/22] SQUASHME: nfsd41 remove sl_session from nfsd4_slot
  2009-04-03  0:19           ` [PATCH 07/22] SQUASHME: nfsd41 remove sl_session from alloc_init_session andros
@ 2009-04-03  0:19             ` andros
  2009-04-03  0:19               ` [PATCH 09/22] SQUASHME: nfsd41 set cstate session andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review from Bruce

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 include/linux/nfsd/state.h |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)

diff --git a/include/linux/nfsd/state.h b/include/linux/nfsd/state.h
index 365cc4b..e2507b5 100644
--- a/include/linux/nfsd/state.h
+++ b/include/linux/nfsd/state.h
@@ -124,7 +124,6 @@ struct nfsd4_cache_entry {
 
 struct nfsd4_slot {
 	bool				sl_inuse;
-	struct nfsd4_session		*sl_session;
 	u32				sl_seqid;
 	struct nfsd4_cache_entry	sl_cache_entry;
 };
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 09/22] SQUASHME: nfsd41 set cstate session
  2009-04-03  0:19             ` [PATCH 08/22] SQUASHME: nfsd41 remove sl_session from nfsd4_slot andros
@ 2009-04-03  0:19               ` andros
  2009-04-03  0:19                 ` [PATCH 10/22] SQUASHME: nfsd41 rename nfsd4_move_pages andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review by Bruce:
squash into nfsd41: sequence operation

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4state.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index f70c10f..1fec767 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1509,6 +1509,7 @@ nfsd4_sequence(struct svc_rqst *rqstp,
 	status = check_slot_seqid(seq->seqid, slot);
 	if (status == nfserr_replay_cache) {
 		cstate->slot = slot;
+		cstate->session = session;
 		/* Return the cached reply status and set cstate->status
 		 * for nfsd4_svc_encode_compoundres processing */
 		status = nfsd4_replay_cache_entry(resp, seq);
@@ -1527,6 +1528,7 @@ nfsd4_sequence(struct svc_rqst *rqstp,
 		slot->sl_cache_entry.ce_cachethis = 1;
 
 	cstate->slot = slot;
+	cstate->session = session;
 
 replay_cache:
 	/* Renew the clientid on success and on replay.
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 10/22] SQUASHME: nfsd41 rename nfsd4_move_pages
  2009-04-03  0:19               ` [PATCH 09/22] SQUASHME: nfsd41 set cstate session andros
@ 2009-04-03  0:19                 ` andros
  2009-04-03  0:19                   ` [PATCH 11/22] SQUASHME: nfsd41 rename page_no variable andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: DRC save, restor, and clear functions

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4state.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 1fec767..1a9f00a 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1033,7 +1033,7 @@ nfsd4_release_respages(struct page **respages, short resused)
 }
 
 static void
-nfsd4_move_pages(struct page **topages, struct page **frompages, short count)
+nfsd4_copy_pages(struct page **topages, struct page **frompages, short count)
 {
 	int page_no;
 
@@ -1089,7 +1089,7 @@ nfsd4_set_cache_entry(struct nfsd4_compoundres *resp)
 	entry->ce_resused = rqstp->rq_resused;
 	if (entry->ce_resused > NFSD_PAGES_PER_SLOT + 1)
 		entry->ce_resused = NFSD_PAGES_PER_SLOT + 1;
-	nfsd4_move_pages(entry->ce_respages, rqstp->rq_respages,
+	nfsd4_copy_pages(entry->ce_respages, rqstp->rq_respages,
 			 entry->ce_resused);
 	entry->ce_datav.iov_base = resp->cstate.statp;
 	entry->ce_datav.iov_len = resv->iov_len - ((char *)resp->cstate.statp -
@@ -1161,7 +1161,7 @@ nfsd4_replay_cache_entry(struct nfsd4_compoundres *resp,
 		 * cached header. Release all the allocated result pages.
 		 */
 		svc_free_res_pages(resp->rqstp);
-		nfsd4_move_pages(resp->rqstp->rq_respages, entry->ce_respages,
+		nfsd4_copy_pages(resp->rqstp->rq_respages, entry->ce_respages,
 			entry->ce_resused);
 	} else {
 		/* Release all but the first allocated result page */
@@ -1169,7 +1169,7 @@ nfsd4_replay_cache_entry(struct nfsd4_compoundres *resp,
 		resp->rqstp->rq_resused--;
 		svc_free_res_pages(resp->rqstp);
 
-		nfsd4_move_pages(&resp->rqstp->rq_respages[1],
+		nfsd4_copy_pages(&resp->rqstp->rq_respages[1],
 				 &entry->ce_respages[1],
 				 entry->ce_resused - 1);
 	}
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 11/22] SQUASHME: nfsd41 rename page_no variable
  2009-04-03  0:19                 ` [PATCH 10/22] SQUASHME: nfsd41 rename nfsd4_move_pages andros
@ 2009-04-03  0:19                   ` andros
  2009-04-03  0:19                     ` [PATCH 12/22] SQUASHME: nfsd41 rename nfsd4_set_cache_entry andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: DRC save, restor, and clear functions

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4state.c |   20 ++++++++++----------
 1 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 1a9f00a..f1beb1c 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1021,27 +1021,27 @@ nfsd4_set_statp(struct svc_rqst *rqstp, __be32 *statp)
 static void
 nfsd4_release_respages(struct page **respages, short resused)
 {
-	int page_no;
+	int i;
 
 	dprintk("--> %s\n", __func__);
-	for (page_no = 0; page_no < resused; page_no++) {
-		if (!respages[page_no])
+	for (i = 0; i < resused; i++) {
+		if (!respages[i])
 			continue;
-		put_page(respages[page_no]);
-		respages[page_no] = NULL;
+		put_page(respages[i]);
+		respages[i] = NULL;
 	}
 }
 
 static void
 nfsd4_copy_pages(struct page **topages, struct page **frompages, short count)
 {
-	int page_no;
+	int i;
 
-	for (page_no = 0; page_no < count; page_no++) {
-		topages[page_no] = frompages[page_no];
-		if (!topages[page_no])
+	for (i = 0; i < count; i++) {
+		topages[i] = frompages[i];
+		if (!topages[i])
 			continue;
-		get_page(topages[page_no]);
+		get_page(topages[i]);
 	}
 }
 
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 12/22] SQUASHME: nfsd41 rename nfsd4_set_cache_entry
  2009-04-03  0:19                   ` [PATCH 11/22] SQUASHME: nfsd41 rename page_no variable andros
@ 2009-04-03  0:19                     ` andros
  2009-04-03  0:19                       ` [PATCH 13/22] SQUASHME nfsd41 replace nfsd4_set_cache_entry andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: DRC save, restor, and clear functions

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4state.c       |    2 +-
 include/linux/nfsd/xdr4.h |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index f1beb1c..b4eb49a 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1056,7 +1056,7 @@ nfsd4_copy_pages(struct page **topages, struct page **frompages, short count)
  * of the NFSv4.1 data, just past the rpc header.
  */
 void
-nfsd4_set_cache_entry(struct nfsd4_compoundres *resp)
+nfsd4_store_cache_entry(struct nfsd4_compoundres *resp)
 {
 	struct nfsd4_cache_entry *entry = &resp->cstate.slot->sl_cache_entry;
 	struct svc_rqst *rqstp = resp->rqstp;
diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h
index a895bba..845f05e 100644
--- a/include/linux/nfsd/xdr4.h
+++ b/include/linux/nfsd/xdr4.h
@@ -529,7 +529,7 @@ extern __be32 nfsd4_setclientid_confirm(struct svc_rqst *rqstp,
 		struct nfsd4_compound_state *,
 		struct nfsd4_setclientid_confirm *setclientid_confirm);
 #if defined(CONFIG_NFSD_V4_1)
-extern void nfsd4_set_cache_entry(struct nfsd4_compoundres *resp);
+extern void nfsd4_store_cache_entry(struct nfsd4_compoundres *resp);
 extern __be32 nfsd4_replay_cache_entry(struct nfsd4_compoundres *resp,
 		struct nfsd4_sequence *seq);
 extern __be32 nfsd4_exchange_id(struct svc_rqst *rqstp,
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 13/22] SQUASHME nfsd41 replace nfsd4_set_cache_entry
  2009-04-03  0:19                     ` [PATCH 12/22] SQUASHME: nfsd41 rename nfsd4_set_cache_entry andros
@ 2009-04-03  0:19                       ` andros
  2009-04-03  0:19                         ` [PATCH 14/22] SQUASHME: nfsd41 fix nfsd41_copy_replay_data comment andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review by Bruce:
squash into nfsd DRC logic

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4xdr.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
index 0c924de..8dfa14b 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -3344,7 +3344,7 @@ nfs4svc_encode_compoundres(struct svc_rqst *rqstp, __be32 *p, struct nfsd4_compo
 				!nfsd4_no_page_in_cache(resp)) {
 			iov->iov_len = resp->cstate.iovlen;
 		} else {
-			nfsd4_set_cache_entry(resp);
+			nfsd4_store_cache_entry(resp);
 			dprintk("%s: SET SLOT STATE TO AVAILABLE\n", __func__);
 			resp->cstate.slot->sl_inuse = 0;
 		}
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 14/22] SQUASHME: nfsd41 fix nfsd41_copy_replay_data comment
  2009-04-03  0:19                       ` [PATCH 13/22] SQUASHME nfsd41 replace nfsd4_set_cache_entry andros
@ 2009-04-03  0:19                         ` andros
  2009-04-03  0:19                           ` [PATCH 15/22] SQUASHME nfsd41: revert portion of nfsd4_set_cache_entry andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: DRC save, restor, and clear functions

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4state.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index b4eb49a..852b101 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1100,9 +1100,7 @@ nfsd4_store_cache_entry(struct nfsd4_compoundres *resp)
 }
 
 /*
- * Copy the cached NFSv4.1 reply skipping the cached rpc header into the
- * replay result res.head[0] past the rpc header to end up with replay
- * rpc header and cached NFSv4.1 reply.
+ * We keep the rpc header, but take the nfs reply from the replycache.
  */
 static int
 nfsd41_copy_replay_data(struct nfsd4_compoundres *resp,
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 15/22] SQUASHME nfsd41: revert portion of nfsd4_set_cache_entry
  2009-04-03  0:19                         ` [PATCH 14/22] SQUASHME: nfsd41 fix nfsd41_copy_replay_data comment andros
@ 2009-04-03  0:19                           ` andros
  2009-04-03  0:19                             ` [PATCH 16/22] SQUASHME nfsd41: add to nfsd4_set_cache_entry andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
Squash into nfsd41: Add a create session replay cache

Signed-off-by: Andy Adamson <andros-Kun280L+pZkAvxtiuMwx3w@public.gmane.org>
---
 fs/nfsd/nfs4state.c |    6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 852b101..4d547fa 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1060,14 +1060,12 @@ nfsd4_store_cache_entry(struct nfsd4_compoundres *resp)
 {
 	struct nfsd4_cache_entry *entry = &resp->cstate.slot->sl_cache_entry;
 	struct svc_rqst *rqstp = resp->rqstp;
-	struct nfsd4_compoundargs *args = rqstp->rq_argp;
-	struct nfsd4_op *op = &args->ops[resp->opcnt];
 	struct kvec *resv = &rqstp->rq_res.head[0];
 
 	dprintk("--> %s entry %p\n", __func__, entry);
 
-	/* Don't cache a failed OP_SEQUENCE. */
-	if (resp->opcnt == 1 && op->opnum == OP_SEQUENCE && resp->cstate.status)
+	/* Don't cache a failed OP_SEQUENCE */
+	if (resp->opcnt == 1 && resp->cstate.status)
 		return;
 
 	nfsd4_release_respages(entry->ce_respages, entry->ce_resused);
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 16/22] SQUASHME nfsd41: add to nfsd4_set_cache_entry
  2009-04-03  0:19                           ` [PATCH 15/22] SQUASHME nfsd41: revert portion of nfsd4_set_cache_entry andros
@ 2009-04-03  0:19                             ` andros
  2009-04-03  0:19                               ` [PATCH 17/22] SQUASHME nfsd41 remove CONFIG_NFS_V4_1 around nfsd4_release_respages andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: DRC save, restore, and clear functions

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4state.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 4d547fa..852b101 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1060,12 +1060,14 @@ nfsd4_store_cache_entry(struct nfsd4_compoundres *resp)
 {
 	struct nfsd4_cache_entry *entry = &resp->cstate.slot->sl_cache_entry;
 	struct svc_rqst *rqstp = resp->rqstp;
+	struct nfsd4_compoundargs *args = rqstp->rq_argp;
+	struct nfsd4_op *op = &args->ops[resp->opcnt];
 	struct kvec *resv = &rqstp->rq_res.head[0];
 
 	dprintk("--> %s entry %p\n", __func__, entry);
 
-	/* Don't cache a failed OP_SEQUENCE */
-	if (resp->opcnt == 1 && resp->cstate.status)
+	/* Don't cache a failed OP_SEQUENCE. */
+	if (resp->opcnt == 1 && op->opnum == OP_SEQUENCE && resp->cstate.status)
 		return;
 
 	nfsd4_release_respages(entry->ce_respages, entry->ce_resused);
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 17/22] SQUASHME nfsd41 remove CONFIG_NFS_V4_1 around nfsd4_release_respages
  2009-04-03  0:19                             ` [PATCH 16/22] SQUASHME nfsd41: add to nfsd4_set_cache_entry andros
@ 2009-04-03  0:19                               ` andros
  2009-04-03  0:19                                 ` [PATCH 18/22] SQUASHME: rename nfsd4_no_page_in_cache andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
Squash into nfsd41: Add a create session replay cache

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4state.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 852b101..7110278 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -659,12 +659,10 @@ static inline void
 free_client(struct nfs4_client *clp)
 {
 	shutdown_callback_client(clp);
-#if defined(CONFIG_NFSD_V4_1)
 	if (clp->cl_cb_xprt)
 		svc_xprt_put(clp->cl_cb_xprt);
 	nfsd4_release_respages(clp->cl_slot.sl_cache_entry.ce_respages,
 			     clp->cl_slot.sl_cache_entry.ce_resused);
-#endif /* CONFIG_NFSD_V4_1 */
 	if (clp->cl_cred.cr_group_info)
 		put_group_info(clp->cl_cred.cr_group_info);
 	kfree(clp->cl_principal);
@@ -1540,6 +1538,8 @@ out:
 	dprintk("%s: return %d\n", __func__, ntohl(status));
 	return status;
 }
+#else /* CONFIG_NFSD_V4_1 */
+static void nfsd4_release_respages(struct page **respages, short resused) {}
 #endif /* CONFIG_NFSD_V4_1 */
 
 __be32
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 18/22] SQUASHME: rename nfsd4_no_page_in_cache
  2009-04-03  0:19                               ` [PATCH 17/22] SQUASHME nfsd41 remove CONFIG_NFS_V4_1 around nfsd4_release_respages andros
@ 2009-04-03  0:19                                 ` andros
  2009-04-03  0:20                                   ` [PATCH 19/22] SQUASHME: nfsd41 rename nfsd4_enc_no_page_replay andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:19 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: non-page DRC for solo sequence responses

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4proc.c        |    2 +-
 fs/nfsd/nfs4state.c       |    4 ++--
 fs/nfsd/nfs4xdr.c         |    2 +-
 include/linux/nfsd/xdr4.h |    2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
index 29428ab..03aa76e 100644
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
@@ -1002,7 +1002,7 @@ encode_op:
 		/* Only from SEQUENCE or CREATE_SESSION */
 		if (resp->cstate.status == nfserr_replay_cache) {
 			dprintk("%s NFS4.1 replay from cache\n", __func__);
-			if (nfsd4_no_page_in_cache(resp))
+			if (nfsd4_not_cached(resp))
 				status = nfsd4_enc_no_page_replay(args, resp);
 			else
 				status = op->status;
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 7110278..b061224 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -1077,7 +1077,7 @@ nfsd4_store_cache_entry(struct nfsd4_compoundres *resp)
 	 * does this for us!
 	 */
 
-	if (nfsd4_no_page_in_cache(resp)) {
+	if (nfsd4_not_cached(resp)) {
 		entry->ce_resused = 0;
 		entry->ce_rpchdrlen = 0;
 		dprintk("%s Just cache SEQUENCE. ce_cachethis %d\n", __func__,
@@ -1146,7 +1146,7 @@ nfsd4_replay_cache_entry(struct nfsd4_compoundres *resp,
 	 * session inactivity timer fires and a solo sequence operation
 	 * is sent (lease renewal).
 	 */
-	if (seq && nfsd4_no_page_in_cache(resp)) {
+	if (seq && nfsd4_not_cached(resp)) {
 		seq->maxslots = resp->cstate.session->se_fnumslots;
 		return nfs_ok;
 	}
diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
index 8dfa14b..9fb54bf 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -3341,7 +3341,7 @@ nfs4svc_encode_compoundres(struct svc_rqst *rqstp, __be32 *p, struct nfsd4_compo
 #ifdef CONFIG_NFSD_V4_1
 	if (nfsd4_has_session(&resp->cstate)) {
 		if (resp->cstate.status == nfserr_replay_cache &&
-				!nfsd4_no_page_in_cache(resp)) {
+				!nfsd4_not_cached(resp)) {
 			iov->iov_len = resp->cstate.iovlen;
 		} else {
 			nfsd4_store_cache_entry(resp);
diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h
index 845f05e..018a821 100644
--- a/include/linux/nfsd/xdr4.h
+++ b/include/linux/nfsd/xdr4.h
@@ -493,7 +493,7 @@ static inline u32 nfsd4_is_solo_sequence(struct nfsd4_compoundres *resp)
 	return args->opcnt == 1 ? 1 : 0;
 }
 
-static inline u32 nfsd4_no_page_in_cache(struct nfsd4_compoundres *resp)
+static inline u32 nfsd4_not_cached(struct nfsd4_compoundres *resp)
 {
 	return (resp->cstate.slot->sl_cache_entry.ce_cachethis == 0 ||
 			nfsd4_is_solo_sequence(resp));
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 19/22] SQUASHME: nfsd41 rename nfsd4_enc_no_page_replay
  2009-04-03  0:19                                 ` [PATCH 18/22] SQUASHME: rename nfsd4_no_page_in_cache andros
@ 2009-04-03  0:20                                   ` andros
  2009-04-03  0:20                                     ` [PATCH 20/22] SQUASHME nfsd41 nfsd4_is_solo_sequence andros
  0 siblings, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:20 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: non-page DRC for solo sequence responses

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 fs/nfsd/nfs4proc.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
index 03aa76e..a519362 100644
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
@@ -873,7 +873,7 @@ static const char *nfsd4_op_name(unsigned opnum);
  * encode the uncache rep error on the next operation.
  */
 static __be32
-nfsd4_enc_no_page_replay(struct nfsd4_compoundargs *args,
+nfsd4_enc_uncached_replay(struct nfsd4_compoundargs *args,
 			 struct nfsd4_compoundres *resp)
 {
 	struct nfsd4_op *op;
@@ -1003,7 +1003,7 @@ encode_op:
 		if (resp->cstate.status == nfserr_replay_cache) {
 			dprintk("%s NFS4.1 replay from cache\n", __func__);
 			if (nfsd4_not_cached(resp))
-				status = nfsd4_enc_no_page_replay(args, resp);
+				status = nfsd4_enc_uncached_replay(args, resp);
 			else
 				status = op->status;
 			goto out;
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 20/22] SQUASHME nfsd41 nfsd4_is_solo_sequence
  2009-04-03  0:20                                   ` [PATCH 19/22] SQUASHME: nfsd41 rename nfsd4_enc_no_page_replay andros
@ 2009-04-03  0:20                                     ` andros
  2009-04-03  0:20                                       ` [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return andros
  2009-04-03  0:33                                       ` [pnfs] [PATCH 20/22] SQUASHME nfsd41 nfsd4_is_solo_sequence Benny Halevy
  0 siblings, 2 replies; 27+ messages in thread
From: andros @ 2009-04-03  0:20 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: non-page DRC for solo sequence responses

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 include/linux/nfsd/xdr4.h |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h
index 018a821..0352863 100644
--- a/include/linux/nfsd/xdr4.h
+++ b/include/linux/nfsd/xdr4.h
@@ -487,10 +487,10 @@ struct nfsd4_compoundres {
 	struct nfsd4_compound_state	cstate;
 };
 
-static inline u32 nfsd4_is_solo_sequence(struct nfsd4_compoundres *resp)
+static inline int nfsd4_is_solo_sequence(struct nfsd4_compoundres *resp)
 {
 	struct nfsd4_compoundargs *args = resp->rqstp->rq_argp;
-	return args->opcnt == 1 ? 1 : 0;
+	return args->opcnt == 1;
 }
 
 static inline u32 nfsd4_not_cached(struct nfsd4_compoundres *resp)
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return
  2009-04-03  0:20                                     ` [PATCH 20/22] SQUASHME nfsd41 nfsd4_is_solo_sequence andros
@ 2009-04-03  0:20                                       ` andros
  2009-04-03  0:20                                         ` [PATCH 22/22] SQUASHME: nfsd41 drop parens in nfsd4_is_solo_sequence call andros
  2009-04-03  0:34                                         ` [pnfs] [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return Benny Halevy
  2009-04-03  0:33                                       ` [pnfs] [PATCH 20/22] SQUASHME nfsd41 nfsd4_is_solo_sequence Benny Halevy
  1 sibling, 2 replies; 27+ messages in thread
From: andros @ 2009-04-03  0:20 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: non-page DRC for solo sequence responses

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 include/linux/nfsd/xdr4.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h
index 0352863..3514f00 100644
--- a/include/linux/nfsd/xdr4.h
+++ b/include/linux/nfsd/xdr4.h
@@ -493,7 +493,7 @@ static inline int nfsd4_is_solo_sequence(struct nfsd4_compoundres *resp)
 	return args->opcnt == 1;
 }
 
-static inline u32 nfsd4_not_cached(struct nfsd4_compoundres *resp)
+static inline int nfsd4_not_cached(struct nfsd4_compoundres *resp)
 {
 	return (resp->cstate.slot->sl_cache_entry.ce_cachethis == 0 ||
 			nfsd4_is_solo_sequence(resp));
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 22/22] SQUASHME: nfsd41 drop parens in nfsd4_is_solo_sequence call
  2009-04-03  0:20                                       ` [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return andros
@ 2009-04-03  0:20                                         ` andros
  2009-04-03  1:02                                           ` [pnfs] " Benny Halevy
  2009-04-03  0:34                                         ` [pnfs] [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return Benny Halevy
  1 sibling, 1 reply; 27+ messages in thread
From: andros @ 2009-04-03  0:20 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, pnfs, Andy Adamson

From: Andy Adamson <andros@netapp.com>

March 31 review comments.
squash into nfsd41: non-page DRC for solo sequence responses

Signed-off-by: Andy Adamson <andros@netapp.com>
---
 include/linux/nfsd/xdr4.h |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h
index 3514f00..03e7025 100644
--- a/include/linux/nfsd/xdr4.h
+++ b/include/linux/nfsd/xdr4.h
@@ -495,8 +495,8 @@ static inline int nfsd4_is_solo_sequence(struct nfsd4_compoundres *resp)
 
 static inline int nfsd4_not_cached(struct nfsd4_compoundres *resp)
 {
-	return (resp->cstate.slot->sl_cache_entry.ce_cachethis == 0 ||
-			nfsd4_is_solo_sequence(resp));
+	return resp->cstate.slot->sl_cache_entry.ce_cachethis == 0 ||
+			nfsd4_is_solo_sequence(resp);
 }
 
 #define NFS4_SVC_XDRSIZE		sizeof(struct nfsd4_compoundargs)
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [pnfs] [PATCH 20/22] SQUASHME nfsd41 nfsd4_is_solo_sequence
  2009-04-03  0:20                                     ` [PATCH 20/22] SQUASHME nfsd41 nfsd4_is_solo_sequence andros
  2009-04-03  0:20                                       ` [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return andros
@ 2009-04-03  0:33                                       ` Benny Halevy
  1 sibling, 0 replies; 27+ messages in thread
From: Benny Halevy @ 2009-04-03  0:33 UTC (permalink / raw)
  To: andros; +Cc: bfields, linux-nfs, pnfs

On Apr. 03, 2009, 3:20 +0300, andros@netapp.com wrote:
> From: Andy Adamson <andros@netapp.com>
> 
> March 31 review comments.
> squash into nfsd41: non-page DRC for solo sequence responses
> 
> Signed-off-by: Andy Adamson <andros@netapp.com>
> ---
>  include/linux/nfsd/xdr4.h |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h
> index 018a821..0352863 100644
> --- a/include/linux/nfsd/xdr4.h
> +++ b/include/linux/nfsd/xdr4.h
> @@ -487,10 +487,10 @@ struct nfsd4_compoundres {
>  	struct nfsd4_compound_state	cstate;
>  };
>  
> -static inline u32 nfsd4_is_solo_sequence(struct nfsd4_compoundres *resp)
> +static inline int nfsd4_is_solo_sequence(struct nfsd4_compoundres *resp)

returning bool would be best.

Benny

>  {
>  	struct nfsd4_compoundargs *args = resp->rqstp->rq_argp;
> -	return args->opcnt == 1 ? 1 : 0;
> +	return args->opcnt == 1;
>  }
>  
>  static inline u32 nfsd4_not_cached(struct nfsd4_compoundres *resp)

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [pnfs] [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return
  2009-04-03  0:20                                       ` [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return andros
  2009-04-03  0:20                                         ` [PATCH 22/22] SQUASHME: nfsd41 drop parens in nfsd4_is_solo_sequence call andros
@ 2009-04-03  0:34                                         ` Benny Halevy
  1 sibling, 0 replies; 27+ messages in thread
From: Benny Halevy @ 2009-04-03  0:34 UTC (permalink / raw)
  To: andros; +Cc: bfields, linux-nfs, pnfs

On Apr. 03, 2009, 3:20 +0300, andros@netapp.com wrote:
> From: Andy Adamson <andros@netapp.com>
> 
> March 31 review comments.
> squash into nfsd41: non-page DRC for solo sequence responses
> 
> Signed-off-by: Andy Adamson <andros@netapp.com>
> ---
>  include/linux/nfsd/xdr4.h |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h
> index 0352863..3514f00 100644
> --- a/include/linux/nfsd/xdr4.h
> +++ b/include/linux/nfsd/xdr4.h
> @@ -493,7 +493,7 @@ static inline int nfsd4_is_solo_sequence(struct nfsd4_compoundres *resp)
>  	return args->opcnt == 1;
>  }
>  
> -static inline u32 nfsd4_not_cached(struct nfsd4_compoundres *resp)
> +static inline int nfsd4_not_cached(struct nfsd4_compoundres *resp)

Here too, returning bool is more appropriate.

Benny

>  {
>  	return (resp->cstate.slot->sl_cache_entry.ce_cachethis == 0 ||
>  			nfsd4_is_solo_sequence(resp));

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [pnfs] [PATCH 22/22] SQUASHME: nfsd41 drop parens in nfsd4_is_solo_sequence call
  2009-04-03  0:20                                         ` [PATCH 22/22] SQUASHME: nfsd41 drop parens in nfsd4_is_solo_sequence call andros
@ 2009-04-03  1:02                                           ` Benny Halevy
  0 siblings, 0 replies; 27+ messages in thread
From: Benny Halevy @ 2009-04-03  1:02 UTC (permalink / raw)
  To: andros; +Cc: bfields, linux-nfs, pnfs

On Apr. 03, 2009, 3:20 +0300, andros@netapp.com wrote:
> From: Andy Adamson <andros@netapp.com>
> 
> March 31 review comments.
> squash into nfsd41: non-page DRC for solo sequence responses
> 
> Signed-off-by: Andy Adamson <andros@netapp.com>
> ---
>  include/linux/nfsd/xdr4.h |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h
> index 3514f00..03e7025 100644
> --- a/include/linux/nfsd/xdr4.h
> +++ b/include/linux/nfsd/xdr4.h
> @@ -495,8 +495,8 @@ static inline int nfsd4_is_solo_sequence(struct nfsd4_compoundres *resp)
>  
>  static inline int nfsd4_not_cached(struct nfsd4_compoundres *resp)
>  {
> -	return (resp->cstate.slot->sl_cache_entry.ce_cachethis == 0 ||
> -			nfsd4_is_solo_sequence(resp));
> +	return resp->cstate.slot->sl_cache_entry.ce_cachethis == 0 ||

since ce_cachethis is boolean rather than numeric, how about using "!"
rather than "== 0"?

Benny

> +			nfsd4_is_solo_sequence(resp);
>  }
>  
>  #define NFS4_SVC_XDRSIZE		sizeof(struct nfsd4_compoundargs)

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [pnfs] [PATCH 06/22] SQUASHME: nfsd41 remove sl_session from nfsd4_open
  2009-04-03  0:19         ` [PATCH 06/22] SQUASHME: nfsd41 remove sl_session from nfsd4_open andros
  2009-04-03  0:19           ` [PATCH 07/22] SQUASHME: nfsd41 remove sl_session from alloc_init_session andros
@ 2009-04-03  1:46           ` Benny Halevy
  1 sibling, 0 replies; 27+ messages in thread
From: Benny Halevy @ 2009-04-03  1:46 UTC (permalink / raw)
  To: andros; +Cc: bfields, linux-nfs, pnfs

On Apr. 03, 2009, 3:19 +0300, andros@netapp.com wrote:
> From: Andy Adamson <andros@netapp.com>
> 
> March 31 review by Bruce
> squash into nfsd41: create_session operation

Hmm, Isn't it nfsd41: clientid handling?

Benny

> 
> Signed-off-by: Andy Adamson <andros@netapp.com>
> ---
>  fs/nfsd/nfs4proc.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
> index a393d38..29428ab 100644
> --- a/fs/nfsd/nfs4proc.c
> +++ b/fs/nfsd/nfs4proc.c
> @@ -201,7 +201,7 @@ nfsd4_open(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
>  		return nfserr_inval;
>  
>  	if (nfsd4_has_session(cstate))
> -		copy_clientid(&open->op_clientid, cstate->slot->sl_session);
> +		copy_clientid(&open->op_clientid, cstate->session);
>  
>  	nfs4_lock_state();
>  

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [pnfs] [PATCH 02/22] SQUASHME: nfsd41: use cstate session in nfsd4_replay_cache_entry
  2009-04-03  0:19 ` [PATCH 02/22] SQUASHME: nfsd41: use cstate session in nfsd4_replay_cache_entry andros
  2009-04-03  0:19   ` [PATCH 03/22] SQUASHME nfsd41: use cstate session in nfsd4_sequence andros
@ 2009-04-03  1:50   ` Benny Halevy
  1 sibling, 0 replies; 27+ messages in thread
From: Benny Halevy @ 2009-04-03  1:50 UTC (permalink / raw)
  To: andros; +Cc: bfields, linux-nfs, pnfs

On Apr. 03, 2009, 3:19 +0300, andros@netapp.com wrote:
> From: Andy Adamson <andros@netapp.com>
> 
> March 31 review by Bruce
> squash into nfsd41: DRC save, restore, and clear functions

my records show "nfsd41: non-page DRC for solo sequence responses"...
I we're in sync

Benny

> 
> Signed-off-by: Andy Adamson <andros@netapp.com>
> ---
>  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 b7c4ed0..b233efa 100644
> --- a/fs/nfsd/nfs4state.c
> +++ b/fs/nfsd/nfs4state.c
> @@ -1154,7 +1154,7 @@ nfsd4_replay_cache_entry(struct nfsd4_compoundres *resp,
>  	 * is sent (lease renewal).
>  	 */
>  	if (seq && nfsd4_no_page_in_cache(resp)) {
> -		seq->maxslots = resp->cstate.slot->sl_session->se_fnumslots;
> +		seq->maxslots = resp->cstate.session->se_fnumslots;
>  		return nfs_ok;
>  	}
>  

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2009-04-03  1:50 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-04-03  0:19 [PATCH 01/22] SQUASHME: nfsd41: add nfsd4_session pointer to nfsd4_compound_state andros
2009-04-03  0:19 ` [PATCH 02/22] SQUASHME: nfsd41: use cstate session in nfsd4_replay_cache_entry andros
2009-04-03  0:19   ` [PATCH 03/22] SQUASHME nfsd41: use cstate session in nfsd4_sequence andros
2009-04-03  0:19     ` [PATCH 04/22] SQUASHME: nfsd41: use cstate session in nfsd4_check_drc_limit andros
2009-04-03  0:19       ` [PATCH 05/22] SQUASHME: nfsd41: use cstate session in nfs4svc_encode_compoundres andros
2009-04-03  0:19         ` [PATCH 06/22] SQUASHME: nfsd41 remove sl_session from nfsd4_open andros
2009-04-03  0:19           ` [PATCH 07/22] SQUASHME: nfsd41 remove sl_session from alloc_init_session andros
2009-04-03  0:19             ` [PATCH 08/22] SQUASHME: nfsd41 remove sl_session from nfsd4_slot andros
2009-04-03  0:19               ` [PATCH 09/22] SQUASHME: nfsd41 set cstate session andros
2009-04-03  0:19                 ` [PATCH 10/22] SQUASHME: nfsd41 rename nfsd4_move_pages andros
2009-04-03  0:19                   ` [PATCH 11/22] SQUASHME: nfsd41 rename page_no variable andros
2009-04-03  0:19                     ` [PATCH 12/22] SQUASHME: nfsd41 rename nfsd4_set_cache_entry andros
2009-04-03  0:19                       ` [PATCH 13/22] SQUASHME nfsd41 replace nfsd4_set_cache_entry andros
2009-04-03  0:19                         ` [PATCH 14/22] SQUASHME: nfsd41 fix nfsd41_copy_replay_data comment andros
2009-04-03  0:19                           ` [PATCH 15/22] SQUASHME nfsd41: revert portion of nfsd4_set_cache_entry andros
2009-04-03  0:19                             ` [PATCH 16/22] SQUASHME nfsd41: add to nfsd4_set_cache_entry andros
2009-04-03  0:19                               ` [PATCH 17/22] SQUASHME nfsd41 remove CONFIG_NFS_V4_1 around nfsd4_release_respages andros
2009-04-03  0:19                                 ` [PATCH 18/22] SQUASHME: rename nfsd4_no_page_in_cache andros
2009-04-03  0:20                                   ` [PATCH 19/22] SQUASHME: nfsd41 rename nfsd4_enc_no_page_replay andros
2009-04-03  0:20                                     ` [PATCH 20/22] SQUASHME nfsd41 nfsd4_is_solo_sequence andros
2009-04-03  0:20                                       ` [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return andros
2009-04-03  0:20                                         ` [PATCH 22/22] SQUASHME: nfsd41 drop parens in nfsd4_is_solo_sequence call andros
2009-04-03  1:02                                           ` [pnfs] " Benny Halevy
2009-04-03  0:34                                         ` [pnfs] [PATCH 21/22] SQUASHME: nfsd41 change nfsd4_not_cached return Benny Halevy
2009-04-03  0:33                                       ` [pnfs] [PATCH 20/22] SQUASHME nfsd41 nfsd4_is_solo_sequence Benny Halevy
2009-04-03  1:46           ` [pnfs] [PATCH 06/22] SQUASHME: nfsd41 remove sl_session from nfsd4_open Benny Halevy
2009-04-03  1:50   ` [pnfs] [PATCH 02/22] SQUASHME: nfsd41: use cstate session in nfsd4_replay_cache_entry Benny Halevy

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.