Hi Conor,
On 5/30/23 14:39, Conor Dooley wrote:
Yo Florian,
On Tue, May 30, 2023 at 01:19:55PM -0700, Florian Fainelli wrote:
From: Pierre Gondois pierre.gondois@arm.com
commit 3522340199cc060b70f0094e3039bdb43c3f6ee1 upstream
fetch_cache_info() tries to get the number of cache leaves/levels for each CPU in order to pre-allocate memory for cacheinfo struct. Allocating this memory later triggers a: 'BUG: sleeping function called from invalid context' in PREEMPT_RT kernels.
If there is no cache related information available in DT or ACPI, fetch_cache_info() fails and an error message is printed: 'Early cacheinfo failed, ret = ...'
Not having cache information should be a valid configuration. Remove the error message if fetch_cache_info() fails with -ENOENT.
Suggested-by: Conor Dooley conor.dooley@microchip.com Link: https://lore.kernel.org/all/20230404-hatred-swimmer-6fecdf33b57a@spud/ Signed-off-by: Pierre Gondois pierre.gondois@arm.com Reviewed-by: Conor Dooley conor.dooley@microchip.com Link: https://lore.kernel.org/r/20230414081453.244787-4-pierre.gondois@arm.com Signed-off-by: Sudeep Holla sudeep.holla@arm.com Signed-off-by: Florian Fainelli florian.fainelli@broadcom.com
How come this now needs a backport? Did the rest of the series get backported, but not this one since it has no fixes tag?
Humm, indeed, this has been present in v6.3.2 since I requested it to be included. The error that I saw this morning was not -ENOENT, but -EINVAL.
With those patches applied, no more -EINVAL:
cacheinfo: Allow early level detection when DT/ACPI info is missing/broken cacheinfo: Add arm64 early level initializer implementation cacheinfo: Add arch specific early level initializer cacheinfo: Add use_arch[|_cache]_info field/function
I will submit those shortly unless we think they better not be in 6.3, in which case it would be nice to silence those -EINVAL errors.