From: "Darrick J. Wong" <darrick.wong@oracle.com>
To: axboe@kernel.dk, lucho@ionkov.net, tytso@mit.edu,
sage@inktank.com, darrick.wong@oracle.com, ericvh@gmail.com,
mfasheh@suse.com, dedekind1@gmail.com, adrian.hunter@intel.com,
dhowells@redhat.com, sfrench@samba.org, jlbec@evilplan.org,
rminnich@sandia.gov
Cc: linux-cifs@vger.kernel.org, jack@suse.cz,
martin.petersen@oracle.com, neilb@suse.de, david@fromorbit.com,
linux-kernel@vger.kernel.org, linux-mm@kvack.org,
linux-mtd@lists.infradead.org, bharrosh@panasas.com,
linux-fsdevel@vger.kernel.org,
v9fs-developer@lists.sourceforge.net, ceph-devel@vger.kernel.org,
linux-ext4@vger.kernel.org, linux-afs@lists.infradead.org,
ocfs2-devel@oss.oracle.com
Subject: [RFC PATCH v2 0/3] mm/fs: Implement faster stable page writes on filesystems
Date: Thu, 01 Nov 2012 00:58:06 -0700 [thread overview]
Message-ID: <20121101075805.16153.64714.stgit@blackbox.djwong.org> (raw)
Hi all,
This patchset makes some key modifications to the original 'stable page writes'
patchset. First, it provides users (devices and filesystems) of a
backing_dev_info the ability to declare whether or not it is necessary to
ensure that page contents cannot change during writeout, whereas the current
code assumes that this is true. Second, it relaxes the wait_on_page_writeback
calls so that they only occur if something needs it. Third, it fixes up (most)
of the remaining filesystems to use this improved conditional-wait logic in the
hopes of providing stable page writes on all filesystems.
It is hoped that (for people not using checksumming devices, anyway) this
patchset will give back unnecessary performance decreases since the original
stable page write patchset went into 3.0. It seems possible, though, that iscsi
and raid5 may wish to use the new stable page write support to enable zero-copy
writeout.
Unfortunately, it seems that ext3 is still broken wrt stable page writes. One
workaround would be to use ext4 instead, or avoid the use of ext3.ko + DIF/DIX.
Hopefully it doesn't take long to sort out.
Another thing I noticed is that there are several filesystems that call
wait_on_page_writeback before returning VM_FAULT_LOCKED in their page_mkwrite
delegates. It might be possible to convert some of these to
wait_for_stable_pages unless there's some other reason that we always want to
wait for writeback.
Finally, if a filesystem wants the VM to help it provide stable pages, it's now
possible to use the *_require_stable_pages() functions to turn that on. It
might be useful for checksumming data blocks during write.
This patchset has been lightly tested on 3.7.0-rc3 on x64.
--D
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next reply other threads:[~2012-11-01 7:58 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-01 7:58 Darrick J. Wong [this message]
2012-11-01 7:58 ` [PATCH 1/3] bdi: Track users that require stable page writes Darrick J. Wong
2012-11-01 13:31 ` Jan Kara
2012-11-01 18:21 ` Boaz Harrosh
2012-11-01 18:57 ` Darrick J. Wong
2012-11-01 22:56 ` Boaz Harrosh
[not found] ` <5092FE22.30906-C4P08NqkoRlBDgjK7y7TUQ@public.gmane.org>
2012-11-01 23:15 ` Jan Kara
2012-11-01 7:58 ` [PATCH 2/3] mm: Only enforce stable page writes if the backing device requires it Darrick J. Wong
[not found] ` <20121101075821.16153.38301.stgit-yuuUpGxbzT9UbpRmUfBrXUB+6BGkLq7r@public.gmane.org>
2012-11-01 13:28 ` Jan Kara
2012-11-01 7:58 ` [PATCH 3/3] fs: Fix remaining filesystems to wait for stable page writeback Darrick J. Wong
[not found] ` <20121101075829.16153.92036.stgit-yuuUpGxbzT9UbpRmUfBrXUB+6BGkLq7r@public.gmane.org>
2012-11-01 12:36 ` Jan Kara
2012-11-01 18:43 ` Boaz Harrosh
2012-11-01 20:22 ` Jeff Layton
2012-11-01 22:23 ` Boaz Harrosh
2012-11-01 22:47 ` Darrick J. Wong
2012-11-02 0:36 ` Jeff Layton
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=20121101075805.16153.64714.stgit@blackbox.djwong.org \
--to=darrick.wong@oracle.com \
--cc=adrian.hunter@intel.com \
--cc=axboe@kernel.dk \
--cc=bharrosh@panasas.com \
--cc=ceph-devel@vger.kernel.org \
--cc=david@fromorbit.com \
--cc=dedekind1@gmail.com \
--cc=dhowells@redhat.com \
--cc=ericvh@gmail.com \
--cc=jack@suse.cz \
--cc=jlbec@evilplan.org \
--cc=linux-afs@lists.infradead.org \
--cc=linux-cifs@vger.kernel.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-mtd@lists.infradead.org \
--cc=lucho@ionkov.net \
--cc=martin.petersen@oracle.com \
--cc=mfasheh@suse.com \
--cc=neilb@suse.de \
--cc=ocfs2-devel@oss.oracle.com \
--cc=rminnich@sandia.gov \
--cc=sage@inktank.com \
--cc=sfrench@samba.org \
--cc=tytso@mit.edu \
--cc=v9fs-developer@lists.sourceforge.net \
/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).