Messages in this thread | | | Date | Mon, 13 Apr 2009 21:18:42 +0800 | From | Wu Fengguang <> | Subject | Re: [PATCH] [0/16] POISON: Intro |
| |
On Tue, Apr 07, 2009 at 10:47:09PM -0700, Andrew Morton wrote: > On Tue, 7 Apr 2009 17:09:56 +0200 (CEST) Andi Kleen <andi@firstfloor.org> wrote: > > > Upcoming Intel CPUs have support for recovering from some memory errors. This > > requires the OS to declare a page "poisoned", kill the processes associated > > with it and avoid using it in the future. This patchkit implements > > the necessary infrastructure in the VM. > > Seems that this feature is crying out for a testing framework (perhaps > it already has one?). A simplistic approach would be > > echo some-pfn > /proc/bad-pfn-goes-here
How about reusing the /proc/kpageflags interface? i.e. make it writable.
It may sound crazy and way too _hacky_, but it is possible to attach actions to the state transition of some page flags ;)
PG_poison 0 => 1: call memory_failure()
PG_active 1 => 0: move page into inactive lru PG_unevictable 1 => 0: move page out of unevictable lru PG_swapcache 1 => 0: remove page from swap cache PG_lru 1 => 0: reclaim page
Thanks, Fengguang
> A slightly more sophisticated version might do the deed from within a > timer interrupt, just to get a bit more coverage. > > -- > To unsubscribe, send a message with 'unsubscribe linux-mm' in > the body to majordomo@kvack.org. For more info on Linux MM, > see: http://www.linux-mm.org/ . > Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
| |