Hi all, sorry for bothering you, but I've asked this question in the usenet without any answers. So, that's my problem: If I request a page by calling get_free_page, the kernel sets the usage count for this page to 1. So far so good, but if I request more pages by calling __get_free_pages(GFP...,order) it sets only the usage count of the first returned page. Some sample code: #include #include #include int init_module(void) { int order; unsigned long mem; for (order = 3; order >= 0; --order) { printk(KERN_INFO "checking for order %d\n",order); mem = __get_free_pages(GFP_ATOMIC, order); if (!mem) printk(KERN_INFO "got no mem\n"); else { int i; for (i=0;i < 1<