Re: [patch -mm 8/9 v2] oom: avoid oom killer for lowmem allocations

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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>

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]