Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 Oct 2018 11:34:50 -0600
From:      Cy Schubert <Cy.Schubert@cschubert.com>
To:        Mateusz Guzik <mjg@FreeBSD.org>,  "src-committers@freebsd.org" <src-committers@freebsd.org>,  "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>,  "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>
Subject:   RE: svn commit: r339355 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Message-ID:  <20181014173441.282E52DF8@spqr.komquats.com>

next in thread | raw e-mail | index | archive | help
Thank you.

---
Sent using a tiny phone keyboard.
Apologies for any typos and autocorrect.
Also, this old phone only supports top post. Apologies.

Cy Schubert
<Cy.Schubert@cschubert.com> or <cy@freebsd.org>
The need of the many outweighs the greed of the few.
---

-----Original Message-----
From: Mateusz Guzik
Sent: 14/10/2018 10:14
To: src-committers@freebsd.org; svn-src-all@freebsd.org; svn-src-head@freeb=
sd.org
Subject: svn commit: r339355 - head/sys/cddl/contrib/opensolaris/uts/common=
/fs/zfs

Author: mjg
Date: Sun Oct 14 16:14:01 2018
New Revision: 339355
URL: https://svnweb.freebsd.org/changeset/base/339355

Log:
  zfs: fix a panic after failed mount
 =20
  r338927("zfs: depessimize zfs_root with rmlocks") failed to error check
  the mount before caching root vnode.
 =20
  Results in crashes in rrw_enter_read_impl tracing back to zfs_mount.
 =20
  Reported by:	Mike Tancsa
  Tested by:	allanjude
  Approved by:	re (kib)

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c	Sun Oc=
t 14 05:09:43 2018	(r339354)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c	Sun Oc=
t 14 16:14:01 2018	(r339355)
@@ -1929,7 +1929,8 @@ zfs_mount(vfs_t *vfsp)
 	error =3D zfs_domount(vfsp, osname);
 	PICKUP_GIANT();
=20
-	zfs_root_setvnode((zfsvfs_t *)vfsp->vfs_data);
+	if (error =3D=3D 0)
+		zfs_root_setvnode((zfsvfs_t *)vfsp->vfs_data);
=20
 #ifdef illumos
 	/*




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20181014173441.282E52DF8>