Re: [PATCH -V7 08/26] vfs: Add new file and directory createpermission flags

From: J. Bruce Fields
Date: Wed Oct 19 2011 - 12:43:16 EST


On Tue, Oct 18, 2011 at 09:02:43PM +0530, Aneesh Kumar K.V wrote:
> From: Andreas Gruenbacher <agruen@xxxxxxxxxx>
>
> Some permission models distinguish between the permission to create a
> non-directory and a directory. Pass this information down to
> inode_permission() as mask flags
...
> diff --git a/include/linux/fs.h b/include/linux/fs.h
> index f3ebf86..60361c6 100644
> --- a/include/linux/fs.h
> +++ b/include/linux/fs.h
> @@ -67,6 +67,8 @@ struct inodes_stat_t {
> #define MAY_CHDIR 0x00000040
> /* called from RCU mode, don't block */
> #define MAY_NOT_BLOCK 0x00000080
> +#define MAY_CREATE_FILE 0x00000100
> +#define MAY_CREATE_DIR 0x00000200

Hm, are the flags in fs/nfsd/vfs.h going to need fixing up?

Looking at the nfsd code.... No, I guess it's OK, nfsd does

err = inode_permission(inode, acc & (MAY_READ|MAY_WRITE|MAY_EXEC));

So we can wait to fix up any collisions until we need to pass these
extra bits.

--b.
--
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/