Messages in this thread | | | Date | Tue, 2 Jun 2009 17:17:29 +0200 | From | Nick Piggin <> | Subject | Re: [PATCH] [13/16] HWPOISON: The high level memory error handler in the VM v3 |
| |
On Tue, Jun 02, 2009 at 09:46:59PM +0800, Wu Fengguang wrote: > On Tue, Jun 02, 2009 at 08:57:13PM +0800, Nick Piggin wrote: > > Obviously I don't mean just use that single call for the entire > > handler. You can set the EIO bit or whatever you like. The > > "error handling" you have there also seems strange. You could > > retain it, but the page is assured to be removed from pagecache. > > You mean this? > > if (page_has_private(p) && !try_to_release_page(p, GFP_NOIO)) > return FAILED; > > If page->private cannot be removed, that means some fs may start IO on it, so > we return FAILED.
Hmm, if you're handling buffercache here then possibly yes. But if you throw out dirty buffer cache then you're probably corrupting your filesystem just as bad (or even worse than a couple of bits flipped). Just seems ad-hoc.
I guess it is best-effort in most places though, and this doesn't take much effort. But due to being best effort means that it is hard for someone who knows exactly what all the code does, to know what your intentions or intended semantics are in places like this. So short comments would help,
| |