All of lore.kernel.org
 help / color / mirror / Atom feed
From: Igor Mammedov <imammedo@redhat.com>
To: qemu-devel@nongnu.org
Cc: imammedo@redhat.com, mst@redhat.com,
	Ani Sinha <anisinha@redhat.com>,
	Fiona Ebner <f.ebner@proxmox.com>
Subject: [PATCH v3 01/20] tests: smbios: make it possible to write SMBIOS only test
Date: Tue, 12 Mar 2024 17:10:31 +0100	[thread overview]
Message-ID: <20240312161050.2248814-2-imammedo@redhat.com> (raw)
In-Reply-To: <20240312161050.2248814-1-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>
---
 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,16 +858,8 @@ static void test_vm_prepare(const char *params, test_data *data)
     g_free(args);
 }
 
-static void process_acpi_tables_noexit(test_data *data)
+static void process_smbios_tables_noexit(test_data *data)
 {
-    test_acpi_load_tables(data);
-
-    if (getenv(ACPI_REBUILD_EXPECTED_AML)) {
-        dump_aml_files(data, true);
-    } else {
-        test_acpi_asl(data);
-    }
-
     /*
      * TODO: make SMBIOS tests work with UEFI firmware,
      * Bug on uefi-test-tools to provide entry point:
@@ -879,6 +871,27 @@ static void process_acpi_tables_noexit(test_data *data)
     }
 }
 
+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);
+
+    if (getenv(ACPI_REBUILD_EXPECTED_AML)) {
+        dump_aml_files(data, true);
+    } else {
+        test_acpi_asl(data);
+    }
+
+    process_smbios_tables_noexit(data);
+}
+
 static void process_acpi_tables(test_data *data)
 {
     process_acpi_tables_noexit(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);
-- 
2.39.3



  reply	other threads:[~2024-03-12 16:11 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-12 16:10 [PATCH v3 00/20] Workaround Windows failing to find 64bit SMBIOS entry point with SeaBIOS Igor Mammedov
2024-03-12 16:10 ` Igor Mammedov [this message]
2024-03-12 16:10 ` [PATCH v3 02/20] tests: smbios: add test for -smbios type=11 option Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 03/20] tests: smbios: add test for legacy mode CLI options Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 04/20] smbios: cleanup smbios_get_tables() from legacy handling Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 05/20] smbios: get rid of smbios_smp_sockets global Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 06/20] smbios: get rid of smbios_legacy global Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 07/20] smbios: avoid mangling user provided tables Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 08/20] smbios: don't check type4 structures in legacy mode Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 09/20] smbios: add smbios_add_usr_blob_size() helper Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 10/20] smbios: rename/expose structures/bitmaps used by both legacy and modern code Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 11/20] smbios: build legacy mode code only for 'pc' machine Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 12/20] smbios: handle errors consistently Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 13/20] smbios: get rid of global smbios_ep_type Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 14/20] smbios: clear smbios_type4_count before building tables Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 15/20] smbios: extend smbios-entry-point-type with 'auto' value Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 16/20] smbios: in case of entry point is 'auto' try to build v2 tables 1st Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 17/20] smbios: error out when building type 4 table is not possible Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 18/20] tests: acpi/smbios: whitelist expected blobs Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 19/20] pc/q35: set SMBIOS entry point type to 'auto' by default Igor Mammedov
2024-03-12 16:10 ` [PATCH v3 20/20] tests: acpi: update expected SSDT.dimmpxm blob Igor Mammedov
2024-03-12 17:31 ` [PATCH v3 00/20] Workaround Windows failing to find 64bit SMBIOS entry point with SeaBIOS Michael S. Tsirkin
2024-03-13  8:49   ` Igor Mammedov
2024-03-13  9:10     ` Michael S. Tsirkin
2024-03-13 22:51     ` Michael S. Tsirkin
2024-03-12 17:37 ` Michael S. Tsirkin

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=20240312161050.2248814-2-imammedo@redhat.com \
    --to=imammedo@redhat.com \
    --cc=anisinha@redhat.com \
    --cc=f.ebner@proxmox.com \
    --cc=mst@redhat.com \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.