[pnfs] [PATCH 3/4 v2] deviceid64: nfs server

Benny Halevy bhalevy at panasas.com
Mon Aug 6 03:24:02 EDT 2007


change deviceid from u32 to u64

Signed-off-by: Benny Halevy <bhalevy at panasas.com>
---
 fs/nfsd/nfs4proc.c              |    4 ++--
 fs/nfsd/nfs4state.c             |    2 +-
 fs/nfsd/nfs4xdr.c               |    8 ++++----
 include/linux/nfsd/nfsd4_pnfs.h |    4 ++--
 include/linux/nfsd/pnfsd.h      |    2 +-
 include/linux/nfsd/state.h      |    2 +-
 6 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
index f90ea73..bf48706 100644
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
@@ -1047,7 +1047,7 @@ nfsd4_getdevinfo( struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd
 	struct super_block *sb;
 	int type = 0, status;
 
-	printk("%s: type %d dev_id %d\n",
+	printk("%s: type %d dev_id 0x%llx\n",
 		__FUNCTION__, gdp->gd_type, gdp->gd_dev_id);
 
 	status = fh_verify(rqstp, current_fh, 0, MAY_NOP);
@@ -1076,7 +1076,7 @@ nfsd4_getdevinfo( struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd
 	if (sb && sb->s_export_op->get_deviceinfo) {
 		status = sb->s_export_op->get_deviceinfo(sb, (void *)gdp);
 
-		dprintk("%s: status %d type %d dev_id %d\n",
+		dprintk("%s: status %d type %d dev_id 0x%llx\n",
 			__FUNCTION__, status, gdp->gd_type, gdp->gd_dev_id);
 		goto out;
 	}
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 5d6fbb3..5eee479 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -4184,7 +4184,7 @@ release_pnfs_ds_dev_list(struct nfs4_stateid *stp)
 }
 
 static int
-nfs4_add_pnfs_ds_dev(struct nfs4_stateid *stp, u32 devid)
+nfs4_add_pnfs_ds_dev(struct nfs4_stateid *stp, u64 devid)
 {
 	struct pnfs_ds_dev_entry *ddp;
 
diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
index b9e0400..bbaf33c 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -1225,8 +1225,8 @@ nfsd4_decode_getdevinfo(struct nfsd4_compoundargs *argp, struct nfsd4_pnfs_getde
 {
 	DECODE_HEAD;
 
-	READ_BUF(12);
-	READ32(gdev->gd_dev_id);
+	READ_BUF(16);
+	READ64(gdev->gd_dev_id);
 	READ32(gdev->gd_type);
 	READ32(gdev->gd_maxcnt);
 
@@ -2888,8 +2888,8 @@ nfsd4_encode_devlist_item(struct nfsd4_compoundres *resp, struct nfsd4_pnfs_devl
 	int len;
 	ENCODE_HEAD;
 
-	RESERVE_SPACE(8);
-	WRITE32(dlist->dev_id);
+	RESERVE_SPACE(12);
+	WRITE64(dlist->dev_id);
 	WRITE32(lotype);
 	ADJUST_ARGS();
 
diff --git a/include/linux/nfsd/nfsd4_pnfs.h b/include/linux/nfsd/nfsd4_pnfs.h
index 0d119f3..5776524 100644
--- a/include/linux/nfsd/nfsd4_pnfs.h
+++ b/include/linux/nfsd/nfsd4_pnfs.h
@@ -45,7 +45,7 @@
  * and encoded in nfsd4_encode_devlist_item with help from
  * the gd_ops->layout_encode() callback */
 struct nfsd4_pnfs_devlist {
-	u32		dev_id;
+	u64		dev_id;
 	void	 	*dev_addr;  /* encoded by callback */
 };
 
@@ -63,7 +63,7 @@ struct nfsd4_pnfs_getdevlist {
 
 struct nfsd4_pnfs_getdevinfo {
 	u32                             gd_type;      /* request - response */
-	u32                             gd_dev_id;    /* request */
+	u64                             gd_dev_id;    /* request */
 	u32                             gd_maxcnt;    /* request */
 	struct export_operations	*gd_ops;
 	u32				gd_devlist_len; /* response */
diff --git a/include/linux/nfsd/pnfsd.h b/include/linux/nfsd/pnfsd.h
index 8311d2d..67c32be 100644
--- a/include/linux/nfsd/pnfsd.h
+++ b/include/linux/nfsd/pnfsd.h
@@ -37,7 +37,7 @@
 
 /* pNFS Metadata to Data server state communication*/
 struct pnfs_get_state {
-	u32			devid;    /* request */
+	u64			devid;    /* request */
 	stateid_t		stid;     /* request;response */
 	clientid_t		clid;     /* response */
 	u32			access;    /* response */
diff --git a/include/linux/nfsd/state.h b/include/linux/nfsd/state.h
index d6b5287..1993f2e 100644
--- a/include/linux/nfsd/state.h
+++ b/include/linux/nfsd/state.h
@@ -379,7 +379,7 @@ struct nfs4_file {
 
 struct pnfs_ds_dev_entry {
 	struct list_head        dd_dev_entry; /* st_pnfs_ds_id entry */
-	u32                     dd_devid;
+	u64                     dd_devid;
 };
 #endif /* CONFIG_PNFS */
 
-- 
1.5.2.86.g99b5




More information about the pNFS mailing list