[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4FEE98EE.1050409@huawei.com>
Date: Sat, 30 Jun 2012 14:13:02 +0800
From: Li Zefan <lizefan@...wei.com>
To: "tj@...nel.org" <tj@...nel.org>
CC: shyju pv <shyju.pv@...wei.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"cgroups@...r.kernel.org" <cgroups@...r.kernel.org>,
Sanil kumar <sanil.kumar@...wei.com>,
Masanari Iida <standby24x7@...il.com>
Subject: Re: 3.5-rc3: BUG: Dentry still in use (1) [unmount of cgroup cgroup]
On 2012/6/30 0:58, tj@...nel.org wrote:
> Hey,
>
> On Fri, Jun 29, 2012 at 10:20:11AM +0800, Li Zefan wrote:
>>> Can you please elaborate a bit? I'm not really following? Where does
>>> the last root->d_count-- come from?
>>
>>
>> From my limited knowledge about vfs internal, seems the parent's refcnt won't go down
>> to 0 before its children. When mkdir, the parent's refcnt will be incremented, and
>> after rmdir, dput(subdir) will drop subdir's refcnt and then drop parent's.
>>
>> So when dropping the subdir's refcnt and leading the superblock to be killed, the root's
>> dentry is still > 0.
>
> Heh, yeah, I thought you found who was holding out on the refcnt. :)
>
dput will drop both the subdir and the root's dentry refcnt, but kill_sb will be called
inbetween.
So it's bad to have dentry refcnts dangling after umount. I've made a patch so css will
pin cgroup instead of cgroup dentry.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists