tests/qtest/bios-tables-test.c: Add support for arch in path

Since machine name can be common for multiple architectures (ex: virt),
add "arch" in the path to search for expected AML files. Since the AML
files are still under old path, add support for searching with and
without arch in the path.

Signed-off-by: Sunil V L <sunilvl@ventanamicro.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20240625150839.1358279-7-sunilvl@ventanamicro.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
Sunil V L 2024-06-25 20:38:29 +05:30 committed by Michael S. Tsirkin
parent 2fd69da264
commit c9ad3decca
1 changed files with 20 additions and 3 deletions

View File

@ -78,6 +78,7 @@
typedef struct {
bool tcg_only;
const char *machine;
const char *arch;
const char *machine_param;
const char *variant;
const char *uefi_fl1;
@ -262,8 +263,19 @@ static void dump_aml_files(test_data *data, bool rebuild)
g_assert(exp_sdt->aml);
if (rebuild) {
aml_file = g_strdup_printf("%s/%s/%.4s%s", data_dir, data->machine,
aml_file = g_strdup_printf("%s/%s/%s/%.4s%s", data_dir,
data->arch, data->machine,
sdt->aml, ext);
/*
* To keep test cases not failing before the DATA files are moved to
* ${arch}/${machine} folder, add this check as well.
*/
if (!g_file_test(aml_file, G_FILE_TEST_EXISTS)) {
aml_file = g_strdup_printf("%s/%s/%.4s%s", data_dir,
data->machine, sdt->aml, ext);
}
if (!g_file_test(aml_file, G_FILE_TEST_EXISTS) &&
sdt->aml_len == exp_sdt->aml_len &&
!memcmp(sdt->aml, exp_sdt->aml, sdt->aml_len)) {
@ -398,8 +410,13 @@ static GArray *load_expected_aml(test_data *data)
memset(&exp_sdt, 0, sizeof(exp_sdt));
try_again:
aml_file = g_strdup_printf("%s/%s/%.4s%s", data_dir, data->machine,
sdt->aml, ext);
aml_file = g_strdup_printf("%s/%s/%s/%.4s%s", data_dir, data->arch,
data->machine, sdt->aml, ext);
if (!g_file_test(aml_file, G_FILE_TEST_EXISTS)) {
aml_file = g_strdup_printf("%s/%s/%.4s%s", data_dir, data->machine,
sdt->aml, ext);
}
if (verbosity_level >= 2) {
fprintf(stderr, "Looking for expected file '%s'\n", aml_file);
}