-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TDX: Add support for kernel interrupt offloading #124
TDX: Add support for kernel interrupt offloading #124
Conversation
ef9f463
to
b9551be
Compare
Marking as non-draft & ready for review since the only additional change will be a kernel package bump. GitHub copy of the kernel PR: microsoft/OHCL-Linux-Kernel#26 |
While we're making kernel changes in this area, can we also make whatever changes are needed for the same code to support Guest VSM (i.e. separate tracking of interrupts for VTL 0 and VTL 1)? We're going to need it at some point. We need it for SNP too. |
The new version only turns on kernel offloading if the next vtl is vtl0. Is that sufficient for now? |
This is going to conflict with #470. |
LGTM but we'll need to update the kernel first. |
Honestly I don't think I'm familiar enough with offloading to say for sure. But my understanding is it's solely a perf improvement, and not needed functionality, correct? And if we combine that with believing that VTL 1 will be running a very small percentage of the time compared to VTL 0, and will not be receiving many interrupts, then maybe this perf change isn't necessary for it? |
Definitely yes on "solely a perf improvement, and not needed functionality", and my understanding is yes for the second |
ff870ee
to
07206db
Compare
07206db
to
196e46b
Compare
Rebased, kernel update now included (#568) |
The user<-> kernel transitions during IPI handling incur a significant amount of overhead on both the send and receive sides. These changes support handling IPIs entirely in-kernel, eliminating these transitions.
The user<-> kernel transitions during IPI handling incur a significant amount of overhead on both the send and receive sides. These changes support handling IPIs entirely in-kernel, eliminating these transitions.
…t offloading (#616) flowey: Remove kernel version from step name CP from (#617) No changes. Update OHCL kernel to 6.6.63.1 CP from (#568) YAML change in original commit ignored. No other changes. TDX: Add support for kernel interrupt offloading CP from (#124) Changed to use `LapicState`'s `halted`, `idle`, `startup_suspend` fields instead of the `MpState` enum, as (#470) is not present in this branch. --------- Co-authored-by: Ben Hillis <[email protected]> Co-authored-by: Ben Hillis <[email protected]>
The user<-> kernel transitions during IPI handling incur a significant amount of overhead on both the send and receive sides. These changes support handling IPIs entirely in-kernel, eliminating these transitions.