From: Jan Kara <jack@suse.cz>
To: "Darrick J. Wong" <darrick.wong@oracle.com>
Cc: axboe@kernel.dk, lucho@ionkov.net, jack@suse.cz,
ericvh@gmail.com, viro@zeniv.linux.org.uk, rminnich@sandia.gov,
tytso@mit.edu, martin.petersen@oracle.com, neilb@suse.de,
david@fromorbit.com, Zheng Liu <gnehzuil.liu@gmail.com>,
linux-kernel@vger.kernel.org, hch@infradead.org,
linux-fsdevel@vger.kernel.org, adilger.kernel@dilger.ca,
bharrosh@panasas.com, jlayton@samba.org,
v9fs-developer@lists.sourceforge.net, linux-ext4@vger.kernel.org
Subject: Re: [PATCH 3/4] 9pfs: Fix filesystem to wait for stable page writeback
Date: Mon, 17 Dec 2012 11:11:30 +0100 [thread overview]
Message-ID: <20121217101130.GG5133@quack.suse.cz> (raw)
In-Reply-To: <20121213080802.23360.4487.stgit@blackbox.djwong.org>
[-- Attachment #1: Type: text/plain, Size: 805 bytes --]
On Thu 13-12-12 00:08:02, Darrick J. Wong wrote:
> Fix up the ->page_mkwrite handler to provide stable page writes if necessary.
>
> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Looks good. Also UBIFS and OCFS2 seem to need similar treatment. Patches
attached...
Honza
> ---
> fs/9p/vfs_file.c | 1 +
> 1 file changed, 1 insertion(+)
>
>
> diff --git a/fs/9p/vfs_file.c b/fs/9p/vfs_file.c
> index c2483e9..357260b 100644
> --- a/fs/9p/vfs_file.c
> +++ b/fs/9p/vfs_file.c
> @@ -620,6 +620,7 @@ v9fs_vm_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf)
> lock_page(page);
> if (page->mapping != inode->i_mapping)
> goto out_unlock;
> + wait_for_stable_page(page);
>
> return VM_FAULT_LOCKED;
> out_unlock:
>
--
Jan Kara <jack@suse.cz>
SUSE Labs, CR
[-- Attachment #2: 0001-ocfs2-Wait-for-page-writeback-to-provide-stable-page.patch --]
[-- Type: text/x-patch, Size: 964 bytes --]
>From 0e99ae8cf891015105f01065e2977ea6cc737ff8 Mon Sep 17 00:00:00 2001
From: Jan Kara <jack@suse.cz>
Date: Mon, 17 Dec 2012 11:03:42 +0100
Subject: [PATCH 1/2] ocfs2: Wait for page writeback to provide stable pages
When stable pages are required, we have to wait if the page is just
going to disk and we want to modify it. Add proper callback to
ocfs2_grab_pages_for_write().
CC: ocfs2-devel@oss.oracle.com
CC: Joel Becker <jlbec@evilplan.org>
CC: Mark Fasheh <mfasheh@suse.com>
Signed-off-by: Jan Kara <jack@suse.cz>
---
fs/ocfs2/aops.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index 6577432..9796330 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -1194,6 +1194,7 @@ static int ocfs2_grab_pages_for_write(struct address_space *mapping,
goto out;
}
}
+ wait_for_stable_page(wc->w_pages[i]);
if (index == target_index)
wc->w_target_page = wc->w_pages[i];
--
1.7.1
[-- Attachment #3: 0002-ubifs-Wait-for-page-writeback-to-provide-stable-page.patch --]
[-- Type: text/x-patch, Size: 946 bytes --]
>From 988439f828b24fba8784cbd4d713d87cabd807cf Mon Sep 17 00:00:00 2001
From: Jan Kara <jack@suse.cz>
Date: Mon, 17 Dec 2012 11:08:11 +0100
Subject: [PATCH 2/2] ubifs: Wait for page writeback to provide stable pages
When stable pages are required, we have to wait if the page is just
going to disk and we want to modify it. Add proper callback to
ubifs_vm_page_mkwrite().
CC: Artem Bityutskiy <dedekind1@gmail.com>
CC: Adrian Hunter <adrian.hunter@intel.com>
CC: linux-mtd@lists.infradead.org
Signed-off-by: Jan Kara <jack@suse.cz>
---
fs/ubifs/file.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/fs/ubifs/file.c b/fs/ubifs/file.c
index 5bc7781..4f6493c 100644
--- a/fs/ubifs/file.c
+++ b/fs/ubifs/file.c
@@ -1522,6 +1522,7 @@ static int ubifs_vm_page_mkwrite(struct vm_area_struct *vma,
ubifs_release_dirty_inode_budget(c, ui);
}
+ wait_for_stable_page(page);
unlock_page(page);
return 0;
--
1.7.1
next prev parent reply other threads:[~2012-12-17 10:11 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-13 8:07 [PATCH v2.3 0/3] mm/fs: Implement faster stable page writes on filesystems Darrick J. Wong
2012-12-13 8:07 ` [PATCH 1/4] bdi: Allow block devices to say that they require stable page writes Darrick J. Wong
2012-12-17 9:04 ` Jan Kara
2012-12-13 8:07 ` [PATCH 2/4] mm: Only enforce stable page writes if the backing device requires it Darrick J. Wong
2012-12-17 9:16 ` Jan Kara
2012-12-13 8:08 ` [PATCH 3/4] 9pfs: Fix filesystem to wait for stable page writeback Darrick J. Wong
2012-12-17 10:11 ` Jan Kara [this message]
2012-12-13 8:08 ` [PATCH 4/4] block: Optionally snapshot page contents to provide stable pages during write Darrick J. Wong
2012-12-14 1:48 ` Andy Lutomirski
2012-12-14 2:10 ` Darrick J. Wong
2012-12-14 3:33 ` Dave Chinner
2012-12-14 19:43 ` Darrick J. Wong
2012-12-15 1:12 ` Andy Lutomirski
2012-12-15 2:01 ` Darrick J. Wong
2012-12-15 2:06 ` Andy Lutomirski
2012-12-17 22:54 ` Darrick J. Wong
2012-12-16 16:13 ` Zheng Liu
2012-12-17 22:56 ` Darrick J. Wong
2012-12-17 10:23 ` Jan Kara
2012-12-17 23:20 ` Darrick J. Wong
2012-12-27 19:14 ` OGAWA Hirofumi
2012-12-27 21:40 ` Darrick J. Wong
2012-12-27 21:48 ` OGAWA Hirofumi
2013-01-07 20:44 ` Darrick J. Wong
2013-01-08 9:44 ` OGAWA Hirofumi
-- strict thread matches above, loose matches on Subject: below --
2012-11-21 2:00 [PATCH v2.1 0/3] mm/fs: Implement faster stable page writes on filesystems Darrick J. Wong
2012-11-21 2:00 ` [PATCH 3/4] 9pfs: Fix filesystem to wait for stable page writeback Darrick J. Wong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20121217101130.GG5133@quack.suse.cz \
--to=jack@suse.cz \
--cc=adilger.kernel@dilger.ca \
--cc=axboe@kernel.dk \
--cc=bharrosh@panasas.com \
--cc=darrick.wong@oracle.com \
--cc=david@fromorbit.com \
--cc=ericvh@gmail.com \
--cc=gnehzuil.liu@gmail.com \
--cc=hch@infradead.org \
--cc=jlayton@samba.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lucho@ionkov.net \
--cc=martin.petersen@oracle.com \
--cc=neilb@suse.de \
--cc=rminnich@sandia.gov \
--cc=tytso@mit.edu \
--cc=v9fs-developer@lists.sourceforge.net \
--cc=viro@zeniv.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).