X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=module%2Fzfs%2Fzfs_vfsops.c;h=1efe6a8c98de9e6b41654aa4d8f8dd0027a3a683;hb=9e11c7eee232b73600c2590c8c3326b2725daba5;hp=8f1c713c0534b3c76a55a736097a34146890a236;hpb=ebe7e575eae1e03b1faa545a424f008faeac589d;p=zfs.git diff --git a/module/zfs/zfs_vfsops.c b/module/zfs/zfs_vfsops.c index 8f1c713..1efe6a8 100644 --- a/module/zfs/zfs_vfsops.c +++ b/module/zfs/zfs_vfsops.c @@ -584,7 +584,7 @@ zfs_sb_create(const char *osname, zfs_sb_t **zsbp) int i, error; uint64_t sa_obj; - zsb = kmem_zalloc(sizeof (zfs_sb_t), KM_SLEEP); + zsb = kmem_zalloc(sizeof (zfs_sb_t), KM_SLEEP | KM_NODEBUG); /* * We claim to always be readonly so we can open snapshots; @@ -1200,7 +1200,7 @@ zfs_domount(struct super_block *sb, void *data, int silent) } /* Allocate a root dentry for the filesystem */ - sb->s_root = d_alloc_root(root_inode); + sb->s_root = d_make_root(root_inode); if (sb->s_root == NULL) { (void) zfs_umount(sb); error = ENOMEM; @@ -1231,7 +1231,7 @@ zfs_preumount(struct super_block *sb) { zfs_sb_t *zsb = sb->s_fs_info; - if (zsb->z_ctldir != NULL) + if (zsb != NULL && zsb->z_ctldir != NULL) zfsctl_destroy(zsb); } EXPORT_SYMBOL(zfs_preumount);