i.e. just return the error code if there is one.
Signed-off-by: NeilBrown <neilb@suse.de>
struct datablock *b;
struct inode *root;
struct inode *rootdir;
+ struct dentry *de;
int err;
int d;
/* FIXME lots of error checking */
rootdir = lafs_iget(fs->prime_sb, 2, 0);
-/* FIXME error check */
- fs->prime_sb->s_root = d_alloc_root(rootdir);
-/* FIXME error check */
+ err = PTR_ERR(rootdir);
+ if (IS_ERR(rootdir))
+ goto err2;
+ de = d_alloc_root(rootdir);
+ err = PTR_ERR(de);
+ if (IS_ERR(de))
+ goto err2;
+ fs->prime_sb->s_root = de;
fs->orphans = lafs_iget(fs->prime_sb, 8, 0);
for (d = 0; d < fs->devices ; d++) {
err:
putdref(b, MKREF(mount));
+err2:
return err;
}