Hello, since neither Understanding the Linux VMM nor the kernelnewbies ML could help me, I am takin the problem here: I have a IBM Thinkpad 600X and use the suspend to disk feature (called hibernation) when carring the notebook around, but writing ~600MB to the disk takes a while. After finding out, that the bios does only write used pages to disk, I wrote a small userspace programm called mhog (see attached mhog.c), that allocates roughly as many pages as used by the page cache. mhog retrieves the number of pages to allocate from /proc/meminfo. This works find, but does take a while, so I wrote a kernel module (see attached nocache.c) to do the same. During module initilization I simply loop around a get_free_page(GFP_NIO) to get all pages that can be discarded, and upon the first failure I free all reserved pages again and return -ENOMEM. The kernel module does not speed up hibernation (pages are freed just fine), but something must be diffrent between userspace and kernelspace page allocation. I suspect the TLB, but did not find a hint on which of the many tlb flushing calls to use. So what am I missing? thanks in advance Stefan -- Stefan Volkel stefan.voelkel@millenux.com Millenux GmbH mobile: +49.170.79177.17 Lilienthalstrasse 2 phone: +49.711.88770.300 70825 Stuttgart-Korntal fax: +49.711.88770.349 -= linux without limits -=- http://linux.zSeries.org/ =-