From: hshoexer Subject: Re: SEV-ES multiprocessor support / handle WBINDV To: tech@openbsd.org Date: Tue, 25 Nov 2025 11:38:23 +0100 On Tue, Nov 25, 2025 at 10:41:45AM +0100, Stefan Fritsch wrote: > Hi, > > On Thu, 18 Sep 2025, Stefan Fritsch wrote: > > one remaining problem with SEV-ES is that we don't support multiprocessor > > for multiprocessor support with SEV-ES, we need to handle WBINDV in the > VC trap handler. > > This is the the first part of the larger diff that I have sent in the > mail quoted above. > > ok? ok hshoexer > Cheers, > Stefan > > > diff --git a/sys/arch/amd64/amd64/trap.c b/sys/arch/amd64/amd64/trap.c > index 0feb17cbdee..d953e6b54f5 100644 > --- a/sys/arch/amd64/amd64/trap.c > +++ b/sys/arch/amd64/amd64/trap.c > @@ -445,6 +445,16 @@ vctrap(struct trapframe *frame, int user, int *sig, int *code) > } > panic("unexpected MMIO in kernelspace"); > /* NOTREACHED */ > + case SVM_VMEXIT_WBINVD: > + /* > + * There is no special GHCB request for WBNOINVD. > + * Signal WBINVD to emulate WBNOINVD. > + */ > + if (*rip == 0xf3) > + frame->tf_rip += 3; > + else > + frame->tf_rip += 2; > + break; > default: > panic("invalid exit code 0x%llx", ghcb_regs.exitcode); > } > -- > 2.39.5 > >