Can bhyve pass disk vendor, model and serial values to guests?

Rob Roy Gregg rr at robroygregg.com
Sat Jul 25 00:23:21 UTC 2020


On Sat, 20 Jun 2020, Wanpeng Qian wrote:

> On Fri, 19 Jun 2020, Rob Roy Gregg wrote:
>
>> FreeBSD Friends,
>>
>> I tried the forums and thought I'd ask here next; here's the thread:
>>
>> https://forums.freebsd.org/threads/can-bhyve-pass-disk-vendor-model-and-serial-values-to-guests.75851/
>>
>> This is on 12.1-RELEASE-p6.
>>
>> Can bhyve pass disks to guests in a way that preserves the disk's 
>> actual vendor, model and serial values (as viewed from inside of the guest)?
>>
>> Here's how a passed-in disk looks inside the guest with ahci-hd 
>> emulation:
>>
>>  linux_in_bhyve# lsblk --output vendor,model,serial /dev/sda
>>  VENDOR   MODEL            SERIAL
>>  ATA      BHYVE SATA DISK  BHYVE-FC87-ABA5-711B
>>
>> And with virtio-blk emulation:
>>
>>  linux_in_bhyve# lsblk -o vendor,model,serial /dev/vdb
>>  VENDOR MODEL SERIAL
>>  0x1af4
>>
>> Meanwhile, a similar disk configured on ESXi 5.5 U3b as a 
>> "pass-through RDM" looks like this; this is what I'd like to see in 
>> the bhyve guest also:
>>
>>  linux_in_esxi# lsblk -o vendor,model,serial /dev/sdb
>>  VENDOR   MODEL            SERIAL
>>  HITACHI  OPEN-V-CM        60060e801602a100000102a100000bba
>>
>> Thank you!
>
> Hi Gregg
>
> There is a patch for this, but you have to apply manually for 12.1R
>
> You can get it here
>
> https://reviews.freebsd.org/D24174

Wanpeng, thank you!

I installed FreeBSD-13.0-CURRENT-amd64-20200709-r363032-disc1.iso, applied 
your patch, and used this vm-bhyve config:

   disk1_type="ahci-hd"
   disk1_name="/dev/da4,ser=410109,model=OPEN-V-CM"
   disk1_dev="custom"

Which made this bhyve argument:

   -s 5:0,ahci-hd,/dev/da4,ser=410109,model=OPEN-V-CM

Which made the disk look like this in the guest:

   linux_in_bhyve# lsblk --output vendor,model,serial /dev/sda
   VENDOR   MODEL            SERIAL
   ATA      OPEN-V-CM        410109

This is really neat.  Thanks for your patch.

Unfortunately, the software I'm using checks both the vendor and model 
fields.

I think it's happy with the model field now, but it's seeing "ATA" for the 
vendor and it wants "HITACHI."

I'm guessing that ATA itself may not really support this vendor field.  I 
noticed that the ESXi VM has a virtual SCSI HBA instead.

Do you know how I can make this disk's vendor field "HITACHI" instead of 
"ATA," in a bhyve guest?

Thank you again for your patch Wanpeng.


More information about the freebsd-virtualization mailing list