Thread (13 messages) 13 messages, 5 authors, 2021-10-31

Re: [PATCH] ARM: add BUILD_BUG_ON to check if fixmap range spans multiple pmds

From: Quanyang Wang <hidden>
Date: 2021-10-26 09:54:12
Also in: lkml

Hi,
Sorry for the inconvenience.

On 10/26/21 4:59 PM, Russell King (Oracle) wrote:
On Sun, Oct 24, 2021 at 11:44:31PM +0200, Linus Walleij wrote:
quoted
On Wed, Oct 20, 2021 at 7:50 AM [off-list ref] wrote:
quoted
From: Quanyang Wang <redacted>

Not only the early fixmap range, but also the fixmap range should be
checked if it spans multiple pmds. When enabling CONFIG_DEBUG_HIGHMEM,
some systems which contain up to 16 CPUs will crash.

Signed-off-by: Quanyang Wang <redacted>
Looks reasonable to me.
Reviewed-by: Linus Walleij <redacted>

Please submit this patch into Russell's patch tracker.
... and has totally broken what looks like _all_ ARM kernel builds. 
This patch is intended to trigger build error when it check the value of
__end_of_fixmap_region is equal or larger than 256.
In fact, it breaks the ARM kernel builds which NR_CPUS is equal or more 
than 16. If CONFIG_DEBUG_HIGHMEM is enabled, all ARM builds which 
NR_CPUS is more than 8 will fail.
It
can not have been tested. 
I tested this patch with allyesconfig instead of some configs in 
arch/arm/configs/. In allyesconfig, NR_CPUS is 4, so it not trigger 
build error. Then I changed it to 8 to verify my patch.
Maybe it's uncovered a previously unknown
problem, 
Yes, at my side, axm5516 with CONFIG_DEBUG_HIGHMEM always falls into 
crash. Other ARM platform which contains more than 8 CPUs may encounter
the same issue.
but causing such a wide-range regression is disappointing.
Sorry for not consider this thoroughly.

Thanks,
Quanyang
I'm going to revert this commit.
_______________________________________________
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