[Bug 243692] file-backed VMs do not have LBA flag set in virtio-block

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Jan 29 04:11:17 UTC 2020


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=243692

            Bug ID: 243692
           Summary: file-backed VMs do not have LBA flag set in
                    virtio-block
           Product: Base System
           Version: 12.1-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bhyve
          Assignee: virtualization at FreeBSD.org
          Reporter: james.blachly at gmail.com

Summary:
Briefly, file-backed virtio-block devices in bhyve are exposed differently than
zvol backed VMs. This causes ZFS in illumos to segfault when a file-backed
virtio-block device is used.

In illumos, the only difference in the block devices, as far as I can tell, is
that zvol-backed devices have the ":lba-access-ok" flag set.


Possible cause:
The virtio block driver has a set of flags that expose supposed capabilities:

https://github.com/freebsd/freebsd/blob/0f0a35a04846fc4f4bdb6caa2852336d7de9447d/usr.sbin/bhyve/pci_virtio_block.c#L70-L84

However, these differ between file-backed VMs and zvol-backed VMs, possibly
here:

https://github.com/freebsd/freebsd/blob/0f0a35a04846fc4f4bdb6caa2852336d7de9447d/usr.sbin/bhyve/pci_virtio_block.c#L366-L377

(if not specifically there, seems likely in that function, pci_vtblk_init)

This manifests in illumos as a segmentation fault when the command `zpool
create` is issued on a bhyve-exposed virtio block device that is backed by a
file.


I also filed an issue with illumos: https://www.illumos.org/issues/12237


Thanks in advance for help.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-virtualization mailing list