On Tue, 16 Feb 2010, KOSAKI Motohiro wrote: > No current user? I don't think so. > > int bio_integrity_prep(struct bio *bio) > { > (snip) > buf = kmalloc(len, GFP_NOIO | __GFP_NOFAIL | q->bounce_gfp); > > and > > void blk_queue_bounce_limit(struct request_queue *q, u64 dma_mask) > { > (snip) > if (dma) { > init_emergency_isa_pool(); > q->bounce_gfp = GFP_NOIO | GFP_DMA; > q->limits.bounce_pfn = b_pfn; > } > > > > I don't like rumor based discussion, I like fact based one. > The GFP_NOIO will prevent the oom killer from being called, it requires __GFP_FS. I can change this to invoke the should_alloc_retry() logic by testing for !(gfp_mask & __GFP_NOFAIL), but there's nothing else the page allocator can currently do to increase its probability of allocating pages; the memory compaction patchset might be particularly helpful for these types of scenarios. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>