On Fri, Jul 12, 2024 at 09:44:16AM -0700, Sean Christopherson wrote: > On Fri, Jul 12, 2024, Steven Rostedt wrote: > > On Fri, 12 Jul 2024 10:09:03 -0400 > > Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> wrote: > > > > > > > > > > Steven Rostedt told me, what we instead need is a tracepoint callback in a > > > > driver, that does the boosting. > > > > > > I utterly dislike changing the system behavior through tracepoints. They were > > > designed to observe the system, not modify its behavior. If people start abusing > > > them, then subsystem maintainers will stop adding them. Please don't do that. > > > Add a notifier or think about integrating what you are planning to add into the > > > driver instead. > > > > I tend to agree that a notifier would be much better than using > > tracepoints, but then I also think eBPF has already let that cat out of > > the bag. :-p > > > > All we need is a notifier that gets called at every VMEXIT. > > Why? The only argument I've seen for needing to hook VM-Exit is so that the > host can speculatively boost the priority of the vCPU when deliverying an IRQ, > but (a) I'm unconvinced that is necessary, i.e. that the vCPU needs to be boosted > _before_ the guest IRQ handler is invoked and (b) it has almost no benefit on > modern hardware that supports posted interrupts and IPI virtualization, i.e. for > which there will be no VM-Exit. I am a bit confused by your statement Sean, because if a higher prio HOST thread wakes up on the vCPU thread's phyiscal CPU, then a VM-Exit should happen. That has nothing to do with IRQ delivery. What am I missing? thanks, - Joel