don't open-code d_rehash() in d_materialise_unique()
[firefly-linux-kernel-4.4.55.git] / fs / befs / linuxvfs.c
index 0d6c07cc1149191d0f46e38e87142987e0fd41ad..4cf61ec6b7a8ee539e0caa63d548f8aa4222ad0f 100644 (file)
@@ -832,16 +832,14 @@ befs_fill_super(struct super_block *sb, void *data, int silent)
                    (befs_super_block *) ((void *) bh->b_data + x86_sb_off);
        }
 
-       if (befs_load_sb(sb, disk_sb) != BEFS_OK)
+       if ((befs_load_sb(sb, disk_sb) != BEFS_OK) ||
+           (befs_check_sb(sb) != BEFS_OK))
                goto unacquire_bh;
 
        befs_dump_super_block(sb, disk_sb);
 
        brelse(bh);
 
-       if (befs_check_sb(sb) != BEFS_OK)
-               goto unacquire_priv_sbp;
-
        if( befs_sb->num_blocks > ~((sector_t)0) ) {
                befs_error(sb, "blocks count: %llu "
                        "is larger than the host can use",