Virtio and GEOM labels

Bryan Venteicher bryanv at
Mon Mar 25 19:27:01 UTC 2013

----- Original Message -----
> On Mar 25, 2013, at 1:46 PM, John Nielsen <lists at> wrote:
> > On Mar 22, 2013, at 8:14 AM, Paul Mather <paul at> wrote:
> > 
> >> I'm running FreeBSD 9-STABLE as a guest under RHEL 6.4 KVM virtualisation.
> >> I have networking and storage in the FreeBSD guest using the Virtio
> >> drivers (with the virtual disk set to "Virtio" in the definition on the
> >> host).  Everything is working nicely: I have a vtnet network adapter and
> >> see vtbd devices for my virtual disks in FreeBSD.  Performance is much
> >> better compared with an emulated IDE device.
> > 
> > I've had the same experience.
> > 
> >> The odd thing is that I don't see GEOM labels reflected in /dev.  For
> >> example, I have GPT labels defined in the guest, but I don't see them
> >> show up under /dev/gpt.  Similarly, my UFS labels don't show up under
> >> /dev/ufs.  I *do* see a /dev/gptid.  That appears to be the only label
> >> that shows up.
> > 
> > I have not encountered this issue. I use virtio block devices and GPT
> > labels exclusively in multiple FreeBSD 9.1 guests and all mount/function
> > without issue. How are you referring to your filesystems in /etc/fstab?
> > IIRC GEOM makes not-in-use labels disappear when a device is in use (e.g.
> > mounted). If you take a new device, put a labeled GPT partition on it and
> > a labeled UFS partition on that but don't mount anything, what happens?
> Thanks for the reply.
> My apologies: this is a case of pilot error on my part.  I was mounting the
> devices as /dev/vtbd...  I hadn't realised that the present-but-unused
> labels were being suppressed when the device was mounted.  Has this always
> been the case?  For some reason I had a distinct recollection stuck in my
> mind that all labels showed up in /dev.
> Anyway, many thanks for pointing the way to the solution.  I now have GPT-
> and UFS-labelled devices mounted in my FreeBSD guest system.
> > 
> >> Is there something special I need to do to get GPT and UFS labels to
> >> appear when using Virtio?  It seems to me that Virtio block devices
> >> appear to be somewhat unusual.  Unlike regular ATA and SCSI devices, my
> >> vtbd devices don't appear in the boot dmesg (although a vtblk device
> >> does), and "camcontrol devlist" does not list them.  It's not clear to me
> >> how I am supposed to interact with them other than via basic device I/O
> >> through /dev/vtbdX.  I thought that the virtio_scsi module might make
> >> them appear as "da" devices and able to interacted with via camcontrol,
> >> but this doesn't seem to be the case.
> > 
> > Virtio block devices and virtio SCSI devices are not the same. If you want
> > to use the virtio_scsi module in FreeBSD you should expose a virtio SCSI
> > device from the host.

If you are doing a verbose boot, you'll get a 'GEOM: new disk vtbdX' announcing
new disks.

With vtbdX devices, there is no SCSI (or really any other higher level) protocol
involved (on the guest side) so tools like camcontrol do not make sense. Reads,
writes, etc are just translated into commands defined in the VirtIO spec. 

> Thank you for the explanation.  I've been using virt-manager up to now for
> setting up KVM guests and it seems that virtio-scsi isn't exposed through
> that interface---only through the command line.  I'll have to investigate...

There are examples for editing the guest's XML config with virsh on Redhat's

> Cheers,
> Paul.
> _______________________________________________
> freebsd-stable at mailing list
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at"

More information about the freebsd-stable mailing list