Re: [PATCH] [23/31] HWPOISON: add memory cgroup filter

From: KAMEZAWA Hiroyuki
Date: Wed Dec 09 2009 - 00:09:47 EST


On Wed, 09 Dec 2009 13:04:06 +0800
Li Zefan <lizf@xxxxxxxxxxxxxx> 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.

Regards,
-Kame

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/