Message ID | 20220824094029.1634519-35-bmeng.cn@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests/qtest: Enable running qtest on Windows | expand |
On Wed, 24 Aug 2022, Bin Meng wrote: > From: Bin Meng <bin.meng@windriver.com> > > Single quotes in the arguments (oem_id='CRASH ') are not removed in > the Windows environment before it is passed to the QEMU executable. > The space in the argument causes the "-acpitable" option parser to > think that all of its parameters are done, hence it complains: > > '-acpitable' requires one of 'data' or 'file' > > Change to use double quotes which works fine on all platforms. > > Also /dev/null does not work on win32, and nul should be used. > > Signed-off-by: Bin Meng <bin.meng@windriver.com> > --- > > tests/qtest/bios-tables-test.c | 12 +++++++++--- > 1 file changed, 9 insertions(+), 3 deletions(-) > > diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c > index 36783966b0..0148ce388c 100644 > --- a/tests/qtest/bios-tables-test.c > +++ b/tests/qtest/bios-tables-test.c > @@ -1615,6 +1615,12 @@ static void test_acpi_virt_viot(void) > free_test_data(&data); > } > > +#ifndef _WIN32 > +# define DEV_NULL "/dev/null" > +#else > +# define DEV_NULL "nul" > +#endif > + > static void test_acpi_q35_slic(void) > { > test_data data = { > @@ -1622,9 +1628,9 @@ static void test_acpi_q35_slic(void) > .variant = ".slic", > }; > > - test_acpi_one("-acpitable sig=SLIC,oem_id='CRASH ',oem_table_id='ME'," > - "oem_rev=00002210,asl_compiler_id='qemu'," > - "asl_compiler_rev=00000000,data=/dev/null", > + test_acpi_one("-acpitable sig=SLIC,oem_id=\"CRASH \",oem_table_id=ME," > + "oem_rev=00002210,asl_compiler_id=qemu," ME and qemu should be surrounded by quotes. They are string arguments. https://www.qemu.org/docs/master/interop/qemu-qmp-ref.html?highlight=oem_table_id > + "asl_compiler_rev=00000000,data=" DEV_NULL, > &data); > free_test_data(&data); > } > -- > 2.34.1 > >
On Wed, Aug 24, 2022 at 8:42 PM Ani Sinha <ani@anisinha.ca> wrote: > > > > On Wed, 24 Aug 2022, Bin Meng wrote: > > > From: Bin Meng <bin.meng@windriver.com> > > > > Single quotes in the arguments (oem_id='CRASH ') are not removed in > > the Windows environment before it is passed to the QEMU executable. > > The space in the argument causes the "-acpitable" option parser to > > think that all of its parameters are done, hence it complains: > > > > '-acpitable' requires one of 'data' or 'file' > > > > Change to use double quotes which works fine on all platforms. > > > > Also /dev/null does not work on win32, and nul should be used. > > > > Signed-off-by: Bin Meng <bin.meng@windriver.com> > > --- > > > > tests/qtest/bios-tables-test.c | 12 +++++++++--- > > 1 file changed, 9 insertions(+), 3 deletions(-) > > > > diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c > > index 36783966b0..0148ce388c 100644 > > --- a/tests/qtest/bios-tables-test.c > > +++ b/tests/qtest/bios-tables-test.c > > @@ -1615,6 +1615,12 @@ static void test_acpi_virt_viot(void) > > free_test_data(&data); > > } > > > > +#ifndef _WIN32 > > +# define DEV_NULL "/dev/null" > > +#else > > +# define DEV_NULL "nul" > > +#endif > > + > > static void test_acpi_q35_slic(void) > > { > > test_data data = { > > @@ -1622,9 +1628,9 @@ static void test_acpi_q35_slic(void) > > .variant = ".slic", > > }; > > > > - test_acpi_one("-acpitable sig=SLIC,oem_id='CRASH ',oem_table_id='ME'," > > - "oem_rev=00002210,asl_compiler_id='qemu'," > > - "asl_compiler_rev=00000000,data=/dev/null", > > + test_acpi_one("-acpitable sig=SLIC,oem_id=\"CRASH \",oem_table_id=ME," > > + "oem_rev=00002210,asl_compiler_id=qemu," > > ME and qemu should be surrounded by quotes. They are string arguments. > https://www.qemu.org/docs/master/interop/qemu-qmp-ref.html?highlight=oem_table_id > The doc also says sig is a string, but the original code does not surround it by quotes. The parameter is of string type by default, so there is no need to surround it by quotes unless it contains some special characters. Regards, Bin
On Wed, Aug 24, 2022 at 3:02 PM Bin Meng <bmeng.cn@gmail.com> wrote: > From: Bin Meng <bin.meng@windriver.com> > > Single quotes in the arguments (oem_id='CRASH ') are not removed in > the Windows environment before it is passed to the QEMU executable. > The space in the argument causes the "-acpitable" option parser to > think that all of its parameters are done, hence it complains: > > '-acpitable' requires one of 'data' or 'file' > > Change to use double quotes which works fine on all platforms. > > Also /dev/null does not work on win32, and nul should be used. > > Signed-off-by: Bin Meng <bin.meng@windriver.com> > Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> > --- > > tests/qtest/bios-tables-test.c | 12 +++++++++--- > 1 file changed, 9 insertions(+), 3 deletions(-) > > diff --git a/tests/qtest/bios-tables-test.c > b/tests/qtest/bios-tables-test.c > index 36783966b0..0148ce388c 100644 > --- a/tests/qtest/bios-tables-test.c > +++ b/tests/qtest/bios-tables-test.c > @@ -1615,6 +1615,12 @@ static void test_acpi_virt_viot(void) > free_test_data(&data); > } > > +#ifndef _WIN32 > +# define DEV_NULL "/dev/null" > +#else > +# define DEV_NULL "nul" > +#endif > + > static void test_acpi_q35_slic(void) > { > test_data data = { > @@ -1622,9 +1628,9 @@ static void test_acpi_q35_slic(void) > .variant = ".slic", > }; > > - test_acpi_one("-acpitable sig=SLIC,oem_id='CRASH ',oem_table_id='ME'," > - "oem_rev=00002210,asl_compiler_id='qemu'," > - "asl_compiler_rev=00000000,data=/dev/null", > + test_acpi_one("-acpitable sig=SLIC,oem_id=\"CRASH \",oem_table_id=ME," > + "oem_rev=00002210,asl_compiler_id=qemu," > + "asl_compiler_rev=00000000,data=" DEV_NULL, > &data); > free_test_data(&data); > } > -- > 2.34.1 > > >
diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index 36783966b0..0148ce388c 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -1615,6 +1615,12 @@ static void test_acpi_virt_viot(void) free_test_data(&data); } +#ifndef _WIN32 +# define DEV_NULL "/dev/null" +#else +# define DEV_NULL "nul" +#endif + static void test_acpi_q35_slic(void) { test_data data = { @@ -1622,9 +1628,9 @@ static void test_acpi_q35_slic(void) .variant = ".slic", }; - test_acpi_one("-acpitable sig=SLIC,oem_id='CRASH ',oem_table_id='ME'," - "oem_rev=00002210,asl_compiler_id='qemu'," - "asl_compiler_rev=00000000,data=/dev/null", + test_acpi_one("-acpitable sig=SLIC,oem_id=\"CRASH \",oem_table_id=ME," + "oem_rev=00002210,asl_compiler_id=qemu," + "asl_compiler_rev=00000000,data=" DEV_NULL, &data); free_test_data(&data); }