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

From: tarumizu.kohei@xxxxxxxxxxx
Date: Fri Jul 08 2022 - 06:22:37 EST


Hi,

Thanks for the comment.

> > > > 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.

I will accept this proposal and try to test injecting PPTT via initrd
on my machine. If there are no problems, I remove this patch in the
next version.