Page MenuHomeFreeBSD

libvmmapi: Make vm_raise_msi() a common function
ClosedPublic

Authored by markj on Sep 6 2023, 12:29 AM.
Tags
None
Referenced Files
F104791936: D41752.diff
Mon, Dec 9, 5:41 PM
Unknown Object (File)
Sun, Nov 17, 10:39 PM
Unknown Object (File)
Sun, Nov 17, 6:14 PM
Unknown Object (File)
Wed, Nov 13, 7:37 PM
Unknown Object (File)
Tue, Nov 12, 1:57 PM
Unknown Object (File)
Nov 5 2024, 7:51 AM
Unknown Object (File)
Oct 21 2024, 5:11 PM
Unknown Object (File)
Sep 25 2024, 8:41 AM
Subscribers

Details

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 Not Applicable
Unit
Tests Not Applicable

Event Timeline

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

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