All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sean Christopherson <seanjc@google.com>
To: Joerg Roedel <jroedel@suse.de>
Cc: Varad Gautam <varad.gautam@suse.com>,
	kvm@vger.kernel.org, pbonzini@redhat.com, drjones@redhat.com,
	marcorr@google.com, zxwang42@gmail.com, erdemaktas@google.com,
	rientjes@google.com, brijesh.singh@amd.com,
	Thomas.Lendacky@amd.com, bp@suse.de
Subject: Re: [kvm-unit-tests PATCH v3 11/11] x86: AMD SEV-ES: Handle string IO for IOIO #VC
Date: Fri, 15 Apr 2022 16:57:40 +0000	[thread overview]
Message-ID: <YlmkBLz4udVfdpeQ@google.com> (raw)
In-Reply-To: <Yk/nid+BndbMBYCx@suse.de>

On Fri, Apr 08, 2022, Joerg Roedel wrote:
> On Wed, Apr 06, 2022 at 01:50:29AM +0000, Sean Christopherson wrote:
> > On Thu, Feb 24, 2022, Varad Gautam wrote:
> > > Using Linux's IOIO #VC processing logic.
> > 
> > How much string I/O is there in KUT?  I assume it's rare, i.e. avoiding it entirely
> > is probably less work in the long run.
> 
> The problem is that SEV-ES support will silently break if someone adds
> it unnoticed and without testing changes on SEV-ES.

But IMO that is extremely unlikely to happen.  objdump + grep shows that the only
string I/O in KUT comes from the explicit asm in emulator.c and amd_sev.c.  And
the existence of amd_sev.c's version suggests that emulator.c isn't supported.
I.e. this is being added purely for an SEV specific test, which is silly.

And it's not like we're getting validation coverage of the exit_info, that also
comes from software in vc_ioio_exitinfo().

Burying this in the #VC handler makes it so much harder to understand what is
actually be tested, and will make it difficult to test the more interesting edge
cases.  E.g. I'd really like to see a test that requests string I/O emulation for
a buffer that's beyond the allowed size, straddles multiple pages, walks into
non-existent memory, etc.., and doing those with a direct #VMGEXIT will be a lot
easier to write and read then bouncing through the #VC handler.

  reply	other threads:[~2022-04-15 16:57 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-24 10:54 [kvm-unit-tests PATCH v3 00/11] Add #VC exception handling for AMD SEV-ES Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 01/11] x86: AMD SEV-ES: Setup #VC exception handler " Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 02/11] x86: Move svm.h to lib/x86/ Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 03/11] lib: Define unlikely()/likely() macros in libcflat.h Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 04/11] lib: x86: Import insn decoder from Linux Varad Gautam
2022-04-06  1:37   ` Sean Christopherson
2022-04-08  7:42     ` Joerg Roedel
2022-04-15 18:07       ` Sean Christopherson
2022-08-25 16:42         ` Vasant Karasulli
2022-08-26  0:05           ` Sean Christopherson
2023-03-29  9:55     ` Joerg Roedel
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 05/11] x86: AMD SEV-ES: Pull related GHCB definitions and helpers " Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 06/11] x86: AMD SEV-ES: Prepare for #VC processing Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 07/11] lib/x86: Move xsave helpers to lib/ Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 08/11] x86: AMD SEV-ES: Handle CPUID #VC Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 09/11] x86: AMD SEV-ES: Handle MSR #VC Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 10/11] x86: AMD SEV-ES: Handle IOIO #VC Varad Gautam
2022-02-24 10:54 ` [kvm-unit-tests PATCH v3 11/11] x86: AMD SEV-ES: Handle string IO for " Varad Gautam
2022-04-06  1:50   ` Sean Christopherson
2022-04-08  7:43     ` Joerg Roedel
2022-04-15 16:57       ` Sean Christopherson [this message]
2022-04-15 17:22         ` Marc Orr
2022-04-15 17:42           ` Marc Orr
2022-04-15 18:30           ` Sean Christopherson
2022-04-15 18:45             ` Marc Orr
2022-04-15 19:11               ` 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=YlmkBLz4udVfdpeQ@google.com \
    --to=seanjc@google.com \
    --cc=Thomas.Lendacky@amd.com \
    --cc=bp@suse.de \
    --cc=brijesh.singh@amd.com \
    --cc=drjones@redhat.com \
    --cc=erdemaktas@google.com \
    --cc=jroedel@suse.de \
    --cc=kvm@vger.kernel.org \
    --cc=marcorr@google.com \
    --cc=pbonzini@redhat.com \
    --cc=rientjes@google.com \
    --cc=varad.gautam@suse.com \
    --cc=zxwang42@gmail.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.