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

From: Andi Kleen
Date: Tue Apr 07 2009 - 16:22:51 EST


> 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@xxxxxxxxxxxxxxx -- Speaking for myself only.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/