Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Jan Kara <jack <at> suse.cz>
Subject: [RFC] [PATCH 0/3] Writeback livelock avoidance using page tags (v2)
Newsgroups: gmane.linux.kernel
Date: Thursday 11th February 2010 23:06:21 UTC (over 6 years ago)
Hi,

  the following two patches (the third one is just a debugging aid, not to
be
merged) implement avoidance of livelock of write_cache_pages.  The idea is
simple: We tag patches that should be written in the beginning of
write_cache_pages and then write only tagged pages (see the patch for
details).
Since last version, I've made tagging function faster as Andrew suggested
and
also gave the patch more testing.
  The thing I've aimed at with this patch is a simplification of current
writeback code. Basically, with this patch I think we can just rip out all
the
range_cyclic and nr_to_write (or other "fairness logic"). The rationalle is
following:
  What we want to achieve with fairness logic is that when a page is
dirtied, it gets written to disk within some reasonable time (like 30s or
so). We track dirty time on per-inode basis only because keeping it
per-page is simply too expensive. So in this setting fairness between
inodes really does not make any sence - why should be a page in a file
penalized and written later only because there are lots of other dirty
pages in the file? It is enough to make sure that we don't write one file
indefinitely when there are new dirty pages continuously created - and my
patch achieves that.
  Comments and suggestions for improvement are welcome!

								Honza
 
CD: 3ms