Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Jan 2016 06:35:22 -0800
From:      Cy Schubert <cschuber@gmail.com>
To:        Julian Elischer <julian@freebsd.org>,  Shawn Webb <shawn.webb@hardenedbsd.org>, Alan Somers <asomers@FreeBSD.org>
Cc:        "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>,  Xin LI <delphij@delphij.net>,  "cy.schubert@cschubert.com" <cy.schubert@cschubert.com>
Subject:   RE: svn commit: r294329 - inhead/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys
Message-ID:  <56a4e129.a98b420a.ebf8f.ffffe225@mx.google.com>

next in thread | raw e-mail | index | archive | help
A previous email in this thread said that a sysctl will be committed before=
 MFC.

I personally have never encountered this particular problem.

Sent from my cellphone,
~Cy

-----Original Message-----
From: Julian Elischer
Sent: 24/01/2016 06:20
To: Shawn Webb; Alan Somers
Cc: src-committers@freebsd.org; svn-src-all@freebsd.org; svn-src-head@freeb=
sd.org; Xin LI
Subject: Re: svn commit: r294329 - inhead/sys/cddl/contrib/opensolaris/uts/=
common/fs/zfs: . sys

On 24/01/2016 10:13 PM, Shawn Webb wrote:
> On Tue, Jan 19, 2016 at 05:00:25PM +0000, Alan Somers wrote:
>> Author: asomers
>> Date: Tue Jan 19 17:00:25 2016
>> New Revision: 294329
>> URL: https://svnweb.freebsd.org/changeset/base/294329
>>
>> Log:
>>    Disallow zvol-backed ZFS pools
>>   =20
>>    Using zvols as backing devices for ZFS pools is fraught with panics a=
nd
>>    deadlocks. For example, attempting to online a missing device in the
>>    presence of a zvol can cause a panic when vdev_geom tastes the zvol. =
 Better
>>    to completely disable vdev_geom from ever opening a zvol. The solutio=
n
>>    relies on setting a thread-local variable during vdev_geom_open, and
>>    returning EOPNOTSUPP during zvol_open if that thread-local variable i=
s set.
>>   =20
>>    Remove the check for MUTEX_HELD(&zfsdev_state_lock) in zvol_open. Its=
 intent
>>    was to prevent a recursive mutex acquisition panic. However, the new =
check
>>    for the thread-local variable also fixes that problem.
>>   =20
>>    Also, fix a panic in vdev_geom_taste_orphan. For an unknown reason, t=
his
>>    function was set to panic. But it can occur that a device disappears =
during
>>    tasting, and it causes no problems to ignore this departure.
>>   =20
>>    Reviewed by:	delphij
>>    MFC after:	1 week
>>    Relnotes:	yes
>>    Sponsored by:	Spectra Logic Corp
>>    Differential Revision:	https://reviews.freebsd.org/D4986
> I've just been bit by this pretty hard. I have a bhyve VM that's backed
> by a zvol. The VM is running root-on-zfs. I wrote some experimental code
> that's now preventing the VM from booting (kernel panic due to userland
> change). Since I can't import the pool, I have no way of fixing the
> problem.
>
> I'm probably just going to go revert this commit locally on my box so I
> can get some work done.
I use an md device to do this in bhyve but I was considering using a zvol.
Populating it in the host system and then presenting it to the VM as a=20
disk.
maybe it could be enabled with a sysctl?  Is the problem always present?
>
> Thanks,
>





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56a4e129.a98b420a.ebf8f.ffffe225>