Re: [patch] cgroup fs: avoid switching ->d_op on live dentry
From: Al Viro <viro@ZenIV.linux.org.uk>
Date: 2010-12-21 18:25:56
Also in:
linux-fsdevel
From: Al Viro <viro@ZenIV.linux.org.uk>
Date: 2010-12-21 18:25:56
Also in:
linux-fsdevel
On Tue, Dec 21, 2010 at 07:55:38PM +1100, Nick Piggin wrote:
On Tue, Dec 21, 2010 at 09:44:40AM +0100, Sedat Dilek wrote:quoted
Against linux-next (next-20101210) it should look like:Yep, I'll rebase my tree with the fix shortly.quoted
$ diff -Naur cgroup-fix/cgroup-fs-avoid-switching-d_op-on-live-dentry.patch cgroup-fix/cgroup-fs-avoid-switching-d_op-on-live-dentry-v2.patch--- cgroup-fix/cgroup-fs-avoid-switching-d_op-on-live-dentry.patch 2010-12-21 09:31:38.649601964 +0100 +++ cgroup-fix/cgroup-fs-avoid-switching-d_op-on-live-dentry-v2.patch 2010-12-21 09:40:21.151033232 +0100@@ -83,7 +83,7 @@ inode->i_size = 0; inode->i_fop = &cgroup_file_operations; } -- dentry->d_op = &cgroup_dops; +- d_set_d_op(dentry, &cgroup_dops); d_instantiate(dentry, inode); dget(dentry); /* Extra count - pin the dentry in core */ return 0;
How about not doing that d_set_d_op() at all? See #d_op in vfs-2.6.git; just set ->s_d_op to that once and be done with that. No need to reassign it on a live dentry...