linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Theodore Ts'o <tytso@mit.edu>
To: Ext4 Developers List <linux-ext4@vger.kernel.org>
Cc: Theodore Ts'o <tytso@mit.edu>
Subject: [PATCH,RFC 0/7] Simplify buffered write submissions, part II
Date: Sat, 12 Feb 2011 19:15:50 -0500	[thread overview]
Message-ID: <1297556157-21559-1-git-send-email-tytso@mit.edu> (raw)

This has been a background project I've been working on for the past
couple of weeks.  It cleans up middle part of the buffered write pages a
bit.  The main features of this patch are:

*) Every single patch removes more lines of code than it adds, with a
	net total removal of nearly 100 lines of code from fs/ext4/inode.c
*) The ext4_da_writepages() codepath no longer abuses the
	clear_page_dirty_for_io() function, which means we no longer
	need to call redirty_page_for_writeback().  This removes
	unneeded work, which is goodness.
*) We no longer start journal handles if they are not needed.  This
	should improve performance and improve SMP scalability on
	parallel random write workloads when the journal is enabled
	in the best way possible --- don't take locks when they aren't
	needed!   

There is still more cleanup that needs to be done, but since these
patches should improve performance by themselves, it seems worthwhile
for me to send these out as-is, and ask people to take a look.  What do
you guys think?

					- Ted

Theodore Ts'o (7):
  ext4: fold __mpage_da_writepage() into write_cache_pages_da()
  ext4: simple cleanups to write_cache_pages_da()
  ext4: clear the dirty bit for a page in writeback at the last minute
  ext4: remove page_skipped hackery in ext4_da_writepages()
  ext4: don't lock the next page in write_cache_pages if not needed
  ext4: move setup of the mpd structure to write_cache_pages_da()
  ext4: move ext4_journal_start/stop to mpage_da_map_and_submit()

 fs/ext4/ext4.h  |    3 +-
 fs/ext4/inode.c |  428 +++++++++++++++++++++----------------------------------
 2 files changed, 167 insertions(+), 264 deletions(-)

-- 
1.7.3.1


             reply	other threads:[~2011-02-13  0:57 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-13  0:15 Theodore Ts'o [this message]
2011-02-13  0:15 ` [PATCH,RFC 1/7] ext4: fold __mpage_da_writepage() into write_cache_pages_da() Theodore Ts'o
2011-02-13  1:25   ` Josef Bacik
2011-02-13  5:42     ` Ted Ts'o
2011-02-13 12:48       ` Josef Bacik
2011-02-13  0:15 ` [PATCH,RFC 2/7] ext4: simple cleanups to write_cache_pages_da() Theodore Ts'o
2011-02-13  1:31   ` Josef Bacik
2011-02-13  0:15 ` [PATCH,RFC 3/7] ext4: clear the dirty bit for a page in writeback at the last minute Theodore Ts'o
2011-02-13  1:34   ` Josef Bacik
2011-02-13  0:15 ` [PATCH,RFC 4/7] ext4: remove page_skipped hackery in ext4_da_writepages() Theodore Ts'o
2011-02-13  1:36   ` Josef Bacik
2011-02-13  0:15 ` [PATCH,RFC 5/7] ext4: don't lock the next page in write_cache_pages if not needed Theodore Ts'o
2011-02-13  1:38   ` Josef Bacik
2011-02-13  0:15 ` [PATCH,RFC 6/7] ext4: move setup of the mpd structure to write_cache_pages_da() Theodore Ts'o
2011-02-13  1:40   ` Josef Bacik
2011-02-13  0:15 ` [PATCH,RFC 7/7] ext4: move ext4_journal_start/stop to mpage_da_map_and_submit() Theodore Ts'o
2011-02-18  4:23   ` Ted Ts'o
2011-02-18 10:42     ` Amir Goldstein
2011-02-18 11:44       ` Yongqiang Yang

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=1297556157-21559-1-git-send-email-tytso@mit.edu \
    --to=tytso@mit.edu \
    --cc=linux-ext4@vger.kernel.org \
    /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).