Messages in this thread | | | Date | Tue, 9 Jun 2009 20:20:29 +0900 (JST) | Subject | Re: [BUGFIX][PATCH] fix wrong lru rotate back at lumpty reclaim | From | "KAMEZAWA Hiroyuki" <> |
| |
Minchan Kim wrote: > On Tue, Jun 9, 2009 at 6:15 PM, KAMEZAWA > Hiroyuki<kamezawa.hiroyu@jp.fujitsu.com> wrote: >> >> From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> >> >> In lumpty reclaim, "cursor_page" is found just by pfn. Then, we don't >> know >> from which LRU "cursor" page came from. Then, putback it to "src" list >> is BUG. >> Just leave it as it is. >> (And I think rotate here is overkilling even if "src" is correct.) >> >> Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> >> --- >> mm/vmscan.c | 5 ++--- >> 1 file changed, 2 insertions(+), 3 deletions(-) >> >> Index: mmotm-2.6.30-Jun4/mm/vmscan.c >> =================================================================== >> --- mmotm-2.6.30-Jun4.orig/mm/vmscan.c >> +++ mmotm-2.6.30-Jun4/mm/vmscan.c >> @@ -940,10 +940,9 @@ static unsigned long isolate_lru_pages(u >> nr_taken++; >> scan++; >> break; >> - >>case -EBUSY: > > We can remove case -EBUSY itself, too. > It is meaningless. > Sure, will post v2 and remove EBUSY case. (I'm sorry my webmail system converts a space to a multibyte char... then I cut some.)
>> - /* else it is being freed >> elsewhere */ >> - >> list_move(&cursor_page->lru, src); >> + /* Do nothing because we >> don't know where >> + cusrsor_page comes >> from */ >>default: >> break; /* ! on LRU or >> wrong list */ > > Hmm.. what meaning of this break ? > We are in switch case. > This "break" can't go out of loop. yes.
> But comment said "abort this block scan". > Where ? the comment says the cursor_page is not on lru (PG_lru is unset) > If I understand it properly , don't we add goto phrase ? > No.
Just try next page on list.
Thank you for review, I'll post updated one tomorrow. -Kame
| |