svn commit: r294329 - in head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys
Shawn Webb
shawn.webb at hardenedbsd.org
Sun Jan 24 14:13:38 UTC 2016
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
>
> Using zvols as backing devices for ZFS pools is fraught with panics and
> 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 solution
> relies on setting a thread-local variable during vdev_geom_open, and
> returning EOPNOTSUPP during zvol_open if that thread-local variable is set.
>
> 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.
>
> Also, fix a panic in vdev_geom_taste_orphan. For an unknown reason, this
> function was set to panic. But it can occur that a device disappears during
> tasting, and it causes no problems to ignore this departure.
>
> 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.
Thanks,
--
Shawn Webb
HardenedBSD
GPG Key ID: 0x6A84658F52456EEE
GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89 3D9E 6A84 658F 5245 6EEE
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/svn-src-all/attachments/20160124/733adaa7/attachment.sig>
More information about the svn-src-all
mailing list