Re: [PATCH v3]mm/oom-kill: direct hardware access processes should get bonus

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

 



On Tue, 04 Jan 2011 16:56:47 +0800
"Figo.zhang" <zhangtianfei@xxxxxxxxxxxxxxxx> wrote:

> On 01/04/2011 04:28 PM, KAMEZAWA Hiroyuki wrote:
> > On Tue, 04 Jan 2011 15:51:44 +0800
> > "Figo.zhang"<zhangtianfei@xxxxxxxxxxxxxxxx>  wrote:
> >
> >>
> >> i had send the patch to protect the hardware access processes for
> >> oom-killer before, but rientjes have not agree with me.
> >>
> >> but today i catch log from my desktop. oom-killer have kill my "minicom"
> >> and "Xorg". so i think it should add protection about it.
> >>
> >
> > Off topic.
> >
> > In this log, I found
> >
> >>> Jan  4 15:22:55 figo-desktop kernel: Free swap  = -1636kB
> >>> Jan  4 15:22:55 figo-desktop kernel: Total swap = 0kB
> >>> Jan  4 15:22:55 figo-desktop kernel: 515070 pages RAM
> >
> > ... This means total_swap_pages = 0 while pages are read-in at swapoff.
> >
> > Let's see 'points' for oom
> > ==
> > points = (get_mm_rss(p->mm) + get_mm_counter(p->mm, MM_SWAPENTS)) * 1000 /
> >                          totalpages;
> > ==
> >
> > Here, totalpages = total_ram + total_swap but totalswap is 0 here.
> >
> > So, points can be>  1000, easily.
> > (This seems not to be related to the Xorg's death itself)
> 
> total_swap is 0, so
> totalpages = total_ram,
> get_mm_counter(p->mm, MM_SWAPENTS) = 0,
> 
> so
> points = (get_mm_rss(p->mm)) * 1000 / totalpages;
> 
> so points canot larger than 1000.

mm_counter's swap count is reduced only when swapents are removed from
page table. But total_swap is reduced to be 0 before try_to_unuse().


Thanks,
-Kame



--
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/ .
Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/
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]