[PATCH,RFC 0/7] Simplify buffered write submissions, part II

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

 



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

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


[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux