diff options
Diffstat (limited to 'fs/sysfs/mount.c')
| -rw-r--r-- | fs/sysfs/mount.c | 4 | 
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/sysfs/mount.c b/fs/sysfs/mount.c index 8d924b5ec73..afd83273e6c 100644 --- a/fs/sysfs/mount.c +++ b/fs/sysfs/mount.c @@ -19,6 +19,7 @@  #include <linux/module.h>  #include <linux/magic.h>  #include <linux/slab.h> +#include <linux/user_namespace.h>  #include "sysfs.h" @@ -111,6 +112,9 @@ static struct dentry *sysfs_mount(struct file_system_type *fs_type,  	struct super_block *sb;  	int error; +	if (!(flags & MS_KERNMOUNT) && !current_user_ns()->may_mount_sysfs) +		return ERR_PTR(-EPERM); +  	info = kzalloc(sizeof(*info), GFP_KERNEL);  	if (!info)  		return ERR_PTR(-ENOMEM);  |