On Wed, 13 Aug 2008 16:15:05 +0900 (JST) yamamoto@xxxxxxxxxxxxx (YAMAMOTO Takashi) wrote: > 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'm now writing a patch to make page_cgroup->flags to be atomic_ops. Don't worry about this. (With remove-page-lock-cgroup patch, atomic_ops patch's performace is quite well.) Thanks, -Kame _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers