···254254 minix_set_bit(0,sbi->s_imap[0]->b_data);255255 minix_set_bit(0,sbi->s_zmap[0]->b_data);256256257257- /* set up enough so that it can read an inode */258258- s->s_op = &minix_sops;259259- root_inode = minix_iget(s, MINIX_ROOT_INO);260260- if (IS_ERR(root_inode)) {261261- ret = PTR_ERR(root_inode);262262- goto out_no_root;263263- }264264-265257 /* Apparently minix can create filesystems that allocate more blocks for266258 * the bitmaps than needed. We simply ignore that, but verify it didn't267259 * create one with not enough blocks and bail out if so.···262270 if (sbi->s_imap_blocks < block) {263271 printk("MINIX-fs: file system does not have enough "264272 "imap blocks allocated. Refusing to mount\n");265265- goto out_iput;273273+ goto out_no_bitmap;266274 }267275268276 block = minix_blocks_needed(···271279 if (sbi->s_zmap_blocks < block) {272280 printk("MINIX-fs: file system does not have enough "273281 "zmap blocks allocated. Refusing to mount.\n");274274- goto out_iput;282282+ goto out_no_bitmap;283283+ }284284+285285+ /* set up enough so that it can read an inode */286286+ s->s_op = &minix_sops;287287+ root_inode = minix_iget(s, MINIX_ROOT_INO);288288+ if (IS_ERR(root_inode)) {289289+ ret = PTR_ERR(root_inode);290290+ goto out_no_root;275291 }276292277293 ret = -ENOMEM;278278- s->s_root = d_alloc_root(root_inode);294294+ s->s_root = d_make_root(root_inode);279295 if (!s->s_root)280280- goto out_iput;296296+ goto out_no_root;281297282298 if (!(s->s_flags & MS_RDONLY)) {283299 if (sbi->s_version != MINIX_V3) /* s_state is now out from V3 sb */···300300 "running fsck is recommended\n");301301302302 return 0;303303-304304-out_iput:305305- iput(root_inode);306306- goto out_freemap;307303308304out_no_root:309305 if (!silent)