public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: "Heyne, Maximilian" <mheyne@amazon.de>
To: Sudeep Holla <sudeep.holla@arm.com>
Cc: "stable@vger.kernel.org" <stable@vger.kernel.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Len Brown <lenb@kernel.org>, Ard Biesheuvel <ardb@kernel.org>,
	Jeremy Linton <jeremy.linton@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] ACPI/PPTT: fix off-by-one error
Date: Wed, 7 May 2025 14:29:17 +0000	[thread overview]
Message-ID: <20250507-petit-capri-debaa30d@mheyne-amazon> (raw)
In-Reply-To: <20250507-divergent-lori-from-pluto-71daee@sudeepholla>

On Wed, May 07, 2025 at 01:56:53PM +0100, Sudeep Holla wrote:
> On Wed, May 07, 2025 at 12:42:14PM +0000, Heyne, Maximilian wrote:
> > On Wed, May 07, 2025 at 01:30:53PM +0100, Sudeep Holla wrote:
> > > On Wed, May 07, 2025 at 11:56:48AM +0000, Heyne, Maximilian wrote:
> > > > On Wed, May 07, 2025 at 12:52:18PM +0100, Sudeep Holla wrote:
> > > > > 
> > > > > Just to understand, this node is absolutely processor node with no
> > > > > private resources ? I find it hard to trust this as most of the CPUs
> > > > > do have L1 I&D caches. If they were present the table can't abruptly end
> > > > > like this.
> > > > 
> > > > Yes looks like it. In our case the ACPI subtable has length 0x14 which is
> > > > exactly sizeof(acpi_pptt_processor).
> > > > 
> > > 
> > > OK, this seem like it is emulated platform with no private resources as
> > > it is specified in the other similar patch clearly(QEMU/VM). So this
> > > doesn't match real platforms. Your PPTT is wrong if it is real hardware
> > > platform as you must have private resources.
> > > 
> > > Anyways if we allow emulation to present CPUs without private resources
> > > we may have to consider allowing this as the computed pointer will match
> > > the table end.
> > 
> > Is there a need by the ACPI specification that the Cache information
> > must come after the processor information? Because on our platform there
> > is Cache and it's described but at a different location seemingly. It
> > looks like caches are described first and then the CPUs.
> >
> 
> That is fine but you must have reference to those caches in the processor
> node and the length of the node won't be 0x14 in that case and you shouldn't
> hit this issue. So if this is real platform, then yes I am must say you
> PPTT is wrong especially if there are caches in the table as you say just
> that processor nodes are not pointing to them correctly then ?

The ACPI tables in our case describe a core first which references the
cache as private resource and then a thread whose parent is the core but
this doesn't have a private resource. This is how it looks like:

[C8Eh 3214   1]                Subtable Type : 00 [Processor Hierarchy Node]
[C8Fh 3215   1]                       Length : 1C
[C90h 3216   2]                     Reserved : 0000
[C92h 3218   4]        Flags (decoded below) : 00000002
                            Physical package : 0
                     ACPI Processor ID valid : 1
                       Processor is a thread : 0
                              Node is a leaf : 0
                    Identical Implementation : 0
[C96h 3222   4]                       Parent : 000000A2
[C9Ah 3226   4]            ACPI Processor ID : 0000003F
[C9Eh 3230   4]      Private Resource Number : 00000002
[CA2h 3234   4]             Private Resource : 00000072
[CA6h 3238   4]             Private Resource : 0000008A

[CAAh 3242   1]                Subtable Type : 00 [Processor Hierarchy Node]
[CABh 3243   1]                       Length : 14
[CACh 3244   2]                     Reserved : 0000
[CAEh 3246   4]        Flags (decoded below) : 0000000E
                            Physical package : 0
                     ACPI Processor ID valid : 1
                       Processor is a thread : 1
                              Node is a leaf : 1
                    Identical Implementation : 0
[CB2h 3250   4]                       Parent : 00000C8E
[CB6h 3254   4]            ACPI Processor ID : 0000003F
[CBAh 3258   4]      Private Resource Number : 00000000

> 
> > I can try to drill even deeper here if you insist. As said I'm no
> > subject matter expert here. But is there something obviously wrong with
> > my patch or would it be ok to just take it?
> >
> 
> Yes you much check your PPTT if it is real hardware platform. I am OK
> with the change in terms of QEMU or VM. You may need to reword commit
> message a bit. I will respond separately.
> 
> -- 
> Regards,
> Sudeep



Amazon Web Services Development Center Germany GmbH
Tamara-Danz-Str. 13
10243 Berlin
Geschaeftsfuehrung: Christian Schlaeger, Jonathan Weiss
Eingetragen am Amtsgericht Charlottenburg unter HRB 257764 B
Sitz: Berlin
Ust-ID: DE 365 538 597


  reply	other threads:[~2025-05-07 14:29 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-06 13:13 [PATCH] ACPI/PPTT: fix off-by-one error Heyne, Maximilian
2025-05-06 13:43 ` Sudeep Holla
2025-05-06 20:08   ` Heyne, Maximilian
2025-05-07 11:52     ` Sudeep Holla
2025-05-07 11:56       ` Heyne, Maximilian
2025-05-07 12:30         ` Sudeep Holla
2025-05-07 12:35           ` Rafael J. Wysocki
2025-05-07 12:42           ` Heyne, Maximilian
2025-05-07 12:50             ` Rafael J. Wysocki
2025-05-07 13:01               ` Sudeep Holla
2025-05-07 12:56             ` Sudeep Holla
2025-05-07 14:29               ` Heyne, Maximilian [this message]
2025-05-07 15:12                 ` Sudeep Holla
2025-05-06 20:11   ` Jeremy Linton
2025-05-07 11:53     ` Heyne, Maximilian
2025-05-07 11:59       ` Rafael J. Wysocki
2025-05-07 12:17         ` Heyne, Maximilian
2025-05-07 15:25 ` Jeremy Linton
2025-05-07 15:42   ` Rafael J. Wysocki
2025-05-07 15:51     ` Jeremy Linton
2025-05-07 16:12       ` Rafael J. Wysocki
2025-05-07 16:28         ` Sudeep Holla
2025-05-07 16:31         ` Jeremy Linton
2025-05-07 16:38           ` Jeremy Linton
2025-05-07 16:41             ` Jeremy Linton
2025-05-07 17:01               ` Rafael J. Wysocki
2025-05-07 17:35                 ` Jeremy Linton
2025-05-07 17:59                   ` Jeremy Linton
2025-05-07 15:47   ` Sudeep Holla
2025-05-07 15:52     ` Sudeep Holla

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250507-petit-capri-debaa30d@mheyne-amazon \
    --to=mheyne@amazon.de \
    --cc=ardb@kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=jeremy.linton@arm.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rafael@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=sudeep.holla@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox