Re: PATCH 2.3.26: kmalloc GFP_ZERO

Adrian Cox (apc@agelectronics.co.uk)
Tue, 09 Nov 1999 16:23:18 +0000


"David S. Miller" wrote:
[snip]
> In fact for something like "lat_proc fork" it is the most suboptimal
> thing to do, because each iteration will tend to use entirely
> different anonymous pages during cow faults, instead of reusing pages
> already in the L2 cache of the cpu which is what happens in the
> current kernels.

I'm looking into this on PowerPC. Cort Dougan developed some code which
makes a cache of pre-zeroed pages, but very little in the kernel
actually uses them.

Using them for cow faults might be a big win on PPC, by saving us from
an expensive flush_page_to_ram(). The flush_page_to_ram() means that the
PowerPC can never find the same anonymous page already in the L2 cache.

(The PowerPC only really needs to flush executable pages, as the data
cache is coherent, but the instruction cache isn't. The kernel does not
make this distinction. Pre-zeroed pages have the advantage of being
already flushed. Some day I'll count how many unnecessary flushes happen
and decide if this is important.)

- Adrian Cox, AG Electronics

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/