> Suppose your KVM thing claims counter 0/2 (ICL/SKL) for some random PEBS > event, and then the host wants to use PREC_DIST.. Then one of them will > be screwed for no reason what so ever. It's no different from some user using an event that requires some specific counter. > > How is that not destroying scheduling freedom? Any other situation we'd > have moved the !PREC_DIST PEBS event to another counter. Anyways what are you suggesting to do instead? Do you have a better proposal? The only alternative I know to doing this would be to go through the PEBS buffer in the guest and patch the applicable counter field up on each PMI. I tried that at some point (still have code somewhere), but it was quite complicated and tricky and somewhat slow, so I gave up eventually. It's also inherently racy because if the guest starts looking at the PEBS buffer before an PMI it could see the unpatched values Given I don't know any real software which would break from this, but such "polled PEBS" usages are certainly concievable. The artificial constraint is a lot simpler and straight forward, and also doesn't have any holes like this. -Andi