Messages in this thread | | | Date | Wed, 9 Dec 2009 11:03:33 +0530 | From | Balbir Singh <> | Subject | Re: [PATCH] [23/31] HWPOISON: add memory cgroup filter |
| |
* KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> [2009-12-09 14:06:20]:
> On Wed, 09 Dec 2009 13:04:06 +0800 > Li Zefan <lizf@cn.fujitsu.com> wrote: > > > > +#ifdef CONFIG_CGROUP_MEM_RES_CTLR_SWAP > > > +u64 hwpoison_filter_memcg; > > > +EXPORT_SYMBOL_GPL(hwpoison_filter_memcg); > > > +static int hwpoison_filter_task(struct page *p) > > > +{ > > > + struct mem_cgroup *mem; > > > + struct cgroup_subsys_state *css; > > > + unsigned long ino; > > > + > > > + if (!hwpoison_filter_memcg) > > > + return 0; > > > + > > > + mem = try_get_mem_cgroup_from_page(p); > > > + if (!mem) > > > + return -EINVAL; > > > + > > > + css = mem_cgroup_css(mem); > > > + ino = css->cgroup->dentry->d_inode->i_ino; > > > > I have a question, can try_get_mem_cgroup_from_page() return > > root_mem_cgroup? > > > yes. > > > if it can, then css->cgroup->dentry is NULL, if memcg is > > not mounted and there is no subdir in memcg. Because the root > > cgroup of an inactive subsystem has no dentry. > > > > Nice catch. It sounds possible. That should be handled. > >
Yes, agreed, good catch!
-- Balbir
| |