switch ->create() to umode_t
authorAl Viro <viro@zeniv.linux.org.uk>
Tue, 26 Jul 2011 05:42:34 +0000 (01:42 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Wed, 4 Jan 2012 03:54:53 +0000 (22:54 -0500)
vfs_create() ignores everything outside of 16bit subset of its
mode argument; switching it to umode_t is obviously equivalent
and it's the only caller of the method

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
54 files changed:
Documentation/filesystems/Locking
Documentation/filesystems/vfs.txt
drivers/staging/pohmelfs/dir.c
fs/9p/vfs_inode.c
fs/9p/vfs_inode_dotl.c
fs/affs/affs.h
fs/affs/namei.c
fs/afs/dir.c
fs/bad_inode.c
fs/bfs/dir.c
fs/btrfs/inode.c
fs/ceph/dir.c
fs/cifs/cifsfs.h
fs/cifs/dir.c
fs/coda/dir.c
fs/ecryptfs/inode.c
fs/exofs/namei.c
fs/ext2/namei.c
fs/ext3/namei.c
fs/ext4/namei.c
fs/fat/namei_msdos.c
fs/fat/namei_vfat.c
fs/fuse/dir.c
fs/gfs2/inode.c
fs/hfs/dir.c
fs/hfsplus/dir.c
fs/hostfs/hostfs_kern.c
fs/hpfs/namei.c
fs/hugetlbfs/inode.c
fs/jffs2/dir.c
fs/jfs/namei.c
fs/logfs/dir.c
fs/minix/namei.c
fs/namei.c
fs/ncpfs/dir.c
fs/nfs/dir.c
fs/nilfs2/namei.c
fs/ocfs2/dlmfs/dlmfs.c
fs/ocfs2/namei.c
fs/omfs/dir.c
fs/ramfs/inode.c
fs/reiserfs/namei.c
fs/sysv/namei.c
fs/ubifs/dir.c
fs/udf/namei.c
fs/ufs/namei.c
fs/xfs/xfs_iops.c
include/linux/fs.h
include/linux/security.h
ipc/mqueue.c
mm/shmem.c
security/capability.c
security/security.c
security/selinux/hooks.c

index 6c7676d9c0eab028c93a51130cc6573bed3566f9..38d00c8898b93b336c86f7e0621d1b1062c774c6 100644 (file)
@@ -37,7 +37,7 @@ d_manage:     no              no              yes (ref-walk)  maybe
 
 --------------------------- inode_operations --------------------------- 
 prototypes:
-       int (*create) (struct inode *,struct dentry *,int, struct nameidata *);
+       int (*create) (struct inode *,struct dentry *,umode_t, struct nameidata *);
        struct dentry * (*lookup) (struct inode *,struct dentry *, struct nameid
 ata *);
        int (*link) (struct dentry *,struct inode *,struct dentry *);
index 0c147c79cdd89fbb111f142d764c6734158d5c3d..e7b900bc62858d929d59b6ba201a48bf65ec92a3 100644 (file)
@@ -341,7 +341,7 @@ This describes how the VFS can manipulate an inode in your
 filesystem. As of kernel 2.6.22, the following members are defined:
 
 struct inode_operations {
-       int (*create) (struct inode *,struct dentry *,int, struct nameidata *);
+       int (*create) (struct inode *,struct dentry *, umode_t, struct nameidata *);
        struct dentry * (*lookup) (struct inode *,struct dentry *, struct nameidata *);
        int (*link) (struct dentry *,struct inode *,struct dentry *);
        int (*unlink) (struct inode *,struct dentry *);
index d3ad4dde991f49666ec3704c32bd5636a474c863..c33e959b6efe7bdb5f47860ccb7e2967e484eeab 100644 (file)
@@ -661,7 +661,7 @@ static int pohmelfs_create_entry(struct inode *dir, struct dentry *dentry, u64 s
 /*
  * VFS create and mkdir callbacks.
  */
-static int pohmelfs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int pohmelfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                struct nameidata *nd)
 {
        return pohmelfs_create_entry(dir, dentry, 0, mode);
index 3e54900f3b7e645fec9a06ab438dcc712cdb303f..15cd5cef4485accbaa6bb307dca18ef212399ae9 100644 (file)
@@ -702,7 +702,7 @@ error:
  */
 
 static int
-v9fs_vfs_create(struct inode *dir, struct dentry *dentry, int mode,
+v9fs_vfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                struct nameidata *nd)
 {
        int err;
index 87e46b19b21b2a0292230a982b0b6c57c0e111f6..c4731381f0c50f99a961db62ae6b8b649d9cdbc6 100644 (file)
@@ -253,7 +253,7 @@ int v9fs_open_to_dotl_flags(int flags)
  */
 
 static int
-v9fs_vfs_create_dotl(struct inode *dir, struct dentry *dentry, int omode,
+v9fs_vfs_create_dotl(struct inode *dir, struct dentry *dentry, umode_t omode,
                struct nameidata *nd)
 {
        int err = 0;
@@ -284,7 +284,7 @@ v9fs_vfs_create_dotl(struct inode *dir, struct dentry *dentry, int omode,
 
        name = (char *) dentry->d_name.name;
        P9_DPRINTK(P9_DEBUG_VFS, "v9fs_vfs_create_dotl: name:%s flags:0x%x "
-                       "mode:0x%x\n", name, flags, omode);
+                       "mode:0x%hx\n", name, flags, omode);
 
        dfid = v9fs_fid_lookup(dentry->d_parent);
        if (IS_ERR(dfid)) {
index 8abcad7c935f888da4c379c9de17328a22fe8bbb..9cad9b4a9af77159b529987e57298a4cfc25665a 100644 (file)
@@ -156,7 +156,7 @@ extern void affs_free_bitmap(struct super_block *sb);
 extern int     affs_hash_name(struct super_block *sb, const u8 *name, unsigned int len);
 extern struct dentry *affs_lookup(struct inode *dir, struct dentry *dentry, struct nameidata *);
 extern int     affs_unlink(struct inode *dir, struct dentry *dentry);
-extern int     affs_create(struct inode *dir, struct dentry *dentry, int mode, struct nameidata *);
+extern int     affs_create(struct inode *dir, struct dentry *dentry, umode_t mode, struct nameidata *);
 extern int     affs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode);
 extern int     affs_rmdir(struct inode *dir, struct dentry *dentry);
 extern int     affs_link(struct dentry *olddentry, struct inode *dir,
index 7bb7660f805d548f769e5940d972be95bc5a8d1b..47806940aac0a9d003987cbdf4f9a0b0af6c5f47 100644 (file)
@@ -255,13 +255,13 @@ affs_unlink(struct inode *dir, struct dentry *dentry)
 }
 
 int
-affs_create(struct inode *dir, struct dentry *dentry, int mode, struct nameidata *nd)
+affs_create(struct inode *dir, struct dentry *dentry, umode_t mode, struct nameidata *nd)
 {
        struct super_block *sb = dir->i_sb;
        struct inode    *inode;
        int              error;
 
-       pr_debug("AFFS: create(%lu,\"%.*s\",0%o)\n",dir->i_ino,(int)dentry->d_name.len,
+       pr_debug("AFFS: create(%lu,\"%.*s\",0%ho)\n",dir->i_ino,(int)dentry->d_name.len,
                 dentry->d_name.name,mode);
 
        inode = affs_new_inode(dir);
index e6ea58abde3bb4ed0a3a8ebe43bbce6a47e88fa6..e22dc4b4a503e58926b89314aef6889bd26dad82 100644 (file)
@@ -28,7 +28,7 @@ static int afs_d_delete(const struct dentry *dentry);
 static void afs_d_release(struct dentry *dentry);
 static int afs_lookup_filldir(void *_cookie, const char *name, int nlen,
                                  loff_t fpos, u64 ino, unsigned dtype);
-static int afs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int afs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                      struct nameidata *nd);
 static int afs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode);
 static int afs_rmdir(struct inode *dir, struct dentry *dentry);
@@ -948,7 +948,7 @@ error:
 /*
  * create a regular file on an AFS filesystem
  */
-static int afs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int afs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                      struct nameidata *nd)
 {
        struct afs_file_status status;
@@ -962,7 +962,7 @@ static int afs_create(struct inode *dir, struct dentry *dentry, int mode,
 
        dvnode = AFS_FS_I(dir);
 
-       _enter("{%x:%u},{%s},%o,",
+       _enter("{%x:%u},{%s},%ho,",
               dvnode->fid.vid, dvnode->fid.vnode, dentry->d_name.name, mode);
 
        ret = -ENAMETOOLONG;
index 5a2738c1f31534a974b0e087110c3e374b0d52d4..8087fbc35f4323022ce33b6f126ff9ded7dcb1a8 100644 (file)
@@ -173,7 +173,7 @@ static const struct file_operations bad_file_ops =
 };
 
 static int bad_inode_create (struct inode *dir, struct dentry *dentry,
-               int mode, struct nameidata *nd)
+               umode_t mode, struct nameidata *nd)
 {
        return -EIO;
 }
index 9cc074019479e8a577651ba7e2fded8831f6d3e2..d12c7966db27faba8e118f874335bc25b24f3917 100644 (file)
@@ -84,7 +84,7 @@ const struct file_operations bfs_dir_operations = {
 
 extern void dump_imap(const char *, struct super_block *);
 
-static int bfs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int bfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                                                struct nameidata *nd)
 {
        int err;
index e30de56e6b6211286f65b45b377da7612c115713..19630aacb3206efee7619e2db2e000426d03d4ce 100644 (file)
@@ -4665,7 +4665,7 @@ out_unlock:
 }
 
 static int btrfs_create(struct inode *dir, struct dentry *dentry,
-                       int mode, struct nameidata *nd)
+                       umode_t mode, struct nameidata *nd)
 {
        struct btrfs_trans_handle *trans;
        struct btrfs_root *root = BTRFS_I(dir)->root;
index 96141ae3d8be3f301a576a7ab30fdba4cf6fde69..9848d686591c4c3073b83c5e4f764fbc0f4e31c6 100644 (file)
@@ -699,7 +699,7 @@ static int ceph_mknod(struct inode *dir, struct dentry *dentry,
        return err;
 }
 
-static int ceph_create(struct inode *dir, struct dentry *dentry, int mode,
+static int ceph_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                       struct nameidata *nd)
 {
        dout("create in dir %p dentry %p name '%.*s'\n",
index add64454fd51a94cc6441d9a7efcc9120df53e7d..358724df558bdd26b55260ce85d18b692e4b6fb9 100644 (file)
@@ -44,7 +44,7 @@ extern const struct address_space_operations cifs_addr_ops_smallbuf;
 /* Functions related to inodes */
 extern const struct inode_operations cifs_dir_inode_ops;
 extern struct inode *cifs_root_iget(struct super_block *);
-extern int cifs_create(struct inode *, struct dentry *, int,
+extern int cifs_create(struct inode *, struct dentry *, umode_t,
                       struct nameidata *);
 extern struct dentry *cifs_lookup(struct inode *, struct dentry *,
                                  struct nameidata *);
index d7eeb9d3ed6feae9a8c25f9e71d7822efba3e488..2dc8be86be09100d55c9771ea3b3f5d7b74dc9ff 100644 (file)
@@ -136,7 +136,7 @@ cifs_bp_rename_retry:
 /* Inode operations in similar order to how they appear in Linux file fs.h */
 
 int
-cifs_create(struct inode *inode, struct dentry *direntry, int mode,
+cifs_create(struct inode *inode, struct dentry *direntry, umode_t mode,
                struct nameidata *nd)
 {
        int rc = -ENOENT;
index a74ae6fcfb7edd783c59d5c4f9d1699702e6105d..83d2fd8ec24b2cac427be38610f36ea076a71eac 100644 (file)
@@ -30,7 +30,7 @@
 #include "coda_int.h"
 
 /* dir inode-ops */
-static int coda_create(struct inode *dir, struct dentry *new, int mode, struct nameidata *nd);
+static int coda_create(struct inode *dir, struct dentry *new, umode_t mode, struct nameidata *nd);
 static struct dentry *coda_lookup(struct inode *dir, struct dentry *target, struct nameidata *nd);
 static int coda_link(struct dentry *old_dentry, struct inode *dir_inode, 
                     struct dentry *entry);
@@ -191,7 +191,7 @@ static inline void coda_dir_drop_nlink(struct inode *dir)
 }
 
 /* creation routines: create, mknod, mkdir, link, symlink */
-static int coda_create(struct inode *dir, struct dentry *de, int mode, struct nameidata *nd)
+static int coda_create(struct inode *dir, struct dentry *de, umode_t mode, struct nameidata *nd)
 {
        int error;
        const char *name=de->d_name.name;
index ebf8726482b630a741b1af17022195d9c91224e7..81e6542ab20f95dc0d9894d3f44d77bebc5eb660 100644 (file)
@@ -267,7 +267,7 @@ out:
  */
 static int
 ecryptfs_create(struct inode *directory_inode, struct dentry *ecryptfs_dentry,
-               int mode, struct nameidata *nd)
+               umode_t mode, struct nameidata *nd)
 {
        struct inode *ecryptfs_inode;
        int rc;
index ff1c8286cd69e5db1687ee2910c23a4f70379709..58644544849d3e30800fb5a231f376c1cd7226c1 100644 (file)
@@ -59,7 +59,7 @@ static struct dentry *exofs_lookup(struct inode *dir, struct dentry *dentry,
        return d_splice_alias(inode, dentry);
 }
 
-static int exofs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int exofs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                         struct nameidata *nd)
 {
        struct inode *inode = exofs_new_inode(dir, mode);
index e3f3672b2020c0c67615d004a9ffa677ddb22606..cb759e661b151d3879e9ecb89b6cda9313578a18 100644 (file)
@@ -94,7 +94,7 @@ struct dentry *ext2_get_parent(struct dentry *child)
  * If the create succeeds, we fill in the inode information
  * with d_instantiate(). 
  */
-static int ext2_create (struct inode * dir, struct dentry * dentry, int mode, struct nameidata *nd)
+static int ext2_create (struct inode * dir, struct dentry * dentry, umode_t mode, struct nameidata *nd)
 {
        struct inode *inode;
 
index 08ecb53a33ea47161503dfe64f47bbdeb9acb0d7..6047d121f53783501fc33932f0832fa9a911954a 100644 (file)
@@ -1698,7 +1698,7 @@ static int ext3_add_nondir(handle_t *handle,
  * If the create succeeds, we fill in the inode information
  * with d_instantiate().
  */
-static int ext3_create (struct inode * dir, struct dentry * dentry, int mode,
+static int ext3_create (struct inode * dir, struct dentry * dentry, umode_t mode,
                struct nameidata *nd)
 {
        handle_t *handle;
index e506746724cf4960bf7b9e0074e9a71c70044b2c..77306f36a610b689dc6c4cc985be956365667c63 100644 (file)
@@ -1736,7 +1736,7 @@ static int ext4_add_nondir(handle_t *handle,
  * If the create succeeds, we fill in the inode information
  * with d_instantiate().
  */
-static int ext4_create(struct inode *dir, struct dentry *dentry, int mode,
+static int ext4_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                       struct nameidata *nd)
 {
        handle_t *handle;
index d1f53cae897cb51c82de01fe64e52409f2568672..c5938c9084b9796794626d4dc08bd42c0030b283 100644 (file)
@@ -264,7 +264,7 @@ static int msdos_add_entry(struct inode *dir, const unsigned char *name,
 }
 
 /***** Create a file */
-static int msdos_create(struct inode *dir, struct dentry *dentry, int mode,
+static int msdos_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                        struct nameidata *nd)
 {
        struct super_block *sb = dir->i_sb;
index fde2eda6332e3a6b34904e84c3096c0275dda2e9..3a444b4e2368e71e44107cc1d51e55f5260cd778 100644 (file)
@@ -781,7 +781,7 @@ error:
        return ERR_PTR(err);
 }
 
-static int vfat_create(struct inode *dir, struct dentry *dentry, int mode,
+static int vfat_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                       struct nameidata *nd)
 {
        struct super_block *sb = dir->i_sb;
index 4848a1acb3bb3c523f33cad329767eea1e294f17..603bb8a9b8ca0e5379f2ad11a7b1b56189e9cf49 100644 (file)
@@ -573,7 +573,7 @@ static int fuse_mknod(struct inode *dir, struct dentry *entry, int mode,
        return create_new_entry(fc, req, dir, entry, mode);
 }
 
-static int fuse_create(struct inode *dir, struct dentry *entry, int mode,
+static int fuse_create(struct inode *dir, struct dentry *entry, umode_t mode,
                       struct nameidata *nd)
 {
        if (nd) {
index eecfc39c07e6902e8de76a75aa8b26dd430eb60a..aadf792be7508a71e7ac9a7586064744d3e6feff 100644 (file)
@@ -760,7 +760,7 @@ fail:
  */
 
 static int gfs2_create(struct inode *dir, struct dentry *dentry,
-                      int mode, struct nameidata *nd)
+                      umode_t mode, struct nameidata *nd)
 {
        int excl = 0;
        if (nd && (nd->flags & LOOKUP_EXCL))
index 06dc161e911c8795f452e37da10cc9637a723707..62fc14ea4b7387549d2f7017345070864a0d182d 100644 (file)
@@ -186,7 +186,7 @@ static int hfs_dir_release(struct inode *inode, struct file *file)
  * a directory and return a corresponding inode, given the inode for
  * the directory and the name (and its length) of the new file.
  */
-static int hfs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int hfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                      struct nameidata *nd)
 {
        struct inode *inode;
index ed321f0384d72dc9129ea4ee08f28e9bcaa1e58b..ef6547ca42147781896e0a976ec4e641a8d92da1 100644 (file)
@@ -453,7 +453,7 @@ out:
        return res;
 }
 
-static int hfsplus_create(struct inode *dir, struct dentry *dentry, int mode,
+static int hfsplus_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                          struct nameidata *nd)
 {
        return hfsplus_mknod(dir, dentry, mode, 0);
index d35240fbbd739bfa10fba8b8f837edcf63592a70..3a3a530f5bad9292ac5989e3196e956f5ffe76a9 100644 (file)
@@ -551,7 +551,7 @@ static int read_name(struct inode *ino, char *name)
        return 0;
 }
 
-int hostfs_create(struct inode *dir, struct dentry *dentry, int mode,
+int hostfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                  struct nameidata *nd)
 {
        struct inode *inode;
index a2f89f2b95039b265d9def29fb148ab0dff8f292..769f76c7303ae92a82f78dd6547918fd92503351 100644 (file)
@@ -115,7 +115,7 @@ bail:
        return err;
 }
 
-static int hpfs_create(struct inode *dir, struct dentry *dentry, int mode, struct nameidata *nd)
+static int hpfs_create(struct inode *dir, struct dentry *dentry, umode_t mode, struct nameidata *nd)
 {
        const unsigned char *name = dentry->d_name.name;
        unsigned len = dentry->d_name.len;
index ba269706e798bf62a0cfcc9bc3e209672e730839..57996c3d8d0c3567259482d31097485cdceb34ed 100644 (file)
@@ -531,7 +531,7 @@ static int hugetlbfs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mod
        return retval;
 }
 
-static int hugetlbfs_create(struct inode *dir, struct dentry *dentry, int mode, struct nameidata *nd)
+static int hugetlbfs_create(struct inode *dir, struct dentry *dentry, umode_t mode, struct nameidata *nd)
 {
        return hugetlbfs_mknod(dir, dentry, mode | S_IFREG, 0);
 }
index 5dc458f19bc9fb8d6b2c39a53f0eebecbf4bb504..16a75e9a038d39a33bdac3acb80073da1674db0a 100644 (file)
@@ -22,7 +22,7 @@
 
 static int jffs2_readdir (struct file *, void *, filldir_t);
 
-static int jffs2_create (struct inode *,struct dentry *,int,
+static int jffs2_create (struct inode *,struct dentry *,umode_t,
                         struct nameidata *);
 static struct dentry *jffs2_lookup (struct inode *,struct dentry *,
                                    struct nameidata *);
@@ -169,8 +169,8 @@ static int jffs2_readdir(struct file *filp, void *dirent, filldir_t filldir)
 /***********************************************************************/
 
 
-static int jffs2_create(struct inode *dir_i, struct dentry *dentry, int mode,
-                       struct nameidata *nd)
+static int jffs2_create(struct inode *dir_i, struct dentry *dentry,
+                       umode_t mode, struct nameidata *nd)
 {
        struct jffs2_raw_inode *ri;
        struct jffs2_inode_info *f, *dir_f;
index 17ea85835715882f167729c7555dfc1f8091a9b2..6c0b1ab8107d15fdbbaf40151be774e76ccb3731 100644 (file)
@@ -72,7 +72,7 @@ static inline void free_ea_wmap(struct inode *inode)
  * RETURN:     Errors from subroutines
  *
  */
-static int jfs_create(struct inode *dip, struct dentry *dentry, int mode,
+static int jfs_create(struct inode *dip, struct dentry *dentry, umode_t mode,
                struct nameidata *nd)
 {
        int rc = 0;
index 25c5cbf8c12331993525a66412bdec7d4df1dba6..a74aa461d53cf40093d39c487e3743a7b32da07a 100644 (file)
@@ -501,7 +501,7 @@ static int logfs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode)
        return __logfs_create(dir, dentry, inode, NULL, 0);
 }
 
-static int logfs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int logfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                struct nameidata *nd)
 {
        struct inode *inode;
index 0e7a1a22e554ab7f988cd42e66534055eb1e72e4..c652650bf5a3f79d687a89e1bcc3b7315ff367e8 100644 (file)
@@ -54,7 +54,7 @@ static int minix_mknod(struct inode * dir, struct dentry *dentry, int mode, dev_
        return error;
 }
 
-static int minix_create(struct inode * dir, struct dentry *dentry, int mode,
+static int minix_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                struct nameidata *nd)
 {
        return minix_mknod(dir, dentry, mode, 0);
index 443c703249b38055b68816cad3915f94ffe263df..05d1c2ceb131fb1127bc44ddc73d85e367bb33a7 100644 (file)
@@ -1976,7 +1976,7 @@ void unlock_rename(struct dentry *p1, struct dentry *p2)
        }
 }
 
-int vfs_create(struct inode *dir, struct dentry *dentry, int mode,
+int vfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                struct nameidata *nd)
 {
        int error = may_create(dir, dentry);
index dfb51f0844077a789c0e46295243477ad791c924..98d1b8c6fd8c833398ba2db0e143e61ae712ce7c 100644 (file)
@@ -30,7 +30,7 @@ static void ncp_do_readdir(struct file *, void *, filldir_t,
 
 static int ncp_readdir(struct file *, void *, filldir_t);
 
-static int ncp_create(struct inode *, struct dentry *, int, struct nameidata *);
+static int ncp_create(struct inode *, struct dentry *, umode_t, struct nameidata *);
 static struct dentry *ncp_lookup(struct inode *, struct dentry *, struct nameidata *);
 static int ncp_unlink(struct inode *, struct dentry *);
 static int ncp_mkdir(struct inode *, struct dentry *, umode_t);
@@ -979,7 +979,7 @@ out:
        return error;
 }
 
-static int ncp_create(struct inode *dir, struct dentry *dentry, int mode,
+static int ncp_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                struct nameidata *nd)
 {
        return ncp_create_new(dir, dentry, mode, 0, 0);
index 5d67d92a4248f8e32f71066d494d28c85e1ae03b..7cdee1d4160f19cf6c98d74e3817a97471090448 100644 (file)
@@ -47,7 +47,7 @@ static int nfs_opendir(struct inode *, struct file *);
 static int nfs_closedir(struct inode *, struct file *);
 static int nfs_readdir(struct file *, void *, filldir_t);
 static struct dentry *nfs_lookup(struct inode *, struct dentry *, struct nameidata *);
-static int nfs_create(struct inode *, struct dentry *, int, struct nameidata *);
+static int nfs_create(struct inode *, struct dentry *, umode_t, struct nameidata *);
 static int nfs_mkdir(struct inode *, struct dentry *, umode_t);
 static int nfs_rmdir(struct inode *, struct dentry *);
 static int nfs_unlink(struct inode *, struct dentry *);
@@ -112,7 +112,7 @@ const struct inode_operations nfs3_dir_inode_operations = {
 #ifdef CONFIG_NFS_V4
 
 static struct dentry *nfs_atomic_lookup(struct inode *, struct dentry *, struct nameidata *);
-static int nfs_open_create(struct inode *dir, struct dentry *dentry, int mode, struct nameidata *nd);
+static int nfs_open_create(struct inode *dir, struct dentry *dentry, umode_t mode, struct nameidata *nd);
 const struct inode_operations nfs4_dir_inode_operations = {
        .create         = nfs_open_create,
        .lookup         = nfs_atomic_lookup,
@@ -1573,8 +1573,8 @@ no_open:
        return nfs_lookup_revalidate(dentry, nd);
 }
 
-static int nfs_open_create(struct inode *dir, struct dentry *dentry, int mode,
-               struct nameidata *nd)
+static int nfs_open_create(struct inode *dir, struct dentry *dentry,
+               umode_t mode, struct nameidata *nd)
 {
        struct nfs_open_context *ctx = NULL;
        struct iattr attr;
@@ -1664,8 +1664,8 @@ out_error:
  * that the operation succeeded on the server, but an error in the
  * reply path made it appear to have failed.
  */
-static int nfs_create(struct inode *dir, struct dentry *dentry, int mode,
-               struct nameidata *nd)
+static int nfs_create(struct inode *dir, struct dentry *dentry,
+               umode_t mode, struct nameidata *nd)
 {
        struct iattr attr;
        int error;
index e5e7311f1b92abe20b7213b1efb97e6795ac6889..fcd86c38f9686805e3fcfbcb3b5b2da00936e5a6 100644 (file)
@@ -84,7 +84,7 @@ nilfs_lookup(struct inode *dir, struct dentry *dentry, struct nameidata *nd)
  * If the create succeeds, we fill in the inode information
  * with d_instantiate().
  */
-static int nilfs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int nilfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                        struct nameidata *nd)
 {
        struct inode *inode;
index 77c8d80694612037f0e3104b7b8b5ec6aa94841b..ccb33289c29aa83cba80c784a4f153f197cfda41 100644 (file)
@@ -536,7 +536,7 @@ bail:
 
 static int dlmfs_create(struct inode *dir,
                        struct dentry *dentry,
-                       int mode,
+                       umode_t mode,
                        struct nameidata *nd)
 {
        int status = 0;
index c779f8bfc8a6fc2fc196a80e1586b342994f8786..46f46ffe77c590163102571f5ae29156e56fb191 100644 (file)
@@ -617,7 +617,7 @@ static int ocfs2_mkdir(struct inode *dir,
 
 static int ocfs2_create(struct inode *dir,
                        struct dentry *dentry,
-                       int mode,
+                       umode_t mode,
                        struct nameidata *nd)
 {
        int ret;
index 667dc7ff28c0788c88c17690d8c218bc9bd25840..d82599f49f6db1c04549b7906ec97f8b6c07b1a2 100644 (file)
@@ -284,7 +284,7 @@ static int omfs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode)
        return omfs_add_node(dir, dentry, mode | S_IFDIR);
 }
 
-static int omfs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int omfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                struct nameidata *nd)
 {
        return omfs_add_node(dir, dentry, mode | S_IFREG);
index 61972bee05619d1730df855bd9a600febd317cb3..c2ed2a36094ec9fa529736433c91e11e720b4e56 100644 (file)
@@ -114,7 +114,7 @@ static int ramfs_mkdir(struct inode * dir, struct dentry * dentry, umode_t mode)
        return retval;
 }
 
-static int ramfs_create(struct inode *dir, struct dentry *dentry, int mode, struct nameidata *nd)
+static int ramfs_create(struct inode *dir, struct dentry *dentry, umode_t mode, struct nameidata *nd)
 {
        return ramfs_mknod(dir, dentry, mode | S_IFREG, 0);
 }
index 763239a7e8dd76317d6ddd87f08153ae97c663d2..46db3b9fa7cfc226a258bfdee2cff0eccddd13fd 100644 (file)
@@ -572,7 +572,7 @@ static int new_inode_init(struct inode *inode, struct inode *dir, int mode)
        return 0;
 }
 
-static int reiserfs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int reiserfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                           struct nameidata *nd)
 {
        int retval;
index 3368425a4ce2575faefc82f45ffb612dc3cd4358..d306eebeb6c1fbb9efde36058ddc79cba8b1d5c4 100644 (file)
@@ -80,7 +80,7 @@ static int sysv_mknod(struct inode * dir, struct dentry * dentry, int mode, dev_
        return err;
 }
 
-static int sysv_create(struct inode * dir, struct dentry * dentry, int mode, struct nameidata *nd)
+static int sysv_create(struct inode * dir, struct dentry * dentry, umode_t mode, struct nameidata *nd)
 {
        return sysv_mknod(dir, dentry, mode, 0);
 }
index f5102f368160f0756181fcbba6f04f5a67244fa9..f332878ce4dee7c0c58476307fc387ddc5ee9113 100644 (file)
@@ -253,7 +253,7 @@ out:
        return ERR_PTR(err);
 }
 
-static int ubifs_create(struct inode *dir, struct dentry *dentry, int mode,
+static int ubifs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                        struct nameidata *nd)
 {
        struct inode *inode;
@@ -268,7 +268,7 @@ static int ubifs_create(struct inode *dir, struct dentry *dentry, int mode,
         * parent directory inode.
         */
 
-       dbg_gen("dent '%.*s', mode %#x in dir ino %lu",
+       dbg_gen("dent '%.*s', mode %#hx in dir ino %lu",
                dentry->d_name.len, dentry->d_name.name, mode, dir->i_ino);
 
        err = ubifs_budget_space(c, &req);
index 7f8ee32842be8ec8ed3b9f5bd57a23ad20dfc095..135a4ca010385970a07579bf864871bb9b2bec7a 100644 (file)
@@ -552,7 +552,7 @@ static int udf_delete_entry(struct inode *inode, struct fileIdentDesc *fi,
        return udf_write_fi(inode, cfi, fi, fibh, NULL, NULL);
 }
 
-static int udf_create(struct inode *dir, struct dentry *dentry, int mode,
+static int udf_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                      struct nameidata *nd)
 {
        struct udf_fileident_bh fibh;
index fa743aaa327ca3e0daa1ff2cbcd1861137818db9..ba2a9d6c0314a791986468a507791401d31a6270 100644 (file)
@@ -70,7 +70,7 @@ static struct dentry *ufs_lookup(struct inode * dir, struct dentry *dentry, stru
  * If the create succeeds, we fill in the inode information
  * with d_instantiate(). 
  */
-static int ufs_create (struct inode * dir, struct dentry * dentry, int mode,
+static int ufs_create (struct inode * dir, struct dentry * dentry, umode_t mode,
                struct nameidata *nd)
 {
        struct inode *inode;
index 99b324d43c986c0c80973a8b0a3b556dc22e0f7b..0efa4e51bebf29fe87d54a3c23de2f35936bf774 100644 (file)
@@ -231,7 +231,7 @@ STATIC int
 xfs_vn_create(
        struct inode    *dir,
        struct dentry   *dentry,
-       int             mode,
+       umode_t         mode,
        struct nameidata *nd)
 {
        return xfs_vn_mknod(dir, dentry, mode, 0);
index 3f7bd8b12e379071ca56d15ea299ab4ceff30890..e40321a6e239b66b62e996be8225776c6c76fea8 100644 (file)
@@ -1516,7 +1516,7 @@ extern void unlock_super(struct super_block *);
 /*
  * VFS helper functions..
  */
-extern int vfs_create(struct inode *, struct dentry *, int, struct nameidata *);
+extern int vfs_create(struct inode *, struct dentry *, umode_t, struct nameidata *);
 extern int vfs_mkdir(struct inode *, struct dentry *, umode_t);
 extern int vfs_mknod(struct inode *, struct dentry *, int, dev_t);
 extern int vfs_symlink(struct inode *, struct dentry *, const char *);
@@ -1619,7 +1619,7 @@ struct inode_operations {
        int (*readlink) (struct dentry *, char __user *,int);
        void (*put_link) (struct dentry *, struct nameidata *, void *);
 
-       int (*create) (struct inode *,struct dentry *,int, struct nameidata *);
+       int (*create) (struct inode *,struct dentry *,umode_t,struct nameidata *);
        int (*link) (struct dentry *,struct inode *,struct dentry *);
        int (*unlink) (struct inode *,struct dentry *);
        int (*symlink) (struct inode *,struct dentry *,const char *);
index 16cbc58cb13bcaf1623b1c1122deed2998bc8acf..8fc22373db34785d4d3b2c6c49428d65431b1cc9 100644 (file)
@@ -1447,7 +1447,7 @@ struct security_operations {
                                    const struct qstr *qstr, char **name,
                                    void **value, size_t *len);
        int (*inode_create) (struct inode *dir,
-                            struct dentry *dentry, int mode);
+                            struct dentry *dentry, umode_t mode);
        int (*inode_link) (struct dentry *old_dentry,
                           struct inode *dir, struct dentry *new_dentry);
        int (*inode_unlink) (struct inode *dir, struct dentry *dentry);
@@ -1716,7 +1716,7 @@ int security_inode_init_security(struct inode *inode, struct inode *dir,
 int security_old_inode_init_security(struct inode *inode, struct inode *dir,
                                     const struct qstr *qstr, char **name,
                                     void **value, size_t *len);
-int security_inode_create(struct inode *dir, struct dentry *dentry, int mode);
+int security_inode_create(struct inode *dir, struct dentry *dentry, umode_t mode);
 int security_inode_link(struct dentry *old_dentry, struct inode *dir,
                         struct dentry *new_dentry);
 int security_inode_unlink(struct inode *dir, struct dentry *dentry);
@@ -2061,7 +2061,7 @@ static inline int security_old_inode_init_security(struct inode *inode,
 
 static inline int security_inode_create(struct inode *dir,
                                         struct dentry *dentry,
-                                        int mode)
+                                        umode_t mode)
 {
        return 0;
 }
index 4e0be364aa367026202d09554a2d28a9f4b927ec..57ed704d2ca74d73cb758b73f961b33c3f3ee3c4 100644 (file)
@@ -295,7 +295,7 @@ static void mqueue_evict_inode(struct inode *inode)
 }
 
 static int mqueue_create(struct inode *dir, struct dentry *dentry,
-                               int mode, struct nameidata *nd)
+                               umode_t mode, struct nameidata *nd)
 {
        struct inode *inode;
        struct mq_attr *attr = dentry->d_fsdata;
@@ -610,7 +610,7 @@ static int mq_attr_ok(struct ipc_namespace *ipc_ns, struct mq_attr *attr)
  * Invoked when creating a new queue via sys_mq_open
  */
 static struct file *do_create(struct ipc_namespace *ipc_ns, struct dentry *dir,
-                       struct dentry *dentry, int oflag, mode_t mode,
+                       struct dentry *dentry, int oflag, umode_t mode,
                        struct mq_attr *attr)
 {
        const struct cred *cred = current_cred();
index b8a8ddf069d0997ea8b2bfd8938ad691269a4db4..542aad28928d3fd2e529635255dfc2bdcdc5d755 100644 (file)
@@ -1499,7 +1499,7 @@ static int shmem_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode)
        return 0;
 }
 
-static int shmem_create(struct inode *dir, struct dentry *dentry, int mode,
+static int shmem_create(struct inode *dir, struct dentry *dentry, umode_t mode,
                struct nameidata *nd)
 {
        return shmem_mknod(dir, dentry, mode | S_IFREG, 0);
index ddd17892826a543af91515797f71c7a11438a156..ff18d0ca30bf08e68a59623ba837b08f324dd268 100644 (file)
@@ -125,7 +125,7 @@ static int cap_inode_init_security(struct inode *inode, struct inode *dir,
 }
 
 static int cap_inode_create(struct inode *inode, struct dentry *dentry,
-                           int mask)
+                           umode_t mask)
 {
        return 0;
 }
index be49eb5768bc3800720c2330725141e553b47218..2420eed8763969a56c8798ae12e5abfcec7764d9 100644 (file)
@@ -475,7 +475,7 @@ int security_path_chroot(struct path *path)
 }
 #endif
 
-int security_inode_create(struct inode *dir, struct dentry *dentry, int mode)
+int security_inode_create(struct inode *dir, struct dentry *dentry, umode_t mode)
 {
        if (unlikely(IS_PRIVATE(dir)))
                return 0;
index ad74ad24ce2ad96cb9a18cab9c7424329bf8f666..a1eba2b9ea5cf8795070d7429639cfa34a616cd3 100644 (file)
@@ -2598,7 +2598,7 @@ static int selinux_inode_init_security(struct inode *inode, struct inode *dir,
        return 0;
 }
 
-static int selinux_inode_create(struct inode *dir, struct dentry *dentry, int mask)
+static int selinux_inode_create(struct inode *dir, struct dentry *dentry, umode_t mode)
 {
        return may_create(dir, dentry, SECCLASS_FILE);
 }