Re: [PATCH] [8/16] POISON: Add various poison checks in mm/memory.c

Andi Kleen
2009-04-07T20:22:47Z

> I think we missed each other here. I wasn't talking about _why_ you
> take that reference -- that is clear. But I see these two
> possibilities:
>
> a) memory_failure() is called on a page on the free list, the
> get_page() will trigger a bug because the refcount is 0

Ah got it now. Sorry for misreading you. That's indeed a problem.
Fixing.

free pages was something my injector based test suite didn't cover :/

> b) if that is not possible, the above check is not needed

There was at least one case where the process could free it anyways.
I think. Or maybe that was something I fixed in a different way.
It's possible this check is not needed, but it's probably safer
to keep it (and it's all super slow path)

-Andi

--
ak@linux.intel.com -- Speaking for myself only.