Thread (180 messages) 180 messages, 16 authors, 2020-06-23

Re: Should SEV-ES #VC use IST? (Re: [PATCH] Allow RDTSC and RDTSCP from userspace)

From: Peter Zijlstra <peterz@infradead.org>
Date: 2020-06-23 11:50:52
Also in: kvm, lkml

On Tue, Jun 23, 2020 at 01:43:24PM +0200, Joerg Roedel wrote:
On Tue, Jun 23, 2020 at 01:14:43PM +0200, Peter Zijlstra wrote:
quoted
On Tue, Jun 23, 2020 at 01:11:07PM +0200, Joerg Roedel wrote:
quoted
quoted
The v3 patchset implements an unconditional shift of the #VC IST entry
in the NMI handler, before it can trigger a #VC exception.
Going by that other thread -- where you said that any memory access can
trigger a #VC, there just isn't such a guarantee.
As I wrote in the other mail, this can only happen when SNP gets enabled
(which is follow-on work to this) and is handled by a stack recursion
check in the #VC handler.

The reason I mentioned the #VC-anywhere case is to make it more clear
why #VC needs an IST handler.
If SNP is the sole reason #VC needs to be IST, then I'd strongly urge
you to only make it IST if/when you try and make SNP happen, not before.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help