Index: linux-2.6.11/drivers/block/pktcdvd.c =================================================================== --- linux-2.6.11.orig/drivers/block/pktcdvd.c 2005-03-30 09:54:54.000000000 -0800 +++ linux-2.6.11/drivers/block/pktcdvd.c 2005-03-30 15:52:05.000000000 -0800 @@ -135,7 +135,7 @@ static struct packet_data *pkt_alloc_pac goto no_bio; for (i = 0; i < PAGES_PER_PACKET; i++) { - pkt->pages[i] = alloc_page(GFP_KERNEL|__GFP_ZERO); + pkt->pages[i] = alloc_page(GFP_KERNEL|__GFP_ZERO|__GFP_COLD); if (!pkt->pages[i]) goto no_page; } Index: linux-2.6.11/kernel/profile.c =================================================================== --- linux-2.6.11.orig/kernel/profile.c 2005-03-01 23:38:26.000000000 -0800 +++ linux-2.6.11/kernel/profile.c 2005-03-30 15:54:15.000000000 -0800 @@ -326,13 +326,13 @@ static int __devinit profile_cpu_callbac node = cpu_to_node(cpu); per_cpu(cpu_profile_flip, cpu) = 0; if (!per_cpu(cpu_profile_hits, cpu)[1]) { - page = alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO, 0); + page = alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO | __GFP_COLD, 0); if (!page) return NOTIFY_BAD; per_cpu(cpu_profile_hits, cpu)[1] = page_address(page); } if (!per_cpu(cpu_profile_hits, cpu)[0]) { - page = alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO, 0); + page = alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO | __GFP_COLD, 0); if (!page) goto out_free; per_cpu(cpu_profile_hits, cpu)[0] = page_address(page); @@ -508,12 +508,12 @@ static int __init create_hash_tables(voi int node = cpu_to_node(cpu); struct page *page; - page = alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO, 0); + page = alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO | __GFP_COLD, 0); if (!page) goto out_cleanup; per_cpu(cpu_profile_hits, cpu)[1] = (struct profile_hit *)page_address(page); - page = alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO, 0); + page = alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO | __GFP_COLD, 0); if (!page) goto out_cleanup; per_cpu(cpu_profile_hits, cpu)[0] Index: linux-2.6.11/mm/shmem.c =================================================================== --- linux-2.6.11.orig/mm/shmem.c 2005-03-30 09:54:59.000000000 -0800 +++ linux-2.6.11/mm/shmem.c 2005-03-30 15:56:21.000000000 -0800 @@ -369,7 +369,7 @@ static swp_entry_t *shmem_swp_alloc(stru } spin_unlock(&info->lock); - page = shmem_dir_alloc(mapping_gfp_mask(inode->i_mapping) | __GFP_ZERO); + page = shmem_dir_alloc(mapping_gfp_mask(inode->i_mapping) | __GFP_ZERO | __GFP_COLD); if (page) { page->nr_swapped = 0; } @@ -909,7 +909,7 @@ shmem_alloc_page(unsigned long gfp, stru pvma.vm_policy = mpol_shared_policy_lookup(&info->policy, idx); pvma.vm_pgoff = idx; pvma.vm_end = PAGE_SIZE; - page = alloc_page_vma(gfp | __GFP_ZERO, &pvma, 0); + page = alloc_page_vma(gfp | __GFP_ZERO | __GFP_COLD, &pvma, 0); mpol_free(pvma.vm_policy); return page; } @@ -925,7 +925,7 @@ static inline struct page * shmem_alloc_page(unsigned int __nocast gfp,struct shmem_inode_info *info, unsigned long idx) { - return alloc_page(gfp | __GFP_ZERO); + return alloc_page(gfp | __GFP_ZERO | __GFP_COLD); } #endif