Messages in this thread |  | | | Date | Thu, 4 Jun 2009 07:27:38 +0200 | | From | Andi Kleen <> | | Subject | Re: [PATCH] [10/16] HWPOISON: Handle poisoned pages in set_page_dirty() |
| |
On Thu, Jun 04, 2009 at 08:36:21AM +0800, Wu Fengguang wrote: > On Thu, Jun 04, 2009 at 02:46:43AM +0800, Andi Kleen wrote: > > > > Bail out early in set_page_dirty for poisoned pages. We don't want any > > of the dirty accounting done or file system write back started, because > > the page will be just thrown away. > > I'm afraid this patch is not necessary and could be harmful. > > It is not necessary because a poisoned page will normally already be > isolated from page cache, or likely cannot be isolated because it has > dirty buffers.
Hmm I think I had a case when I originally wrote the code where it was needed. But I can't clearly remember now what it was.
But you're right the page cache isolation should normally take care of it.
> It is harmful because it put the page into dirty state without queuing > it for IO by moving it to s_io. When more normal pages are dirtied > later, __set_page_dirty_nobuffers() won't move the inode into s_io, > hence delaying the writeback of good pages for arbitrary long time.
That's a good point.
I dropped the patch for now.
-Andi
-- ak@linux.intel.com -- Speaking for myself only.
|  |