Page MenuHomeFreeBSD

bhyve vtblk: Inform guests of disk resize events.
ClosedPublic

Authored by jhb on May 27 2021, 1:25 PM.

Details

Summary

Register a resize callback with the blockif interface. When the
callback fires, update the size of the disk and notify the guest via a
configuration change interrupt.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

This revision is now accepted and ready to land.Jun 2 2021, 4:11 PM
grehan added inline comments.
usr.sbin/bhyve/pci_virtio_block.c
445

Does the lock need to be taken here ?

usr.sbin/bhyve/pci_virtio_block.c
445

Does the lock need to be taken here ?

I only did it to protect vbc_capacity, but if the lock isn't held when reading that field then it isn't doing much good. Hmm, I guess if we cared about the race we would need to grab the lock again in pci_vtblk_cfgread()? Maybe the race is such that we don't care? Or if cfg reads are rare, maybe it doesn't hurt to be paranoid and lock in the read?

jhb marked an inline comment as done.Jun 12 2021, 12:58 AM
jhb added inline comments.
usr.sbin/bhyve/pci_virtio_block.c
445

I've gone ahead and removed the lock.