Re: [patch][rfc] remove ZERO_PAGE?

Nick Piggin
2007-07-30T04:35:28Z

On Sun, Jul 29, 2007 at 08:56:54PM -0700, Linus Torvalds wrote:
>
>
> On Sun, 29 Jul 2007, Linus Torvalds wrote:
> >
> > I'd love to hear "here's a real-life load, and yes, the ZERO_PAGE logic
> > really does hurt more than it helps, it's time to remove it". At that
> > point I'll happily apply the patch.
>
> Btw, in the absense of that, I'd at least like to hear an acknowledgement
> that the complexity isn't worth it, and that what used to work fine was
> broken because the reference counting overhead gets us on large-scale
> machines.
>
> IOW, I certainly like removing lines of code. In that sense I _love_ that
> patch. I really just react negatively because I really think you first set
> ZERO_PAGE up to fail.
>
> So even if you cannot find a load where this all matters, at least point
> to commit b5810039a54e5babf428e9a1e89fc1940fabff11 (or exactly whichever
> one it was that started ref-counting ZERO_PAGE) and blame *that* one,
> rather than blaming ZERO_PAGE for the problem.

OK, as a patch, the changelog could be improved. But I state that
complexity isn't worth it as "ZERO_PAGE appears to be a false optimisation".

> It has served us well for fifteen years, we shouldn't blame it for
> problems that came from elsewhere.

Can it still serve us well, though? This is what I would really like to talk
about, and I guess would decide whether we again special case the refcounting
or remove it completely. I'm happy to do either (although I do *hope* that it
can be removed, for complexity's sake).