On Thu, Dec 20, 2018 at 2:15 AM Schmauss, Erik <[email protected]> wrote:
>
>
>
> > -----Original Message-----
> > From: [email protected] [mailto:linux-acpi-
> > [email protected]] On Behalf Of Dan Williams
> > Sent: Wednesday, December 19, 2018 4:00 PM
> > To: Schmauss, Erik <[email protected]>
> > Cc: Rafael J. Wysocki <[email protected]>; Busch, Keith
> > <[email protected]>; Moore, Robert <[email protected]>;
> > Linux Kernel Mailing List <[email protected]>; ACPI Devel
> > Maling List <[email protected]>; Linux Memory Management
> > List <[email protected]>; Greg Kroah-Hartman
> > <[email protected]>; Hansen, Dave
> > <[email protected]>
> > Subject: Re: [PATCHv2 01/12] acpi: Create subtable parsing
> > infrastructure
> >
> > On Wed, Dec 19, 2018 at 3:19 PM Schmauss, Erik
> > <[email protected]> wrote:
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: [email protected] [mailto:linux-acpi-
> > > > [email protected]] On Behalf Of Rafael J. Wysocki
> > > > Sent: Tuesday, December 11, 2018 1:45 AM
> > > > To: Busch, Keith <[email protected]>
> > > > Cc: Linux Kernel Mailing List <[email protected]>; ACPI
> > > > Devel Maling List <[email protected]>; Linux Memory
> > > > Management List <[email protected]>; Greg Kroah-Hartman
> > > > <[email protected]>; Rafael J. Wysocki
> > <[email protected]>;
> > > > Hansen, Dave <[email protected]>; Williams, Dan J
> > > > <[email protected]>
> > > > Subject: Re: [PATCHv2 01/12] acpi: Create subtable parsing
> > > > infrastructure
> > > >
> > > > On Tue, Dec 11, 2018 at 2:05 AM Keith Busch
> > <[email protected]>
> > > > wrote:
> > > > >
> > >
> > > Hi Rafael and Bob,
> > >
> > > > > Parsing entries in an ACPI table had assumed a generic header
> > > > > structure that is most common. There is no standard ACPI
> > header,
> > > > > though, so less common types would need custom parsers if they
> > > > > want go through their sub-table entry list.
> > > >
> > > > It looks like the problem at hand is that acpi_hmat_structure is
> > > > incompatible with acpi_subtable_header because of the different
> > layout and field sizes.
> > >
> > > Just out of curiosity, why don't we use ACPICA code to parse static
> > > ACPI tables in Linux?
> > >
> > > We have a disassembler for static tables that parses all supported
> > > tables. This seems like a duplication of code/effort...
> >
> Hi Dan,
>
> > Oh, I thought acpi_table_parse_entries() was the common code.
> > What's the ACPICA duplicate?
>
> I was thinking AcpiDmDumpTable(). After looking at this ACPICA code,
> I realized that the this ACPICA doesn't actually build a parse tree or data 
> structure.
> It loops over the data structure to format the input ACPI table to a file.
>
> To me, it seems like a good idea for Linux and ACPICA to share the same code 
> when
> parsing and analyzing these structures. I know that Linux may emit warnings
> that are specific to Linux but there are structural analyses that should be 
> the same (such as
> checking lengths of tables and subtables so that we don't have out of bounds 
> access).

I agree.

I guess the reason why it has not been done this way was because
nobody thought about it. :-)

So a project to consolidate these things might be a good one.

Reply via email to