[PATCH 55/88] SQUASHME: pnfsblock: write_begin adjust for removed fields

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Fred Isaman <iisaman@xxxxxxxxxx>

ok_to_use_pnfs and PG_USE_PNFS are gone, instead test req->wb_lseg for NULL.
This also means that the entire do_flush routine is redundant.

Signed-off-by: Fred Isaman <iisaman@xxxxxxxxxx>
---
 fs/nfs/blocklayout/blocklayout.c |   21 ++++-----------------
 1 files changed, 4 insertions(+), 17 deletions(-)

diff --git a/fs/nfs/blocklayout/blocklayout.c b/fs/nfs/blocklayout/blocklayout.c
index 66044d4..eb5760f 100644
--- a/fs/nfs/blocklayout/blocklayout.c
+++ b/fs/nfs/blocklayout/blocklayout.c
@@ -988,10 +988,10 @@ bl_write_begin(struct pnfs_layout_segment *lseg, struct page *page, loff_t pos,
 	if (bl->bl_blocksize < (PAGE_CACHE_SIZE >> 9)) {
 		dprintk("%s Can't handle blocksize %llu\n", __func__,
 			(u64)bl->bl_blocksize);
-		fsdata->ok_to_use_pnfs = 0;
+		put_lseg(fsdata->lseg);
+		fsdata->lseg = NULL;
 		return 0;
 	}
-	fsdata->ok_to_use_pnfs = 1;
 	if (PageMappedToDisk(page)) {
 		/* Basically, this is a flag that says we have
 		 * successfully called write_begin already on this page.
@@ -1014,7 +1014,8 @@ bl_write_begin(struct pnfs_layout_segment *lseg, struct page *page, loff_t pos,
 		 * should be true if we get here.
 		 */
 		BUG_ON(PagePrivate(page));
-		fsdata->ok_to_use_pnfs = 0;
+		put_lseg(fsdata->lseg);
+		fsdata->lseg = NULL;
 		kfree(pages_to_mark);
 		ret = 0;
 	} else {
@@ -1122,19 +1123,6 @@ bl_pg_test(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev,
 	}
 }
 
-/* This checks if old req will likely use same io method as soon
- * to be created request, and returns False if they are the same.
- */
-static int
-bl_do_flush(struct pnfs_layout_segment *lseg, struct nfs_page *req,
-	    struct pnfs_fsdata *fsdata)
-{
-	int will_try_pnfs;
-	dprintk("%s enter\n", __func__);
-	will_try_pnfs = fsdata ? (fsdata->ok_to_use_pnfs) : (lseg != NULL);
-	return will_try_pnfs != test_bit(PG_USE_PNFS, &req->wb_flags);
-}
-
 static struct layoutdriver_io_operations blocklayout_io_operations = {
 	.commit				= bl_commit,
 	.read_pagelist			= bl_read_pagelist,
@@ -1156,7 +1144,6 @@ static struct layoutdriver_io_operations blocklayout_io_operations = {
 static struct layoutdriver_policy_operations blocklayout_policy_operations = {
 	.get_stripesize			= bl_get_stripesize,
 	.pg_test			= bl_pg_test,
-	.do_flush			= bl_do_flush,
 };
 
 static struct pnfs_layoutdriver_type blocklayout_type = {
-- 
1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux