qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] qtest/bios-tables: Add DMAR unit test on intel_


From: Vasilis Liaskovitis
Subject: Re: [Qemu-devel] [PATCH] qtest/bios-tables: Add DMAR unit test on intel_iommu for q35
Date: Mon, 24 Nov 2014 14:38:34 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

Hi,

On Mon, Nov 24, 2014 at 11:37:05AM +0200, Marcel Apfelbaum wrote:
> On Sat, 2014-11-22 at 20:05 +0100, Vasilis Liaskovitis wrote:
> > The test enables intel_iommu on q35 and reads the DMAR table and its only
> > DRHC structure (for now), checking only the header and checksums.
> > 
> > Signed-off-by: Vasilis Liaskovitis <address@hidden>
> > ---
> >  tests/bios-tables-test.c | 34 +++++++++++++++++++++++++++++++++-
> >  1 file changed, 33 insertions(+), 1 deletion(-)
> > 
> > diff --git a/tests/bios-tables-test.c b/tests/bios-tables-test.c
> > index 9e4d205..f09b0cb 100644
> > --- a/tests/bios-tables-test.c
> > +++ b/tests/bios-tables-test.c
> > @@ -45,6 +45,8 @@ typedef struct {
> >      AcpiRsdtDescriptorRev1 rsdt_table;
> >      AcpiFadtDescriptorRev1 fadt_table;
> >      AcpiFacsDescriptorRev1 facs_table;
> > +    AcpiTableDmar dmar_table;
> > +    AcpiDmarHardwareUnit drhd;
> >      uint32_t *rsdt_tables_addr;
> >      int rsdt_tables_nr;
> >      GArray *tables;
> > @@ -371,6 +373,33 @@ static void test_acpi_dsdt_table(test_data *data)
> >      g_array_append_val(data->tables, dsdt_table);
> >  }
> >  
> > +static void test_acpi_dmar_table(test_data *data)
> > +{
> > +    AcpiTableDmar *dmar_table = &data->dmar_table;
> > +    AcpiDmarHardwareUnit *drhd = &data->drhd;
> > +    struct AcpiTableHeader *header = (struct AcpiTableHeader *) dmar_table;
> > +    int tables_nr = data->rsdt_tables_nr - 1;
> > +    uint32_t addr = data->rsdt_tables_addr[tables_nr]; /* dmar is last */
> Hi,
> 
> The DMAR table is always last? If not, it will break when we add another 
> table test.
> I suggest going over the tables and looking for the DMAR signature.

agreed, it would also break if hw/i386/acpi-build.c adds other tables after
DMAR. I posted v2 following your suggestion.

thanks,

- Vasilis



reply via email to

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