qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH for-2.0 V4] tests/acpi-test: do not fail if iasl


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH for-2.0 V4] tests/acpi-test: do not fail if iasl is broken
Date: Mon, 24 Mar 2014 14:23:36 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

On Mon, Mar 24, 2014 at 02:17:10PM +0200, Marcel Apfelbaum wrote:
> On Mon, 2014-03-24 at 11:33 +0100, Andreas Färber wrote:
> > Am 24.03.2014 11:02, schrieb Marcel Apfelbaum:
> > > There is an issue with iasl on big endian machines: It
> > > cannot disassemble acpi tables taken from little endian
> > > machines, so we cannot check the expected tables.
> > > 
> > > The acpi test will check if the expected aml files
> > > can be disassembled, and will issue an warning not
> > > failing the test on those machines until this
> > > problem is solved by the acpica community.
> > > 
> > > Signed-off-by: Marcel Apfelbaum <address@hidden>
> > > ---
> > > V3 -> V4:
> > >  Addressed all upstream comments:
> > >  - Instead of disabling iasl for big endian machines,
> > >    the test checks if the expected aml files can be
> > >    disassembled, if not it issues a warning instead
> > >    of failing the test
> > > 
> > > V2 -> V3:
> > >  Addressed Michael S. Tsirkin's review:
> > >  - tests don't need to re-run detection, use configure
> > >    to figure out if it is an LE machine.
> > > 
> > > V1 -> V2:
> > >  Addressed an offline tip for a much cleaner
> > >  macro line, thanks!
> > > 
> > >  tests/acpi-test.c | 26 +++++++++++++++-----------
> > >  1 file changed, 15 insertions(+), 11 deletions(-)
> > > 
> > > diff --git a/tests/acpi-test.c b/tests/acpi-test.c
> > > index 249fe03..76fbccf 100644
> > > --- a/tests/acpi-test.c
> > > +++ b/tests/acpi-test.c
> > > @@ -456,13 +456,12 @@ static bool load_asl(GArray *sdts, AcpiSdtTable 
> > > *sdt)
> > >      /* pass 'out' and 'out_err' in order to be redirected */
> > >      ret = g_spawn_command_line_sync(command_line->str, &out, &out_err, 
> > > NULL, &error);
> > >      g_assert_no_error(error);
> > > -
> > >      if (ret) {
> > >          ret = g_file_get_contents(sdt->asl_file, (gchar **)&sdt->asl,
> > >                                    &sdt->asl_len, &error);
> > >          g_assert(ret);
> > >          g_assert_no_error(error);
> > > -        g_assert(sdt->asl_len);
> > > +        ret = (sdt->asl_len > 0);
> > >      }
> > >  
> > >      g_free(out);
> > > @@ -560,15 +559,20 @@ static void test_acpi_asl(test_data *data)
> > >          g_assert(!err || exp_err);
> > >  
> > >          if (g_strcmp0(asl->str, exp_asl->str)) {
> > > -            uint32_t signature = cpu_to_le32(exp_sdt->header.signature);
> > > -            sdt->tmp_files_retain = true;
> > > -            exp_sdt->tmp_files_retain = true;
> > > -            fprintf(stderr,
> > > -                    "acpi-test: Warning! %.4s mismatch. "
> > > -                    "Actual [asl:%s, aml:%s], Expected [asl:%s, 
> > > aml:%s].\n",
> > > -                    (gchar *)&signature,
> > > -                    sdt->asl_file, sdt->aml_file,
> > > -                    exp_sdt->asl_file, exp_sdt->aml_file);
> > > +            if (exp_err) {
> > > +                fprintf(stderr,
> > > +                        "Warning! iasl couldn't parse the expected 
> > > aml\n");
> > 
> > Should these two be g_test_message()s? That's used in other tests -
> > downside is the message appears in the .xml files generated as
> > intermediary for the HTML report but did (in my case) not show up on
> > stdout/stderr. Maybe we should try to fix that? Paolo? Stefan?
> I also don't see them in stdout/stderr. This is the *only*
> reason I use fprintf.

Did you try running gtester without -q or even with -v?  (You can edit
tests/Makefile to do that.)

Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]