qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 04/15] tests: acpi: q35: test for x2APIC entries in SRAT


From: Igor Mammedov
Subject: Re: [PATCH v2 04/15] tests: acpi: q35: test for x2APIC entries in SRAT
Date: Wed, 20 Oct 2021 10:53:48 +0200

On Wed, 20 Oct 2021 04:18:07 -0400
"Michael S. Tsirkin" <mst@redhat.com> wrote:

> On Wed, Oct 20, 2021 at 10:16:07AM +0200, Igor Mammedov wrote:
> > On Tue, 19 Oct 2021 07:44:38 -0400
> > "Michael S. Tsirkin" <mst@redhat.com> wrote:
> >   
> > > On Tue, Oct 19, 2021 at 01:36:24PM +0200, Igor Mammedov wrote:  
> > > > On Tue, 19 Oct 2021 06:23:40 -0400
> > > > "Michael S. Tsirkin" <mst@redhat.com> wrote:
> > > >     
> > > > > On Tue, Oct 19, 2021 at 11:48:25AM +0200, Igor Mammedov wrote:    
> > > > > > On Mon, 18 Oct 2021 17:31:33 -0400
> > > > > > "Michael S. Tsirkin" <mst@redhat.com> wrote:
> > > > > >       
> > > > > > > On Thu, Sep 02, 2021 at 07:35:40AM -0400, Igor Mammedov wrote:    
> > > > > > >   
> > > > > > > > Set -smp 1,maxcpus=288 to test for ACPI code that
> > > > > > > > deal with CPUs with large APIC ID (>255).
> > > > > > > > 
> > > > > > > > PS:
> > > > > > > > Test requires KVM and in-kernel irqchip support,
> > > > > > > > so skip test if KVM is not available.
> > > > > > > > 
> > > > > > > > Signed-off-by: Igor Mammedov <imammedo@redhat.com>
> > > > > > > > ---
> > > > > > > > v3:
> > > > > > > >   - add dedicated test instead of abusing 'numamem' one
> > > > > > > >   - add 'kvm' prefix to the test name
> > > > > > > >       ("Michael S. Tsirkin" <mst@redhat.com>)
> > > > > > > > v2:
> > > > > > > >   - switch to qtest_has_accel() API
> > > > > > > > 
> > > > > > > > CC: thuth@redhat.com
> > > > > > > > CC: lvivier@redhat.com
> > > > > > > > ---
> > > > > > > >  tests/qtest/bios-tables-test.c | 17 +++++++++++++++++
> > > > > > > >  1 file changed, 17 insertions(+)
> > > > > > > > 
> > > > > > > > diff --git a/tests/qtest/bios-tables-test.c 
> > > > > > > > b/tests/qtest/bios-tables-test.c
> > > > > > > > index 51d3a4e239..1f6779da87 100644
> > > > > > > > --- a/tests/qtest/bios-tables-test.c
> > > > > > > > +++ b/tests/qtest/bios-tables-test.c
> > > > > > > > @@ -1033,6 +1033,19 @@ static void 
> > > > > > > > test_acpi_q35_tcg_numamem(void)
> > > > > > > >      free_test_data(&data);
> > > > > > > >  }
> > > > > > > >  
> > > > > > > > +static void test_acpi_q35_kvm_xapic(void)
> > > > > > > > +{
> > > > > > > > +    test_data data;
> > > > > > > > +
> > > > > > > > +    memset(&data, 0, sizeof(data));
> > > > > > > > +    data.machine = MACHINE_Q35;
> > > > > > > > +    data.variant = ".xapic";
> > > > > > > > +    test_acpi_one(" -object 
> > > > > > > > memory-backend-ram,id=ram0,size=128M"
> > > > > > > > +                  " -numa node -numa node,memdev=ram0"
> > > > > > > > +                  " -machine kernel-irqchip=on -smp 
> > > > > > > > 1,maxcpus=288", &data);
> > > > > > > > +    free_test_data(&data);
> > > > > > > > +}
> > > > > > > > +
> > > > > > > >  static void test_acpi_q35_tcg_nosmm(void)
> > > > > > > >  {
> > > > > > > >      test_data data;        
> > > > > > > 
> > > > > > > 
> > > > > > > This causes an annoying message each time I run it:
> > > > > > > 
> > > > > > > qemu-system-x86_64: -accel kvm: warning: Number of hotpluggable 
> > > > > > > cpus requested (288) exceeds the recommended cpus supported by 
> > > > > > > KVM (240)
> > > > > > > 
> > > > > > > what gives?      
> > > > > > 
> > > > > > it depends on kernel, see kvm_recommended_vcpus().
> > > > > > 
> > > > > > We probably should bump it on upstream kernel side
> > > > > > (it's much more than that in RHEL8).
> > > > > > 
> > > > > > Is there anything that prevents bumping upstream kernel limits?     
> > > > > >  
> > > > > 
> > > > > what should we do with the annoying warning though?    
> > > > 
> > > > I'd leave it alone.
> > > > What do you suggest?
> > > >      
> > > 
> > > reduce the value so a typical system does not trigger it?  
> > 
> > it won't work, test needs as minimum 255 vcpus to trigger X2APIC logic
> > and 288 value additionally tests max limits  
> 
> Add a flag to disable the warning while running this specific test?

if it were qtest accel, it would be trivial but
I'm not aware of something similar for tcg/kvm mode.
Do you suggest to add to QEMU a CLI option for that?



> 
> > >   
> > > > > > > > @@ -1506,6 +1519,7 @@ static void 
> > > > > > > > test_acpi_oem_fields_virt(void)
> > > > > > > >  int main(int argc, char *argv[])
> > > > > > > >  {
> > > > > > > >      const char *arch = qtest_get_arch();
> > > > > > > > +    const bool has_kvm = qtest_has_accel("kvm");
> > > > > > > >      int ret;
> > > > > > > >  
> > > > > > > >      g_test_init(&argc, &argv, NULL);
> > > > > > > > @@ -1561,6 +1575,9 @@ int main(int argc, char *argv[])
> > > > > > > >          if (strcmp(arch, "x86_64") == 0) {
> > > > > > > >              qtest_add_func("acpi/microvm/pcie", 
> > > > > > > > test_acpi_microvm_pcie_tcg);
> > > > > > > >          }
> > > > > > > > +        if (has_kvm) {
> > > > > > > > +            qtest_add_func("acpi/q35/kvm/xapic", 
> > > > > > > > test_acpi_q35_kvm_xapic);
> > > > > > > > +        }
> > > > > > > >      } else if (strcmp(arch, "aarch64") == 0) {
> > > > > > > >          qtest_add_func("acpi/virt", test_acpi_virt_tcg);
> > > > > > > >          qtest_add_func("acpi/virt/numamem", 
> > > > > > > > test_acpi_virt_tcg_numamem);
> > > > > > > > -- 
> > > > > > > > 2.27.0        
> > > > > > >       
> > > > >     
> > >   
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]