-
- /* Read the ifile disk inode and store it in a vnode. */
- error = bread(devvp, fs->lfs_idaddr, fs->lfs_bsize, NOCRED, &bp);
- if (error)
- goto out;
- error = lfs_vcreate(mp, LFS_IFILE_INUM, &vp);
- if (error)
- goto out;
- ip = VTOI(vp);
-
- /* The ifile inode is stored in the superblock. */
- fs->lfs_ivnode = vp;
-
- /* Copy the on-disk inode into place. */
- ip->i_din = *lfs_ifind(fs, LFS_IFILE_INUM, bp->b_un.b_dino);
- brelse(bp);
-
- /* Initialize the associated vnode */
- vp->v_type = IFTOVT(ip->i_mode);