Messages in this thread | | | Date | Thu, 4 Jun 2009 07:19:15 +0200 | From | Andi Kleen <> | Subject | Re: [PATCH] [6/16] HWPOISON: Add various poison checks in mm/memory.c |
| |
On Thu, Jun 04, 2009 at 12:26:03PM +0800, Wu Fengguang wrote: > On Thu, Jun 04, 2009 at 02:46:38AM +0800, Andi Kleen wrote: > > > > Bail out early when hardware poisoned pages are found in page fault handling. > > I suspect this patch is also not absolutely necessary: the poisoned > page will normally have been isolated already.
It's needed to prevent new pages comming in when there is a parallel fault while the memory failure handling is in process. Otherwise the pages could get remapped in that small window.
> > --- linux.orig/mm/memory.c 2009-06-03 19:36:23.000000000 +0200 > > +++ linux/mm/memory.c 2009-06-03 19:36:23.000000000 +0200 > > @@ -2797,6 +2797,9 @@ > > if (unlikely(ret & (VM_FAULT_ERROR | VM_FAULT_NOPAGE))) > > return ret; > > > > + if (unlikely(PageHWPoison(vmf.page))) > > + return VM_FAULT_HWPOISON; > > + > > Direct return with locked page could lockup someone later. > Either drop this patch or fix it with this check?
Fair point. Fixed.
Thanks, -Andi
-- ak@linux.intel.com -- Speaking for myself only.
| |