Re: [PATCH] vmscan: don't use return value trick when oom_killer_disabled

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

 



2010/9/3 Rafael J. Wysocki <rjw@xxxxxxx>:
> On Thursday, September 02, 2010, Minchan Kim wrote:
>> M. Vefa Bicakci reported 2.6.35 kernel hang up when hibernation on his
>> 32bit 3GB mem machine. (https://bugzilla.kernel.org/show_bug.cgi?id=16771)
>> Also he was bisected first bad commit is below
>>
>>   commit bb21c7ce18eff8e6e7877ca1d06c6db719376e3c
>>   Author: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx>
>>   Date:   Fri Jun 4 14:15:05 2010 -0700
>>
>>      vmscan: fix do_try_to_free_pages() return value when priority==0 reclaim failure
>>
>> At first impression, this seemed very strange because the above commit only
>> chenged function return value and hibernate_preallocate_memory() ignore
>> return value of shrink_all_memory(). But it's related.
>>
>> Now, page allocation from hibernation code may enter infinite loop if
>> the system has highmem.
>>
>> The reasons are two. 1) hibernate_preallocate_memory() call
>> alloc_pages() wrong order
>
> This isn't the case, as explained here: http://lkml.org/lkml/2010/9/1/316 .
>
> The ordering of calls is correct, but it's better to check if there are any
> non-highmem pages to allocate from before the last call (for performance
> reasons, but that also would eliminate the failure in question).

I actually didn't look into the 1) problem detail.
Just copy and paste from KOSAKI's description.
As I look the thread, KOSAKI seem to admit the description is wrong.
I will resend the patch removing phrase about 1) problem if KOSAKI don't mind.
KOSAKI. Is it okay?

Thanks.


-- 
Kind regards,
Minchan Kim

--
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



[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]