Re: Since no one else has stepped forward: 'ZeroD' patch

Andrew E. Mileski (aem@nic.ott.hookup.net)
Tue, 7 Jan 1997 17:08:07 -0500 (EST)


> the majority of __get_free_page() requests do not want zeroing. (one of
> the biggest consumers is kmalloc for example).

I don't think this is the issue - whether a page is zeroed or not
shouldn't matter. What is important though, is knowing if the page has
been zeroed, and hence I understand you using the pool for tracking.

I'd suggest that the non-zeroed page requests grab a zeroed page
as a last resort. This would make it possible to enlarge the zeroed
page pool considerably.

Ideally, perhaps all page requests should go through a single mechanism
that maintains a circular list of all available pages - zeroed pages
at one end, non-zeroed at the other (kinda like the inode list).
The allocator would need to traverse the list in the opposite
direction as 'zerod'.

Surely half the battle is already take care of, as free pages must
be recorded somewhere - my knowledge of Linux MM is near zero
(pun intended).

--
Andrew E. Mileski   mailto:aem@ott.hookup.net
Linux Plug-and-Play Kernel Project http://www.redhat.com/linux-info/pnp/
XFree86 Matrox Team http://www.bf.rmit.edu.au/~ajv/xf86-matrox.html