Messages in this thread | | | Subject | Re: [PATCH v3 04/17] perf: x86/ds: Handle guest PEBS overflow PMI and inject it to guest | From | "Xu, Like" <> | Date | Fri, 15 Jan 2021 23:12:25 +0800 |
| |
On 2021/1/15 22:44, Peter Zijlstra wrote: > On Fri, Jan 15, 2021 at 10:30:13PM +0800, Xu, Like wrote: > >>> Are you sure? Spurious NMI/PMIs are known to happen anyway. We have far >>> too much code to deal with them. >> https://lore.kernel.org/lkml/20170628130748.GI5981@leverpostej/T/ >> >> In the rr workload, the commit change "the PMI interrupts in skid region >> should be dropped" >> is reverted since some users complain that: >> >>> It seems to me that it might be reasonable to ignore the interrupt if >>> the purpose of the interrupt is to trigger sampling of the CPUs >>> register state. But if the interrupt will trigger some other >>> operation, such as a signal on an fd, then there's no reason to drop >>> it. >> I assume that if the PMI drop is unacceptable, either will spurious PMI >> injection. >> >> I'm pretty open if you insist that we really need to do this for guest PEBS >> enabling. > That was an entirely different issue. We were dropping events on the > floor because they'd passed priv boundaries. So there was an actual > event, and we made it go away.
Thanks for your clarification and support.
> What we're talking about here is raising an PMI with BUFFER_OVF set, > even if the DS is empty. That should really be harmless. We'll take the > PMI, find there's nothing there, and do nothing.
The only harm point is confusing the guest PEBS user with the behavior of pebs_interrupt_threshold.
Now that KVM has to break it due to cross-mapping issue, Let me implement this idea in the next version w/ relevant performance data.
| |