[pnfs] [PATCH 2/5] pnfs: Only execute a layoutreturn if necessary.

Dean Hildebrand seattleplus at gmail.com
Tue May 6 19:45:39 EDT 2008


Signed-off-by: Dean Hildebrand <dhildeb at us.ibm.com>
---
 fs/nfs/pnfs.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c
index a17d2ba..27e37be 100644
--- a/fs/nfs/pnfs.c
+++ b/fs/nfs/pnfs.c
@@ -562,15 +562,19 @@ out:
 
 int
 pnfs_return_layout(struct inode *ino, struct nfs4_pnfs_layout_segment *range,
-		enum pnfs_layoutrecall_type type)
+		   enum pnfs_layoutrecall_type type)
 {
 	struct pnfs_layout_type *lo;
 	struct nfs_inode *nfsi = NFS_I(ino);
+	struct nfs_server *nfss = NFS_SERVER(ino);
 	struct nfs4_pnfs_layout_segment arg;
-	int status;
+	int status = 0;
 
 	dprintk("--> %s\n", __func__);
 
+	if (!pnfs_enabled_sb(nfss)  || !nfsi->current_layout)
+		goto out;
+
 	if (range)
 		arg = *range;
 	else {
-- 
1.5.3.3



More information about the pNFS mailing list