qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: qemu-devel@nongnu.org
Cc: Peter Maydell <peter.maydell@linaro.org>,
	Igor Mammedov <imammedo@redhat.com>,
	Ani Sinha <anisinha@redhat.com>,
	Fiona Ebner <f.ebner@proxmox.com>
Subject: [PULL 04/24] tests: smbios: make it possible to write SMBIOS only test
Date: Mon, 18 Mar 2024 12:15:39 -0400	[thread overview]
Message-ID: <53002d9028f9d8b3215dafd7c0a55047bb5c9804.1710778506.git.mst@redhat.com> (raw)
In-Reply-To: <cover.1710778506.git.mst@redhat.com>

From: Igor Mammedov <imammedo@redhat.com>

Cureently it not possible to run SMBIOS test without ACPI one,
which gets into the way when testing ACPI-less configs.

Extract SMBIOS testing into separate routines that could also
be run without ACPI dependency and use that for testing SMBIOS.

As the 1st user add "acpi/piix4/smbios-options" test case.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Reviewed-by: Ani Sinha <anisinha@redhat.com>
Tested-by: Fiona Ebner <f.ebner@proxmox.com>
Message-Id: <20240314152302.2324164-2-imammedo@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
 tests/qtest/bios-tables-test.c | 47 +++++++++++++++++++++++++++-------
 1 file changed, 38 insertions(+), 9 deletions(-)

diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c
index 21811a1ab5..b2992bafa8 100644
--- a/tests/qtest/bios-tables-test.c
+++ b/tests/qtest/bios-tables-test.c
@@ -858,6 +858,27 @@ static void test_vm_prepare(const char *params, test_data *data)
     g_free(args);
 }
 
+static void process_smbios_tables_noexit(test_data *data)
+{
+    /*
+     * TODO: make SMBIOS tests work with UEFI firmware,
+     * Bug on uefi-test-tools to provide entry point:
+     * https://bugs.launchpad.net/qemu/+bug/1821884
+     */
+    if (!(data->uefi_fl1 && data->uefi_fl2)) {
+        SmbiosEntryPointType ep_type = test_smbios_entry_point(data);
+        test_smbios_structs(data, ep_type);
+    }
+}
+
+static void test_smbios(const char *params, test_data *data)
+{
+    test_vm_prepare(params, data);
+    boot_sector_test(data->qts);
+    process_smbios_tables_noexit(data);
+    qtest_quit(data->qts);
+}
+
 static void process_acpi_tables_noexit(test_data *data)
 {
     test_acpi_load_tables(data);
@@ -868,15 +889,7 @@ static void process_acpi_tables_noexit(test_data *data)
         test_acpi_asl(data);
     }
 
-    /*
-     * TODO: make SMBIOS tests work with UEFI firmware,
-     * Bug on uefi-test-tools to provide entry point:
-     * https://bugs.launchpad.net/qemu/+bug/1821884
-     */
-    if (!(data->uefi_fl1 && data->uefi_fl2)) {
-        SmbiosEntryPointType ep_type = test_smbios_entry_point(data);
-        test_smbios_structs(data, ep_type);
-    }
+    process_smbios_tables_noexit(data);
 }
 
 static void process_acpi_tables(test_data *data)
@@ -2064,6 +2077,20 @@ static void test_acpi_q35_pvpanic_isa(void)
     free_test_data(&data);
 }
 
+static void test_acpi_pc_smbios_options(void)
+{
+    uint8_t req_type11[] = { 11 };
+    test_data data = {
+        .machine = MACHINE_PC,
+        .variant = ".pc_smbios_options",
+        .required_struct_types = req_type11,
+        .required_struct_types_len = ARRAY_SIZE(req_type11),
+    };
+
+    test_smbios("-smbios type=11,value=TEST", &data);
+    free_test_data(&data);
+}
+
 static void test_oem_fields(test_data *data)
 {
     int i;
@@ -2215,6 +2242,8 @@ int main(int argc, char *argv[])
 #ifdef CONFIG_POSIX
             qtest_add_func("acpi/piix4/acpierst", test_acpi_piix4_acpi_erst);
 #endif
+            qtest_add_func("acpi/piix4/smbios-options",
+                           test_acpi_pc_smbios_options);
         }
         if (qtest_has_machine(MACHINE_Q35)) {
             qtest_add_func("acpi/q35", test_acpi_q35_tcg);
-- 
MST



  parent reply	other threads:[~2024-03-18 16:16 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-18 16:15 [PULL 00/24] virtio,pc,pci: bugfixes Michael S. Tsirkin
2024-03-18 16:15 ` [PULL 01/24] SMBIOS: fix long lines Michael S. Tsirkin
2024-03-18 16:15 ` [PULL 02/24] qapi: document PCIe Gen5/Gen6 speeds since 9.0 Michael S. Tsirkin
2024-03-18 16:15 ` [PULL 03/24] docs/specs/pvpanic: mark shutdown event as not implemented Michael S. Tsirkin
2024-03-18 16:15 ` Michael S. Tsirkin [this message]
2024-03-18 16:15 ` [PULL 05/24] tests: smbios: add test for -smbios type=11 option Michael S. Tsirkin
2024-03-18 16:15 ` [PULL 06/24] tests: smbios: add test for legacy mode CLI options Michael S. Tsirkin
2024-03-18 16:15 ` [PULL 07/24] smbios: cleanup smbios_get_tables() from legacy handling Michael S. Tsirkin
2024-03-18 16:15 ` [PULL 08/24] smbios: get rid of smbios_smp_sockets global Michael S. Tsirkin
2024-03-18 16:15 ` [PULL 09/24] smbios: get rid of smbios_legacy global Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 10/24] smbios: avoid mangling user provided tables Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 11/24] smbios: don't check type4 structures in legacy mode Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 12/24] smbios: add smbios_add_usr_blob_size() helper Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 13/24] smbios: rename/expose structures/bitmaps used by both legacy and modern code Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 14/24] smbios: build legacy mode code only for 'pc' machine Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 15/24] smbios: handle errors consistently Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 16/24] smbios: get rid of global smbios_ep_type Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 17/24] smbios: clear smbios_type4_count before building tables Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 18/24] smbios: extend smbios-entry-point-type with 'auto' value Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 19/24] smbios: in case of entry point is 'auto' try to build v2 tables 1st Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 20/24] smbios: error out when building type 4 table is not possible Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 21/24] tests: acpi/smbios: whitelist expected blobs Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 22/24] pc/q35: set SMBIOS entry point type to 'auto' by default Michael S. Tsirkin
2024-03-18 16:16 ` [PULL 23/24] tests: acpi: update expected SSDT.dimmpxm blob Michael S. Tsirkin
2024-03-18 16:17 ` [PULL 24/24] smbios: add extra comments to smbios_get_table_legacy() Michael S. Tsirkin
2024-03-19 14:25 ` [PULL 00/24] virtio,pc,pci: bugfixes Peter Maydell

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=53002d9028f9d8b3215dafd7c0a55047bb5c9804.1710778506.git.mst@redhat.com \
    --to=mst@redhat.com \
    --cc=anisinha@redhat.com \
    --cc=f.ebner@proxmox.com \
    --cc=imammedo@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).