Re: pud_bad vs pud_bad

From: Hugh Dickins
Date: Thu Feb 05 2009 - 16:10:08 EST


On Thu, 5 Feb 2009, wli@xxxxxxxxxxxxxxxxx wrote:
> On Thu, 5 Feb 2009, wli@xxxxxxxxxxxxxxxxx wrote:
> >> The RW bit needs to be allowed to become read-only for hugetlb COW.
> >> Changing it over to the 32-bit method is a bugfix by that token.
>
> On Thu, Feb 05, 2009 at 08:14:42PM +0000, Hugh Dickins wrote:
> > If there's a bugfix to be made there, of course I'm in favour:
> > but how come we've never seen such a bug? hugetlb COW has been
> > around for a year or two by now, hasn't it?
>
> We can tell from the code that a write-protected pte mapping of a
> 1GB hugetlb page would be flagged as bad. It must not be called on
> ptes mapping hugetlb pages if they're not getting flagged.

Ah, I see what you mean now. Yes, the hugetlb case goes its own way
and doesn't normally hit those p??_bad() macro/inlines; but we got
caught out in follow_page() a year ago, a bad looked huge or a
huge looked bad, but I forget the details at this instant.

Hugh
--
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/