From: Sean Christopherson <seanjc@google.com>
To: Michal Luczaj <mhal@rbox.co>
Cc: kvm@vger.kernel.org, pbonzini@redhat.com
Subject: Re: [kvm-unit-tests PATCH] x86/emulator: Test POP-SS blocking
Date: Thu, 25 Aug 2022 17:56:46 +0000 [thread overview]
Message-ID: <Ywe33k3yvXCzSh8a@google.com> (raw)
In-Reply-To: <635a6f6b-a3b0-401f-dfd4-3a8c27f65774@rbox.co>
On Thu, Aug 25, 2022, Michal Luczaj wrote:
> On 8/25/22 19:03, Sean Christopherson wrote:
> > On Wed, Aug 24, 2022, Michal Luczaj wrote:
> >> \
> >> n = 0; \
> >> asm volatile(/* jump to 32-bit code segment */ \
> >> "ljmp *1f\n\t" \
> >> "1:\n\t" \
> >> " .long 2f\n\t" \
> >> " .word " xstr(KERNEL_CS32) "\n\t" \
> >> /* exercise POP SS blocking */ \
> >> ".code32\n\t" \
> >> "2: lea 3f, %0\n\t" \
> >> "mov %0, %%dr0\n\t" \
> >> "push %%ss\n\t" \
> >> fep1 "pop %%ss\n\t" \
> >> fep2 "3: xor %0, %0\n\t" \
> >> /* back to long mode */ \
> >> "ljmp %[cs64], $4f\n\t" \
> >> ".code64\n\t" \
> >
> > Ooh, I see what you meant by temporarily switching to 32-bit mode. I was thinking
> > we could just make the POP SS testcase 32-bit only, but I didn't realize this test
> > is 64-bit only. Argh, and so is emulate.c. And now I get why you added a brand
> > new test.
> >
> > Let's just add a new test. The above can work, but it relies on the code and
> > stack being mapped with a 32-bit address, e.g. will break if KUT is ever changed
> > to not map everything low in the virtual address space.
>
> Yeah, it is fragile in that sense. But does it mean code such as
> vmx_tests.c:into_guest_main() or svm_tests.c:svm_of_test_guest() should be moved
> to 32-bit binaries?
Ideally? Yeah. In practice, it's just not worth replicating all the nSVM/nVMX
setup for 32-bit binaries.
next prev parent reply other threads:[~2022-08-25 17:56 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-21 21:59 [PATCH] KVM: x86/emulator: Fix handing of POP SS to correctly set interruptibility Michal Luczaj
2022-08-21 22:06 ` [kvm-unit-tests PATCH] x86/emulator: Test POP-SS blocking Michal Luczaj
2022-08-22 2:40 ` Michal Luczaj
2022-08-22 15:42 ` Sean Christopherson
2022-08-22 18:30 ` Nadav Amit
2022-08-22 18:37 ` Sean Christopherson
2022-08-23 0:16 ` Michal Luczaj
2022-08-24 18:32 ` Sean Christopherson
2022-08-24 21:49 ` Michal Luczaj
2022-08-25 17:03 ` Sean Christopherson
2022-08-25 17:32 ` Michal Luczaj
2022-08-25 17:56 ` Sean Christopherson [this message]
2022-08-24 0:20 ` [PATCH] KVM: x86/emulator: Fix handing of POP SS to correctly set interruptibility Sean Christopherson
2022-08-24 17:19 ` Paolo Bonzini
2022-08-30 21:41 ` Sean Christopherson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Ywe33k3yvXCzSh8a@google.com \
--to=seanjc@google.com \
--cc=kvm@vger.kernel.org \
--cc=mhal@rbox.co \
--cc=pbonzini@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.