From: Filipe David Borba Manana Date: Sat, 1 Feb 2014 21:27:56 +0000 (+0000) Subject: Btrfs: use late_initcall instead of module_init X-Git-Tag: v3.14-rc2~3^2~5 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=60efa5eb2e886852a0d5f9e1ffa7c896a1099da8;p=profile%2Fivi%2Fkernel-x86-ivi.git Btrfs: use late_initcall instead of module_init It seems that when init_btrfs_fs() is called, crc32c/crc32c-intel might not always be already initialized, which results in the call to crypto_alloc_shash() returning -ENOENT, as experienced by Ahmet who reported this. Therefore make sure init_btrfs_fs() is called after crc32c is initialized (which is at initialization level 6, module_init), by using late_initcall (which is at initialization level 7) instead of module_init for btrfs. Reported-and-Tested-by: Ahmet Inan Signed-off-by: Filipe David Borba Manana Signed-off-by: Chris Mason --- diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c index c02f633..97cc241 100644 --- a/fs/btrfs/super.c +++ b/fs/btrfs/super.c @@ -1996,7 +1996,7 @@ static void __exit exit_btrfs_fs(void) btrfs_hash_exit(); } -module_init(init_btrfs_fs) +late_initcall(init_btrfs_fs); module_exit(exit_btrfs_fs) MODULE_LICENSE("GPL");