RE: [PATCH] Revert "ACPICA: Interpreter: fix memory leak by using existing buffer"

From: Kaneda, Erik
Date: Mon Feb 08 2021 - 15:28:21 EST




> -----Original Message-----
> From: Rafael J. Wysocki <rafael@xxxxxxxxxx>
> Sent: Monday, February 8, 2021 5:01 AM
> To: Shawn Guo <shawn.guo@xxxxxxxxxx>; Ard Biesheuvel
> <ardb@xxxxxxxxxx>; Kaneda, Erik <erik.kaneda@xxxxxxxxx>
> Cc: Linux ARM <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>; ACPI Devel Maling
> List <linux-acpi@xxxxxxxxxxxxxxx>; Linux Kernel Mailing List <linux-
> kernel@xxxxxxxxxxxxxxx>; open list:ACPI COMPONENT ARCHITECTURE
> (ACPICA) <devel@xxxxxxxxxx>; Wysocki, Rafael J
> <rafael.j.wysocki@xxxxxxxxx>; Len Brown <lenb@xxxxxxxxxx>; Moore,
> Robert <robert.moore@xxxxxxxxx>
> Subject: Re: [PATCH] Revert "ACPICA: Interpreter: fix memory leak by using
> existing buffer"
>
> On Sat, Feb 6, 2021 at 11:49 AM Shawn Guo <shawn.guo@xxxxxxxxxx> wrote:
> >
> > On Sat, Feb 06, 2021 at 09:49:37AM +0100, Ard Biesheuvel wrote:
> > > This reverts commit 32cf1a12cad43358e47dac8014379c2f33dfbed4.
> > >

Hi Bob, Ard and Rafael,

> > > The 'exisitng buffer' in this case is the firmware provided table, and
> > > we should not modify that in place. This fixes a crash on arm64 with
> > > initrd table overrides, in which case the DSDT is not mapped with
> > > read/write permissions.

Since this code runs on basically every _HID and _CID invocation, I would have expected this kind of revert to come in for kernels that do not use initrd override... So it sounds like there is a difference between how pages are mapped for initrd table overrides and tables exposed through the XSDT for ARM.. I think it would be easier for us to make these fixes in the future if we could all come to a consensus on whether if we should assume that these pages are writable or not.

Should we assume that all ACPI tables are non-writable and read only regardless of initrd override and architecture?

> > >
> > > Cc: Robert Moore <robert.moore@xxxxxxxxx>
> > > Cc: Erik Kaneda <erik.kaneda@xxxxxxxxx>
> > > Cc: "Rafael J. Wysocki" <rafael.j.wysocki@xxxxxxxxx>
> > > Cc: Len Brown <lenb@xxxxxxxxxx>
> > > Reported-by: Shawn Guo <shawn.guo@xxxxxxxxxx>
> > > Signed-off-by: Ard Biesheuvel <ardb@xxxxxxxxxx>
> >
> > Tested-by: Shawn Guo <shawn.guo@xxxxxxxxxx>
>
> Applied, thanks!
>
> Erik, the upstream will need to sync up with this revert.

Ok sounds good.

Erik