Re: [patch 5/5]thp: split huge page if head page is isolated

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

 



On Thu, 2011-11-10 at 10:23 +0800, Minchan Kim wrote:
> So long contents.
> Let's remove it.
> 
> On Thu, Nov 10, 2011 at 10:07:10AM +0800, Shaohua Li wrote:
> 
> <snip>
> 
> > > > Coudn't we make both sides good?
> > > > 
> > > > Here is my quick patch.
> > > > How about this?
> > > > It doesn't split THPs in page_list but still reclaims non-THPs so
> > > > I think it doesn't changed old behavior a lot.
> > > I like this idea, will do some test soon.
> > hmm, this doesn't work as expected. The putback_lru_page() messes lru.
> > This isn't a problem if the page will be written since
> > rotate_reclaimable_page() will fix the order. I got worse data than my
> > v2 patch, eg, more thp_fallbacks, mess lru order, more pages are
> > scanned. We could add something like putback_lru_page_tail, but I'm not
> 
> Hmm, It's not LRU mess problem. but it's just guessing and you might be right
> because you have a workload and can test it.
> 
> My guessing is that cull_mlocked reset synchronus page reclaim.
> Could you test this patch, again?
no, I traced it, and lru mess. putback_lru_page() adds the page to lru
head instead of tail.

> And, if the problem cause by LRU mess, I think it is valuable with adding putback_lru_page_tail
> because thp added lru_add_page_tail, too.
I want to put all remaining pages back to lru tail if a huge page is
split, because enough pages are reclaimed. So this needs adding
something like putback_lru_pages_tail(), not complicated, but a lot of
code. And if there are parallel reclaimer, we still have lru mess. My
test already shows it. Still worthy?

Thanks,
Shaohua

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.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]