On Thu, Jun 20, 2019 at 8:49 AM Nikolaus Voss <n...@vosn.de> wrote: > > On Wed, 19 Jun 2019, Moore, Robert wrote: > > > > > >> -----Original Message----- > >> From: Nikolaus Voss [mailto:n...@vosn.de] > >> Sent: Wednesday, June 19, 2019 2:31 AM > >> To: Moore, Robert <robert.mo...@intel.com> > >> Cc: Rafael J. Wysocki <raf...@kernel.org>; Rafael J. Wysocki > >> <r...@rjwysocki.net>; Len Brown <l...@kernel.org>; Schmauss, Erik > >> <erik.schma...@intel.com>; Jacek Anaszewski > >> <jacek.anaszew...@gmail.com>; Pavel Machek <pa...@ucw.cz>; Dan Murphy > >> <dmur...@ti.com>; Thierry Reding <thierry.red...@gmail.com>; ACPI Devel > >> Maling List <linux-a...@vger.kernel.org>; open list:ACPI COMPONENT > >> ARCHITECTURE (ACPICA) <de...@acpica.org>; linux-l...@vger.kernel.org; > >> Linux PWM List <linux-...@vger.kernel.org>; Linux Kernel Mailing List > >> <linux-kernel@vger.kernel.org>; nikolaus.v...@loewensteinmedical.de > >> Subject: RE: [PATCH v2 1/3] ACPI: Resolve objects on host-directed table > >> loads > >> > >> Hi Bob, > >> > >> On Tue, 18 Jun 2019, Moore, Robert wrote: > >>> > >>> > >>>> -----Original Message----- > >>>> From: Moore, Robert > >>>> Sent: Tuesday, June 18, 2019 1:25 PM > >>>> To: 'Nikolaus Voss' <n...@vosn.de> > >>>> Cc: 'Rafael J. Wysocki' <raf...@kernel.org>; 'Rafael J. Wysocki' > >>>> <r...@rjwysocki.net>; 'Len Brown' <l...@kernel.org>; Schmauss, Erik > >>>> <erik.schma...@intel.com>; 'Jacek Anaszewski' > >>>> <jacek.anaszew...@gmail.com>; 'Pavel Machek' <pa...@ucw.cz>; 'Dan > >>>> Murphy' <dmur...@ti.com>; 'Thierry Reding' > >>>> <thierry.red...@gmail.com>; 'ACPI Devel Maling List' > >>>> <linux-a...@vger.kernel.org>; 'open list:ACPI COMPONENT ARCHITECTURE > >>>> (ACPICA)' <de...@acpica.org>; 'linux- l...@vger.kernel.org' <linux- > >> l...@vger.kernel.org>; 'Linux PWM List' > >>>> <linux-...@vger.kernel.org>; 'Linux Kernel Mailing List' <linux- > >>>> ker...@vger.kernel.org> > >>>> Subject: RE: [PATCH v2 1/3] ACPI: Resolve objects on host-directed > >>>> table loads > >>>> > >>>> If it is in fact the AcpiLoadTable interface that is incorrect, that > >>>> of course is different. I'll check that out next. > >>>> > >>> [Moore, Robert] > >>> > >>> Yes, this is the issue, not specifically the Load() operator, but the > >>> AcpiLoadTable interface only. > >> > >> thanks for checking this out. So what is the conclusion? Is my fix of > >> AcpiLoadTable() sufficient or do we need a different solution? > >> > >> Niko > >> > > > > > > Your change is in the correct area. We want to do something like this, > > however: > > > > diff --git a/source/components/executer/exconfig.c > > b/source/components/executer/exconfig.c > > index 84a058ada..eba1a6d28 100644 > > --- a/source/components/executer/exconfig.c > > +++ b/source/components/executer/exconfig.c > > @@ -342,10 +342,9 @@ AcpiExLoadTableOp ( > > return_ACPI_STATUS (Status); > > } > > > > - /* Complete the initialization/resolution of package objects */ > > + /* Complete the initialization/resolution of new objects */ > > > > - Status = AcpiNsWalkNamespace (ACPI_TYPE_PACKAGE, ACPI_ROOT_OBJECT, > > - ACPI_UINT32_MAX, 0, AcpiNsInitOnePackage, NULL, NULL, NULL); > > + AcpiNsInitializeObjects (); > > > > /* Parameter Data (optional) */ > > > > @@ -620,10 +619,11 @@ AcpiExLoadOp ( > > return_ACPI_STATUS (Status); > > } > > > > - /* Complete the initialization/resolution of package objects */ > > + /* Complete the initialization/resolution of new objects */ > > > > - Status = AcpiNsWalkNamespace (ACPI_TYPE_PACKAGE, ACPI_ROOT_OBJECT, > > - ACPI_UINT32_MAX, 0, AcpiNsInitOnePackage, NULL, NULL, NULL); > > + AcpiExExitInterpreter (); > > + AcpiNsInitializeObjects (); > > + AcpiExEnterInterpreter (); > > > > /* Store the DdbHandle into the Target operand */ > > > > diff --git a/source/components/tables/tbxfload.c > > b/source/components/tables/tbxfload.c > > index 217d54bf0..1e17db6c8 100644 > > --- a/source/components/tables/tbxfload.c > > +++ b/source/components/tables/tbxfload.c > > @@ -479,6 +479,13 @@ AcpiLoadTable ( > > ACPI_INFO (("Host-directed Dynamic ACPI Table Load:")); > > Status = AcpiTbInstallAndLoadTable (ACPI_PTR_TO_PHYSADDR (Table), > > ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL, FALSE, &TableIndex); > > + if (ACPI_SUCCESS (Status)) > > + { > > + /* Complete the initialization/resolution of new objects */ > > + > > + AcpiNsInitializeObjects (); > > + } > > + > > return_ACPI_STATUS (Status); > > } > > Ok, I see your are taking this up (I was a bit unsure after your previous > post). Thanks,
The $subject patch has been queued for 5.3. If I should drop it, please let me know. Thanks!