Thread (27 messages) 27 messages, 7 authors, 2024-03-18

Re: [PATCH v3] ARM64: Dynamically allocate cpumasks and increase supported CPUs to 512

From: Marek Szyprowski <m.szyprowski@samsung.com>
Date: 2024-03-11 14:56:42
Also in: linux-mm, linux-pm, lkml

On 11.03.2024 13:12, Mark Rutland wrote:
On Fri, Mar 08, 2024 at 09:08:59AM -0800, Christoph Lameter (Ampere) wrote:
quoted
On Fri, 8 Mar 2024, Marek Szyprowski wrote:
quoted
quoted
quoted
It looks that cpufreq-dt and/or opp drivers needs some adjustments
related with this change.
That's strange. Is this with defconfig? I wonder whether NR_CPUS being
larger caused the issue with this specific code. Otherwise
CPUMASK_OFFSTACK may not work that well on arm64.
cpumask handling must use the accessor functions provided in
include/linux/cpumask.h for declaring and accessing cpumasks. It is likely
related to the driver opencoding one of the accessors.
I took a look at both the OPP code and the cpufreq-dt code and it looks like
those are doign the right thing w.r.t. cpumask manipulation (i.e. they only use
the cpumask accessors, and use the cpumask_var_*() functions to dynamically
allocate/free cpumasks). Maybe I've missed something, but superficially those
look right.

Marek, can you try reverting this commit and trying defconfig + NR_CPUS=512?
Yes, with $subject reverted and CONFIG_NR_CPUS=512 everything works 
fine, so it must be something else broken.
That'll have CPUMASK_OFFSTACK=n, and:

* If that blows up, we know the problem is independent of CPUMASK_OFFSTACK, and
   has something to do with large cpumasks (either a driver bug, or elsewhere).

* If that doesn't blow up, it suggests the problem is related to
   CPUMASK_OFFSTACK rather than with large cpumasks specifically.

Either way, we probably need to revert this patch for now, as this won't have
enough time to soak in linux-next in time for v6.9.
Best regards
-- 
Marek Szyprowski, PhD
Samsung R&D Institute Poland


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help