diff --git a/drivers/net/wireless/ath/wil6210/debugfs.c b/drivers/net/wireless/ath/wil6210/debugfs.c
index 65fc9683bfd8e2751f3a80ca16605ae6d89e86e1..76c7694518d9303ebcf6590c149b91db86fd5af2 100644
--- a/drivers/net/wireless/ath/wil6210/debugfs.c
+++ b/drivers/net/wireless/ath/wil6210/debugfs.c
@@ -216,7 +216,7 @@ DEFINE_SIMPLE_ATTRIBUTE(fops_iomem_x32, wil_debugfs_iomem_x32_get,
 			wil_debugfs_iomem_x32_set, "0x%08llx\n");
 
 static struct dentry *wil_debugfs_create_iomem_x32(const char *name,
-						   mode_t mode,
+						   umode_t mode,
 						   struct dentry *parent,
 						   void __iomem *value)
 {
@@ -367,7 +367,7 @@ static const struct file_operations fops_ioblob = {
 
 static
 struct dentry *wil_debugfs_create_ioblob(const char *name,
-					 mode_t mode,
+					 umode_t mode,
 					 struct dentry *parent,
 					 struct debugfs_blob_wrapper *blob)
 {
diff --git a/drivers/staging/dgrp/dgrp_common.h b/drivers/staging/dgrp/dgrp_common.h
index 0583fe9c7b035cd6810635bf6beb7c6e5a47daf1..fde116236e9846307542887f413975b356912334 100644
--- a/drivers/staging/dgrp/dgrp_common.h
+++ b/drivers/staging/dgrp/dgrp_common.h
@@ -120,7 +120,7 @@ enum {
 struct dgrp_proc_entry {
 	int                  id;          /* Integer identifier */
 	const char        *name;          /* ASCII identifier */
-	mode_t             mode;          /* File access permissions */
+	umode_t            mode;          /* File access permissions */
 	struct dgrp_proc_entry *child;    /* Child pointer */
 
 	/* file ops to use, pass NULL to use default */
diff --git a/drivers/staging/dgrp/dgrp_specproc.c b/drivers/staging/dgrp/dgrp_specproc.c
index 73f287f966046b7f89ff5e4a6c3038f9c98d6d52..dddf8a2e396b275c04e647810e3f4ec43d52562f 100644
--- a/drivers/staging/dgrp/dgrp_specproc.c
+++ b/drivers/staging/dgrp/dgrp_specproc.c
@@ -228,7 +228,7 @@ static void register_proc_table(struct dgrp_proc_entry *table,
 {
 	struct proc_dir_entry *de;
 	int len;
-	mode_t mode;
+	umode_t mode;
 
 	if (table == NULL)
 		return;
diff --git a/fs/f2fs/acl.c b/fs/f2fs/acl.c
index 137af4255da6dfab591e4d640821539663d01a7c..44abc2f286e00ad4ecff03e0293f80ab8d3d19fd 100644
--- a/fs/f2fs/acl.c
+++ b/fs/f2fs/acl.c
@@ -299,7 +299,7 @@ int f2fs_acl_chmod(struct inode *inode)
 	struct f2fs_sb_info *sbi = F2FS_SB(inode->i_sb);
 	struct posix_acl *acl;
 	int error;
-	mode_t mode = get_inode_mode(inode);
+	umode_t mode = get_inode_mode(inode);
 
 	if (!test_opt(sbi, POSIX_ACL))
 		return 0;
diff --git a/fs/f2fs/dir.c b/fs/f2fs/dir.c
index a1f38443ecee39940d1a5dee6c167b54f9f50431..1be948768e2f1b04293ea19935db4eb244d62049 100644
--- a/fs/f2fs/dir.c
+++ b/fs/f2fs/dir.c
@@ -60,7 +60,7 @@ static unsigned char f2fs_type_by_mode[S_IFMT >> S_SHIFT] = {
 
 static void set_de_type(struct f2fs_dir_entry *de, struct inode *inode)
 {
-	mode_t mode = inode->i_mode;
+	umode_t mode = inode->i_mode;
 	de->file_type = f2fs_type_by_mode[(mode & S_IFMT) >> S_SHIFT];
 }
 
diff --git a/fs/proc/self.c b/fs/proc/self.c
index aa5cc3bff14063bba66a093cb7f68bd734e71593..d8a025296613539752369ba07384380b1090c588 100644
--- a/fs/proc/self.c
+++ b/fs/proc/self.c
@@ -51,7 +51,7 @@ static const struct inode_operations proc_self_inode_operations = {
 void __init proc_self_init(void)
 {
 	struct proc_dir_entry *proc_self_symlink;
-	mode_t mode;
+	umode_t mode;
 
 	mode = S_IFLNK | S_IRWXUGO;
 	proc_self_symlink = proc_create("self", mode, NULL, NULL );
diff --git a/lib/notifier-error-inject.c b/lib/notifier-error-inject.c
index 44b92cb6224f5f599f5f997da5b612b0f28a2ef9..eb4a04afea80a6a2e3d3954cf1b9f00a45faf4a9 100644
--- a/lib/notifier-error-inject.c
+++ b/lib/notifier-error-inject.c
@@ -17,7 +17,7 @@ static int debugfs_errno_get(void *data, u64 *val)
 DEFINE_SIMPLE_ATTRIBUTE(fops_errno, debugfs_errno_get, debugfs_errno_set,
 			"%lld\n");
 
-static struct dentry *debugfs_create_errno(const char *name, mode_t mode,
+static struct dentry *debugfs_create_errno(const char *name, umode_t mode,
 				struct dentry *parent, int *value)
 {
 	return debugfs_create_file(name, mode, parent, value, &fops_errno);
@@ -50,7 +50,7 @@ struct dentry *notifier_err_inject_init(const char *name, struct dentry *parent,
 			struct notifier_err_inject *err_inject, int priority)
 {
 	struct notifier_err_inject_action *action;
-	mode_t mode = S_IFREG | S_IRUSR | S_IWUSR;
+	umode_t mode = S_IFREG | S_IRUSR | S_IWUSR;
 	struct dentry *dir;
 	struct dentry *actions_dir;