Re: [patch 03/15] cgroup: dont call vfs_mkdir

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> > From: Miklos Szeredi <mszeredi@xxxxxxx>
> > 
> > cgroup_clone() calls vfs_mkdir() to create a directory in the cgroup
> > filesystem.  Replace with explicit call to cgroup_mkdir() and
> > fsnotify_mkdir().
> > 
> > This is equivalent, except that the following functions are not called
> > before cgroup_mkdir():
> > 
> >  - may_create()
> >  - security_inode_mkdir()
> >  - DQUOT_INIT()
> > 
> > Permission to clone the cgroup has already been checked in
> > copy_namespaces() (requiring CAP_SYS_ADMIN).  Additional file system
> > related capability checks are inappropriate and confusing.
> > 
> > The quota check is unnecessary, as quotas don't make any sense for
> > this filesystem.
> 
> Looks correct but I don't think it's a good idea.  Spreading more logic
> into filesystems without a good reason is rarely a good idea.

(Thanks for the review, Christoph)

Agreed completely, but vfs_* aren't for filesystems to call, rather
for entities calling _into_ filesystems from the outside.  This is
actually a very rare thing, so adding some extra logic for the sake of
cleanliness should be OK.

Now it can be argued, that cgroup_clone() is calling into the
filesystem from the outside.  But it's not really doing that, rather
it's making an internal modification to a specific filesystem,
triggered by some external action.

Miklos
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux