Re: [rfc] no ZERO_PAGE?

Hugh Dickins
2007-04-04T16:10:37Z

On Wed, 4 Apr 2007, Andrea Arcangeli wrote:
> On Wed, Apr 04, 2007 at 08:35:30AM -0700, Linus Torvalds wrote:
> > Anyway, I'm not against this, but I can see somebody actually *wanting*
> > the ZERO page in some cases. I've used the fact for TLB testing, for
> > example, by just doing a big malloc(), and knowing that the kernel will
> > re-use the ZERO_PAGE so that I don't get any cache effects (well, at least
> > not any *physical* cache effects. Virtually indexed cached will still show
> > effects of it, of course, but I haven't cared).
>
> Ok, those cases wanting the same zero page, could be fairly easily
> converted to an mmap over /dev/zero

No, MAP_SHARED mmap of /dev/zero uses shmem, which allocates distinct
pages for this (because in general tmpfs doesn't know if a readonly
file will be written to later on), and MAP_PRIVATE mmap of /dev/zero
uses the zeromap stuff which we were hoping to eliminate too
(though not in Nick's initial patch).

Looks like a job for /dev/same_page_over_and_over_again.

> (without having to run 4k large mmap syscalls or nonlinear).

You scared me, I made no sense of that at first: ah yes,
repeatedly mmap'ing the same page can be done those ways.

Hugh