On Wed, Jul 01, 2020 at 04:49:49PM +0200, Vitaly Kuznetsov wrote: > Xiaoyao Li <xiaoyao.li@xxxxxxxxx> writes: > > So you want an exit to userspace for every bus lock and leave it all to > > userspace. Yes, it's doable. > > In some cases we may not even want to have a VM exit: think > e.g. real-time/partitioning case when even in case of bus lock we may > not want to add additional latency just to count such events. Hmm, I suspect this isn't all that useful for real-time cases because they'd probably want to prevent the split lock in the first place, e.g. would prefer to use the #AC variant in fatal mode. Of course, the availability of split lock #AC is a whole other can of worms. But anyways, I 100% agree that this needs either an off-by-default module param or an opt-in per-VM capability. > I'd suggest we make the new capability tri-state: > - disabled (no vmexit, default) > - stats only (what this patch does) > - userspace exit > But maybe this is an overkill, I'd like to hear what others think. Userspace exit would also be interesting for debug. Another throttling option would be schedule() or cond_reched(), though that's probably getting into overkill territory.