arm: lockdep complaining about locks allocations in static memory
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- Subject: arm: lockdep complaining about locks allocations in static memory
- From: Jan Kardell <jan.kardell@xxxxxxxxxx>
- Date: Wed, 10 Mar 2021 14:54:30 +0100
- Cc: linux-kernel@xxxxxxxxxxxxxxx, Russell King <linux@xxxxxxxxxxxxxxx>, linux-omap@xxxxxxxxxxxxxxx, Tony Lindgren <tony@xxxxxxxxxxx>, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>, linux-mm@xxxxxxxxx
- User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0 SeaMonkey/2.53.5.1
Hi,
During work lift the software and kernel versions on our custom TI
am3352 board I started to see lockdep warnings after enabling
CONFIG_PREEMT. Lockdep seems to think the memory that previously was
initmem is static memory. I'm using linux 5.4, as that is what is used
in the next OpenWrt version.
[ 92.198989] WARNING: CPU: 0 PID: 2015 at kernel/locking/lockdep.c:1119
alloc_netdev_mqs+0xb4/0x3b0
I guess CONFIG_PREEMT just changes the timing of allocations, and is
otherwise irrelevant.
This was fixed for s390 in linux 5.2 commit
7a5da02de8d6eafba99556f8c98e5313edebb449 by adding the function
arch_is_kernel_initmem_freed(). Later a very similar change was made for
powerpc, and a different solution for x86. I now believe that is needed
for arm as well. Though I don't know the inner workings of arm memory
management so I don't know if an identical solution to s390 will do for
arm, but my experiments suggests it works for am335x. The commit message
for s390 says "virt == phys", but that seems not to be the case for my
arm system.
//Jan
[Index of Archives]
[Linux Arm (vger)]
[ARM Kernel]
[ARM MSM]
[Linux Tegra]
[Linux WPAN Networking]
[Linux Wireless Networking]
[Maemo Users]
[Linux USB Devel]
[Video for Linux]
[Linux Audio Users]
[Yosemite Trails]
[Linux Kernel]
[Linux SCSI]