public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [kvm-unit-tests PATCH] ci/cirrus-ci-fedora.yml: Disable the "memory" test in the KVM job
@ 2023-04-03 11:26 Thomas Huth
  2023-04-03 15:24 ` Sean Christopherson
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Huth @ 2023-04-03 11:26 UTC (permalink / raw)
  To: kvm; +Cc: Paolo Bonzini, Sean Christopherson

Two of the sub-tests are currently failing in the Fedora KVM job
on Cirrus-CI:

FAIL: clflushopt (ABSENT)
FAIL: clwb (ABSENT)

Looks like the features have been marked as disabled in the L0 host,
while the hardware supports them. Since neither VMX nor SVM have
intercept controls for the instructions, KVM has no way to enforce the
guest's CPUID model, so this test is failing now in this environment.
There's not much we can do here except for disabling the test here.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 ci/cirrus-ci-fedora.yml | 1 -
 1 file changed, 1 deletion(-)

diff --git a/ci/cirrus-ci-fedora.yml b/ci/cirrus-ci-fedora.yml
index 918c9a36..c83aff46 100644
--- a/ci/cirrus-ci-fedora.yml
+++ b/ci/cirrus-ci-fedora.yml
@@ -35,7 +35,6 @@ fedora_task:
         ioapic
         ioapic-split
         kvmclock_test
-        memory
         pcid-asymmetric
         pcid-disabled
         pcid-enabled
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [kvm-unit-tests PATCH] ci/cirrus-ci-fedora.yml: Disable the "memory" test in the KVM job
  2023-04-03 11:26 [kvm-unit-tests PATCH] ci/cirrus-ci-fedora.yml: Disable the "memory" test in the KVM job Thomas Huth
@ 2023-04-03 15:24 ` Sean Christopherson
  2023-04-03 16:24   ` Paolo Bonzini
  0 siblings, 1 reply; 4+ messages in thread
From: Sean Christopherson @ 2023-04-03 15:24 UTC (permalink / raw)
  To: Thomas Huth; +Cc: kvm, Paolo Bonzini

On Mon, Apr 03, 2023, Thomas Huth wrote:
> Two of the sub-tests are currently failing in the Fedora KVM job
> on Cirrus-CI:
> 
> FAIL: clflushopt (ABSENT)
> FAIL: clwb (ABSENT)
> 
> Looks like the features have been marked as disabled in the L0 host,
> while the hardware supports them. Since neither VMX nor SVM have
> intercept controls for the instructions, KVM has no way to enforce the
> guest's CPUID model, so this test is failing now in this environment.
> There's not much we can do here except for disabling the test here.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  ci/cirrus-ci-fedora.yml | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/ci/cirrus-ci-fedora.yml b/ci/cirrus-ci-fedora.yml
> index 918c9a36..c83aff46 100644
> --- a/ci/cirrus-ci-fedora.yml
> +++ b/ci/cirrus-ci-fedora.yml
> @@ -35,7 +35,6 @@ fedora_task:
>          ioapic
>          ioapic-split
>          kvmclock_test
> -        memory

What if we fix the test by making it TCG-only?  None of the other instructions in
the test have intercepts, i.e. will also fail if the instructions are supported in
bare metal but not the test VM.

An alternative would be to force emulation when using KVM, but KVM doesn't currently
emulating pcommit (deprecated by Intel), clwb, or any of the fence instructions
(at least, not afaict; I'm somewhat surprised *fence isn't "required").

diff --git a/x86/unittests.cfg b/x86/unittests.cfg
index f324e32d..5afb5dad 100644
--- a/x86/unittests.cfg
+++ b/x86/unittests.cfg
@@ -185,6 +185,7 @@ arch = x86_64
 
 [memory]
 file = memory.flat
+accel = tcg
 extra_params = -cpu max
 arch = x86_64

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [kvm-unit-tests PATCH] ci/cirrus-ci-fedora.yml: Disable the "memory" test in the KVM job
  2023-04-03 15:24 ` Sean Christopherson
@ 2023-04-03 16:24   ` Paolo Bonzini
  2023-04-03 16:51     ` Sean Christopherson
  0 siblings, 1 reply; 4+ messages in thread
From: Paolo Bonzini @ 2023-04-03 16:24 UTC (permalink / raw)
  To: Sean Christopherson, Thomas Huth; +Cc: kvm

On 4/3/23 17:24, Sean Christopherson wrote:
> An alternative would be to force emulation when using KVM, but KVM doesn't currently
> emulating pcommit (deprecated by Intel), clwb, or any of the fence instructions
> (at least, not afaict; I'm somewhat surprised *fence isn't "required").
> 
> diff --git a/x86/unittests.cfg b/x86/unittests.cfg
> index f324e32d..5afb5dad 100644
> --- a/x86/unittests.cfg
> +++ b/x86/unittests.cfg
> @@ -185,6 +185,7 @@ arch = x86_64
>   
>   [memory]
>   file = memory.flat
> +accel = tcg
>   extra_params = -cpu max
>   arch = x86_64
> 

I think we should just drop the "CPUID bit non-present" case.

Paolo


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [kvm-unit-tests PATCH] ci/cirrus-ci-fedora.yml: Disable the "memory" test in the KVM job
  2023-04-03 16:24   ` Paolo Bonzini
@ 2023-04-03 16:51     ` Sean Christopherson
  0 siblings, 0 replies; 4+ messages in thread
From: Sean Christopherson @ 2023-04-03 16:51 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: Thomas Huth, kvm

On Mon, Apr 03, 2023, Paolo Bonzini wrote:
> On 4/3/23 17:24, Sean Christopherson wrote:
> > An alternative would be to force emulation when using KVM, but KVM doesn't currently
> > emulating pcommit (deprecated by Intel), clwb, or any of the fence instructions
> > (at least, not afaict; I'm somewhat surprised *fence isn't "required").
> > 
> > diff --git a/x86/unittests.cfg b/x86/unittests.cfg
> > index f324e32d..5afb5dad 100644
> > --- a/x86/unittests.cfg
> > +++ b/x86/unittests.cfg
> > @@ -185,6 +185,7 @@ arch = x86_64
> >   [memory]
> >   file = memory.flat
> > +accel = tcg
> >   extra_params = -cpu max
> >   arch = x86_64
> > 
> 
> I think we should just drop the "CPUID bit non-present" case.

Oh, yeah, that's even better.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-04-03 16:51 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-03 11:26 [kvm-unit-tests PATCH] ci/cirrus-ci-fedora.yml: Disable the "memory" test in the KVM job Thomas Huth
2023-04-03 15:24 ` Sean Christopherson
2023-04-03 16:24   ` Paolo Bonzini
2023-04-03 16:51     ` Sean Christopherson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox