qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 00/12] Introduce new acpi/smbios qtests using biosbits


From: Ani Sinha
Subject: Re: [PATCH 00/12] Introduce new acpi/smbios qtests using biosbits
Date: Mon, 27 Jun 2022 12:25:54 +0530

On Mon, Jun 27, 2022 at 12:22 PM Ani Sinha <ani@anisinha.ca> wrote:
>
> On Mon, Jun 27, 2022 at 12:14 PM Ani Sinha <ani@anisinha.ca> wrote:
> >
> > Biosbits is a software written by Josh Triplett that can be downloaded by
> > visiting https://biosbits.org/. The github codebase can be found here:
> > https://github.com/biosbits/bits/tree/master. It is a software that 
> > exercizes
> > the bios components such as acpi and smbios tables directly through acpica
> > bios interpreter (a freely available C based library written by Intel,
> > downloadable from https://acpica.org/ and is included with biosbits) 
> > without an
> > operating system getting involved in between.
> > There are several advantages to directly testing the bios in a real physical
> > machine or VM as opposed to indirectly discovering bios issues through the
> > operating system. For one thing, the OSes tend to hide bios problems from 
> > the
> > end user. The other is that we have more control of what we wanted to test
> > and how by directly using acpica interpreter on top of the bios on a running
> > system. More details on the inspiration for developing biosbits and its real
> > life uses can be found in (a) and (b).
> > This patchset contains QEMU qtests written in python that exercizes the QEMU
> > bios components using biosbits and reports test failures.
> >
> > Details of each of the files added by this patchset are provided in the 
> > README
> > file which is part of Patch 11. Every effort to contact Josh, through 
> > various
> > means including email, twitter, linkedIn etc has failed. Hence, the changes 
> > to
> > build biosbits with the newer compiler, upgrade acpica and other changes are
> > currently maintained in a forked project in my personal github. We may want 
> > to
> > maintain bits in a separate fork in a stable repository that is accessible 
> > by
> > QEMU developers.
> >
> > The newly introduced qtest currently only run for x86_64 platform. They pass
> > both when running make check on a baremetal box as well as from inside a vm.
> >
> > Thanks to Igor M for pointing me to this work.
> >
> > (a) 
> > https://blog.linuxplumbersconf.org/2011/ocw/system/presentations/867/original/bits.pdf
> > (b) https://www.youtube.com/watch?v=36QIepyUuhg
>
> Doh, sending the patch series failed since google won't allow file
> sizes larger than 25 MB. The bits prebuilt binaries have sizes 30 MB
> and 40 MB in two separate patches :(

I have pushed the patchset here:
https://gitlab.com/anisinha/qemu/-/commits/acpi-bits .

>
> >
> > Ani Sinha (12):
> >   qtest: meson.build changes required to integrate python based qtests
> >   acpi/tests/bits: add prebuilt bios bits zip archive
> >   acpi/tests/bits: add prebuilt bits generated grub modules and scripts
> >   acpi/tests/bits: initial commit of test scripts that are run by
> >     biosbits
> >   acpi/tests/bits: disable acpi PSS tests that are failing in biosbits
> >   acpi/tests/bits: add smilatency test suite from bits in order to
> >     disable it
> >   acpi/tests/bits: disable smilatency test since it does not pass
> >     everytime
> >   acpi/tests/bits: add biosbits config file for running bios tests
> >   acpi/tests/bits: add acpi and smbios python tests that uses biosbits
> >   acpi/tests/bits: add acpi bits qtest directory in meson for running
> >     tests
> >   acpi/tests/bits: add README file for bits qtests
> >   MAINTAINERS: add myself as the maintainer for acpi biosbits qtests
> >
> >  MAINTAINERS                                   |    5 +
> >  tests/qtest/acpi-bits/README                  |  168 ++
> >  tests/qtest/acpi-bits/acpi-bits-test-venv.sh  |   59 +
> >  tests/qtest/acpi-bits/acpi-bits-test.py       |  327 +++
> >  .../qtest/acpi-bits/bits-config/bits-cfg.txt  |   18 +
> >  tests/qtest/acpi-bits/bits-config/meson.build |   11 +
> >  tests/qtest/acpi-bits/bits-tests/meson.build  |   11 +
> >  tests/qtest/acpi-bits/bits-tests/smbios.py    | 2430 +++++++++++++++++
> >  .../qtest/acpi-bits/bits-tests/smilatency.py  |  103 +
> >  tests/qtest/acpi-bits/bits-tests/testacpi.py  |  283 ++
> >  tests/qtest/acpi-bits/bits-tests/testcpuid.py |   83 +
> >  tests/qtest/acpi-bits/meson.build             |   39 +
> >  .../acpi-bits/prebuilt/bits-2095-grub.tar.gz  |  Bin 0 -> 41416278 bytes
> >  tests/qtest/acpi-bits/prebuilt/bits-2095.zip  |  Bin 0 -> 31922898 bytes
> >  tests/qtest/acpi-bits/prebuilt/meson.build    |   11 +
> >  tests/qtest/acpi-bits/requirements.txt        |    1 +
> >  tests/qtest/meson.build                       |    7 +-
> >  17 files changed, 3555 insertions(+), 1 deletion(-)
> >  create mode 100644 tests/qtest/acpi-bits/README
> >  create mode 100644 tests/qtest/acpi-bits/acpi-bits-test-venv.sh
> >  create mode 100644 tests/qtest/acpi-bits/acpi-bits-test.py
> >  create mode 100644 tests/qtest/acpi-bits/bits-config/bits-cfg.txt
> >  create mode 100644 tests/qtest/acpi-bits/bits-config/meson.build
> >  create mode 100644 tests/qtest/acpi-bits/bits-tests/meson.build
> >  create mode 100644 tests/qtest/acpi-bits/bits-tests/smbios.py
> >  create mode 100644 tests/qtest/acpi-bits/bits-tests/smilatency.py
> >  create mode 100644 tests/qtest/acpi-bits/bits-tests/testacpi.py
> >  create mode 100644 tests/qtest/acpi-bits/bits-tests/testcpuid.py
> >  create mode 100644 tests/qtest/acpi-bits/meson.build
> >  create mode 100644 tests/qtest/acpi-bits/prebuilt/bits-2095-grub.tar.gz
> >  create mode 100644 tests/qtest/acpi-bits/prebuilt/bits-2095.zip
> >  create mode 100644 tests/qtest/acpi-bits/prebuilt/meson.build
> >  create mode 100644 tests/qtest/acpi-bits/requirements.txt
> >
> > --
> > 2.25.1
> >



reply via email to

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