Messages in this thread | | | Subject | Re: [PATCH][RFC] dirty balancing for cgroups | Date | Wed, 13 Aug 2008 16:15:05 +0900 (JST) | From | (YAMAMOTO Takashi) |
| |
hi,
> > @@ -485,7 +502,10 @@ unsigned long mem_cgroup_isolate_pages(unsigned long nr_to_scan, > > if (PageUnevictable(page) || > > (PageActive(page) && !active) || > > (!PageActive(page) && active)) { > > - __mem_cgroup_move_lists(pc, page_lru(page)); > > + if (try_lock_page_cgroup(page)) { > > + __mem_cgroup_move_lists(pc, page_lru(page)); > > + unlock_page_cgroup(page); > > + } > > continue; > > } > > This chunk seems unrelated and lost....
it's necessary to protect from mem_cgroup_{set,clear}_dirty which modify pc->flags without holding mz->lru_lock.
> I presonally dislike the != 0, == 0 comparisons for bitmask operations, > they seem to make it harder to read somewhow. I prefer to write !(flags > & mask) and (flags & mask), instead. > > I guess taste differs,...
yes, it seems different. :)
YAMAMOTO Takashi
| |