Page MenuHomeFreeBSD

bhyve: Move the vm_inject_fault() implementation to vmexit.c
ClosedPublic

Authored by markj on Jul 12 2023, 1:51 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 23 2023, 5:38 AM
Unknown Object (File)
Dec 20 2023, 1:10 AM
Unknown Object (File)
Dec 11 2023, 2:27 AM
Unknown Object (File)
Oct 31 2023, 7:59 PM
Unknown Object (File)
Oct 4 2023, 11:47 PM
Unknown Object (File)
Sep 9 2023, 2:46 PM
Unknown Object (File)
Aug 27 2023, 2:53 PM
Unknown Object (File)
Aug 14 2023, 2:09 PM
Subscribers

Details

Summary

This function isn't generic and has a different signature on arm64. No
functional change intended.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

markj requested review of this revision.Jul 12 2023, 1:51 PM
This revision is now accepted and ready to land.Jul 12 2023, 6:43 PM
corvink added inline comments.
usr.sbin/bhyve/amd64/vmexit.c
60

I'm not familiar with arm64 but this function strongly looks like a generic one. Is it really so different, that it's not worth creating a generic function?

usr.sbin/bhyve/amd64/vmexit.c
60

The difference is that the arguments are all MD. On ARM64 rather than using an IDT vector and error code pushed on the stack you have ESR and FAR register values. The notion of injecting a fault is generic, but the specific status codes and registers involved are all MD.

This revision was automatically updated to reflect the committed changes.
markj marked 2 inline comments as done.