]> git.hungrycats.org Git - linux/commit
[PATCH] use mark_page_accessed() in the write() path
authorAndrew Morton <akpm@osdl.org>
Fri, 1 Aug 2003 03:08:01 +0000 (20:08 -0700)
committerLinus Torvalds <torvalds@home.osdl.org>
Fri, 1 Aug 2003 03:08:01 +0000 (20:08 -0700)
commited8ff7a4f416e54ac69a0e4e46439b325670a729
tree0e6ea85b3b8c9140c4e86508633eb5d54ec6fda5
parent9f49f9f3fb6398bec2bcc11f2a4033a7add3c7b2
[PATCH] use mark_page_accessed() in the write() path

We're currently just setting the referenced bit when modifying pagecache in
write().

Consequently overwritten (and redirtied) pages are remaining on the inactive
list.  The net result is that a lot of dirty pages are reaching the tail of
the LRU in page reclaim and are getting written via the writepage() in there.

But a core design objective is to minimise the amount of IO via that path,
and to maximise the amount of IO via balance_dirty_pages().  Because the
latter has better IO patterns.

This may explain the bad IO patterns which Gerrit talked about at KS.
mm/filemap.c