Commit aea8b5d1 authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace

Pull namespace bugfixes from Eric Biederman:
 "This tree includes a partial revert for "fs: Limit sys_mount to only
  request filesystem modules." When I added the new style module aliases
  to the filesystems I deleted the old ones.  A bad move.  It turns out
  that distributions like Arch linux use module aliases when
  constructing ramdisks.  Which meant ultimately that an ext3 filesystem
  mounted with ext4 would not result in the ext4 module being put into
  the ramdisk.

  The other change in this tree adds a handful of filesystem module
  alias I simply failed to add the first time.  Which inconvinienced a
  few folks using cifs.

  I don't want to inconvinience folks any longer than I have to so here
  are these trivial fixes."

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
  fs: Readd the fs module aliases.
  fs: Limit sys_mount to only request filesystem modules. (Part 3)
parents 842d223f fa7614dd
...@@ -777,6 +777,7 @@ struct file_system_type cifs_fs_type = { ...@@ -777,6 +777,7 @@ struct file_system_type cifs_fs_type = {
.kill_sb = cifs_kill_sb, .kill_sb = cifs_kill_sb,
/* .fs_flags */ /* .fs_flags */
}; };
MODULE_ALIAS_FS("cifs");
const struct inode_operations cifs_dir_inode_ops = { const struct inode_operations cifs_dir_inode_ops = {
.create = cifs_create, .create = cifs_create,
.atomic_open = cifs_atomic_open, .atomic_open = cifs_atomic_open,
......
...@@ -91,6 +91,7 @@ static struct file_system_type ext2_fs_type = { ...@@ -91,6 +91,7 @@ static struct file_system_type ext2_fs_type = {
.fs_flags = FS_REQUIRES_DEV, .fs_flags = FS_REQUIRES_DEV,
}; };
MODULE_ALIAS_FS("ext2"); MODULE_ALIAS_FS("ext2");
MODULE_ALIAS("ext2");
#define IS_EXT2_SB(sb) ((sb)->s_bdev->bd_holder == &ext2_fs_type) #define IS_EXT2_SB(sb) ((sb)->s_bdev->bd_holder == &ext2_fs_type)
#else #else
#define IS_EXT2_SB(sb) (0) #define IS_EXT2_SB(sb) (0)
...@@ -106,6 +107,7 @@ static struct file_system_type ext3_fs_type = { ...@@ -106,6 +107,7 @@ static struct file_system_type ext3_fs_type = {
.fs_flags = FS_REQUIRES_DEV, .fs_flags = FS_REQUIRES_DEV,
}; };
MODULE_ALIAS_FS("ext3"); MODULE_ALIAS_FS("ext3");
MODULE_ALIAS("ext3");
#define IS_EXT3_SB(sb) ((sb)->s_bdev->bd_holder == &ext3_fs_type) #define IS_EXT3_SB(sb) ((sb)->s_bdev->bd_holder == &ext3_fs_type)
#else #else
#define IS_EXT3_SB(sb) (0) #define IS_EXT3_SB(sb) (0)
......
...@@ -258,6 +258,7 @@ static struct file_system_type vxfs_fs_type = { ...@@ -258,6 +258,7 @@ static struct file_system_type vxfs_fs_type = {
.fs_flags = FS_REQUIRES_DEV, .fs_flags = FS_REQUIRES_DEV,
}; };
MODULE_ALIAS_FS("vxfs"); /* makes mount -t vxfs autoload the module */ MODULE_ALIAS_FS("vxfs"); /* makes mount -t vxfs autoload the module */
MODULE_ALIAS("vxfs");
static int __init static int __init
vxfs_init(void) vxfs_init(void)
......
...@@ -986,6 +986,7 @@ static struct file_system_type hostfs_type = { ...@@ -986,6 +986,7 @@ static struct file_system_type hostfs_type = {
.kill_sb = hostfs_kill_sb, .kill_sb = hostfs_kill_sb,
.fs_flags = 0, .fs_flags = 0,
}; };
MODULE_ALIAS_FS("hostfs");
static int __init init_hostfs(void) static int __init init_hostfs(void)
{ {
......
...@@ -688,6 +688,7 @@ static struct file_system_type hpfs_fs_type = { ...@@ -688,6 +688,7 @@ static struct file_system_type hpfs_fs_type = {
.kill_sb = kill_block_super, .kill_sb = kill_block_super,
.fs_flags = FS_REQUIRES_DEV, .fs_flags = FS_REQUIRES_DEV,
}; };
MODULE_ALIAS_FS("hpfs");
static int __init init_hpfs_fs(void) static int __init init_hpfs_fs(void)
{ {
......
...@@ -1557,6 +1557,7 @@ static struct file_system_type iso9660_fs_type = { ...@@ -1557,6 +1557,7 @@ static struct file_system_type iso9660_fs_type = {
.fs_flags = FS_REQUIRES_DEV, .fs_flags = FS_REQUIRES_DEV,
}; };
MODULE_ALIAS_FS("iso9660"); MODULE_ALIAS_FS("iso9660");
MODULE_ALIAS("iso9660");
static int __init init_iso9660_fs(void) static int __init init_iso9660_fs(void)
{ {
......
...@@ -335,6 +335,7 @@ struct file_system_type nfs4_fs_type = { ...@@ -335,6 +335,7 @@ struct file_system_type nfs4_fs_type = {
.fs_flags = FS_RENAME_DOES_D_MOVE|FS_BINARY_MOUNTDATA, .fs_flags = FS_RENAME_DOES_D_MOVE|FS_BINARY_MOUNTDATA,
}; };
MODULE_ALIAS_FS("nfs4"); MODULE_ALIAS_FS("nfs4");
MODULE_ALIAS("nfs4");
EXPORT_SYMBOL_GPL(nfs4_fs_type); EXPORT_SYMBOL_GPL(nfs4_fs_type);
static int __init register_nfs4_fs(void) static int __init register_nfs4_fs(void)
......
...@@ -489,6 +489,7 @@ static struct file_system_type squashfs_fs_type = { ...@@ -489,6 +489,7 @@ static struct file_system_type squashfs_fs_type = {
.kill_sb = kill_block_super, .kill_sb = kill_block_super,
.fs_flags = FS_REQUIRES_DEV .fs_flags = FS_REQUIRES_DEV
}; };
MODULE_ALIAS_FS("squashfs");
static const struct super_operations squashfs_super_ops = { static const struct super_operations squashfs_super_ops = {
.alloc_inode = squashfs_alloc_inode, .alloc_inode = squashfs_alloc_inode,
......
...@@ -555,6 +555,7 @@ static struct file_system_type v7_fs_type = { ...@@ -555,6 +555,7 @@ static struct file_system_type v7_fs_type = {
.fs_flags = FS_REQUIRES_DEV, .fs_flags = FS_REQUIRES_DEV,
}; };
MODULE_ALIAS_FS("v7"); MODULE_ALIAS_FS("v7");
MODULE_ALIAS("v7");
static int __init init_sysv_fs(void) static int __init init_sysv_fs(void)
{ {
......
...@@ -118,6 +118,7 @@ static struct file_system_type udf_fstype = { ...@@ -118,6 +118,7 @@ static struct file_system_type udf_fstype = {
.kill_sb = kill_block_super, .kill_sb = kill_block_super,
.fs_flags = FS_REQUIRES_DEV, .fs_flags = FS_REQUIRES_DEV,
}; };
MODULE_ALIAS_FS("udf");
static struct kmem_cache *udf_inode_cachep; static struct kmem_cache *udf_inode_cachep;
......
...@@ -1175,6 +1175,7 @@ static struct file_system_type rpc_pipe_fs_type = { ...@@ -1175,6 +1175,7 @@ static struct file_system_type rpc_pipe_fs_type = {
.kill_sb = rpc_kill_sb, .kill_sb = rpc_kill_sb,
}; };
MODULE_ALIAS_FS("rpc_pipefs"); MODULE_ALIAS_FS("rpc_pipefs");
MODULE_ALIAS("rpc_pipefs");
static void static void
init_once(void *foo) init_once(void *foo)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment