[systemd-devel] [patch] cgroup fs: avoid switching ->d_op on live dentry
Al Viro
viro at ZenIV.linux.org.uk
Tue Dec 21 10:25:51 PST 2010
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:
> > Against linux-next (next-20101210) it should look like:
>
> Yep, I'll rebase my tree with the fix shortly.
>
> >
> > $ 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...
More information about the systemd-devel
mailing list