[PATCH 5/8] arm64: Create cache sysfs directory without ACPI PPTT for hardware prefetch control

Sudeep Holla sudeep.holla at arm.com
Thu Jul 7 07:44:04 PDT 2022


On Thu, Jul 07, 2022 at 09:37:57AM -0500, Jeremy Linton wrote:
> Hi,
> 
> On 2/1/22 05:56, tarumizu.kohei at fujitsu.com wrote:
> > > I am assuming this is ACPI enabled system.
> > 
> > Yes, it is ACPI enabled system.
> > 
> > > This looks bit hacky in my opinion. Before I explore better way of adding it, I would
> > > like to check if you have explored ways to add PPTT reading these registers from
> > > UEFI/EDK2 as PPTT has other topology information which you will need anyways.
> > > That would simplify handling of these cacheinfo sysfs in the kernel. Let me know
> > > what are your thoughts ?
> > 
> > The latest firmware of ARM64 machine, FX700 with the A64FX processor
> > does not support PPTT.
> > I think adding PPTT is the best way to generate cacheinfo sysfs.
> > However, it is difficult to modify the firmware to add PPTT, so
> > it is not clear when it will be possible.
> > Therefore, I would like to implement the function in the kernel on
> > the condition that firmware does not support PPTT.
> 
> As a bit of a late comment here, I assume you tried injecting the PPTT via
> the initrd (directions in admin-guide/acpi/initrd_table_override.txt) then?
> That is one of the usual kernel workarounds for broken/missing ACPI tables.
> 
> As mentioned above, besides not providing appropriate topology information
> to userspace, not having the PPTT is also possibly causing suboptimal
> scheduling decisions in the kernel itself.
> 

Thanks a lot for the suggestion Jeremy. For some reason, I missed to follow
up on this after my initial response. Anyways I agree injecting PPTT via
initrd is a good compromise on systems that are shipped without or broken
PPTT. I have tested that to be fully functional on v5.19-rc* on one of
the servers shipped with broken PPTT.

-- 
Regards,
Sudeep



More information about the linux-arm-kernel mailing list