[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 00/12] Introduce new acpi/smbios qtests using biosbits
From: |
Ani Sinha |
Subject: |
[PATCH 00/12] Introduce new acpi/smbios qtests using biosbits |
Date: |
Mon, 27 Jun 2022 12:58:44 +0530 |
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
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
- [PATCH 00/12] Introduce new acpi/smbios qtests using biosbits,
Ani Sinha <=
- [PATCH 05/12] acpi/tests/bits: disable acpi PSS tests that are failing in biosbits, Ani Sinha, 2022/06/27
- [PATCH 06/12] acpi/tests/bits: add smilatency test suite from bits in order to disable it, Ani Sinha, 2022/06/27
- [PATCH 07/12] acpi/tests/bits: disable smilatency test since it does not pass everytime, Ani Sinha, 2022/06/27
- [PATCH 08/12] acpi/tests/bits: add biosbits config file for running bios tests, Ani Sinha, 2022/06/27
- [PATCH 09/12] acpi/tests/bits: add acpi and smbios python tests that uses biosbits, Ani Sinha, 2022/06/27