Page MenuHomeFreeBSD

libvmmapi: Make vm_raise_msi() a common function
AcceptedPublic

Authored by markj on Sep 6 2023, 12:29 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Nov 29, 3:37 AM
Unknown Object (File)
Wed, Nov 29, 2:31 AM
Unknown Object (File)
Mon, Nov 27, 7:31 AM
Unknown Object (File)
Sun, Nov 26, 12:51 PM
Unknown Object (File)
Thu, Nov 23, 9:17 AM
Unknown Object (File)
Wed, Nov 22, 12:13 AM
Unknown Object (File)
Mon, Nov 13, 6:37 AM
Unknown Object (File)
Mon, Nov 13, 6:37 AM
Subscribers

Details

Reviewers
jhb
corvink
andrew
Group Reviewers
bhyve
Summary

Currently, bhyve PCI emulation uses vm_lapic_msi() to raise an MSI in
the guest. The arm64 port has a similar function, vm_raise_msi().
Add vm_raise_msi() on amd64 as well and have it simply call
vm_lapic_msi() so that bhyve can use a common, generically named
function.

For some reason the arm64 VM_RAISE_MSI ioctl takes a PCI device
identifier, but it is unused. Simply remove those parameters from the
arm64 prototype for now.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 53465
Build 50356: arc lint + arc unit

Event Timeline

markj requested review of this revision.Sep 6 2023, 12:29 AM
corvink added inline comments.
lib/libvmmapi/vmmapi.h
171

Nit: This doesn't belong to your change.

This revision is now accepted and ready to land.Sep 6 2023, 9:31 AM
lib/libvmmapi/aarch64/vmmapi_machdep.c
112

If we implement the GICv3 ITS we will likely need some of these fields.

Restore PCI b/s/f tuple parameters.

This revision now requires review to proceed.Sep 6 2023, 2:15 PM

Don't forget to drop the last paragraph from the commit log.

This revision is now accepted and ready to land.Sep 6 2023, 3:14 PM