On Sat, 29 Oct 2016 14:08:31 +0800 zhongjiang <[email protected]> wrote:

> From: zhong jiang <[email protected]>
> 
> Since 'commit 3e89e1c5ea84 ("hugetlb: make mm and fs code explicitly 
> non-modular")'
> bring in the mainline. mount hugetlbfs will result in the following issue.
> 
> mount: unknown filesystme type 'hugetlbfs'
> 
> because previous patch remove the module_alias_fs, when we mount the fs type,
> the caller get_fs_type can not find the filesystem.
> 
> The patch just recover the module_alias_fs to identify the hugetlbfs.

hm, 3e89e1c5ea84 ("hugetlb: make mm and fs code explicitly
non-modular") was merged almost a year ago.  And you are apparently the
first person to discover this regression.  Can you think why that is?

> index 4fb7b10..b63e7de 100644
> --- a/fs/hugetlbfs/inode.c
> +++ b/fs/hugetlbfs/inode.c
> @@ -35,6 +35,7 @@
>  #include <linux/security.h>
>  #include <linux/magic.h>
>  #include <linux/migrate.h>
> +#include <linux/module.h>
>  #include <linux/uio.h>
>  
>  #include <asm/uaccess.h>
> @@ -1209,6 +1210,7 @@ static struct dentry *hugetlbfs_mount(struct 
> file_system_type *fs_type,
>       .mount          = hugetlbfs_mount,
>       .kill_sb        = kill_litter_super,
>  };
> +MODULE_ALIAS_FS("hugetlbfs");
>  
>  static struct vfsmount *hugetlbfs_vfsmount[HUGE_MAX_HSTATE];
>  

Reply via email to