Re: arm64: WARNING: at mm/vmalloc.c:315 ioremap_page_range

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 8, 2024, at 12:53, Naresh Kamboju wrote:
> The following warning was noticed while boot arm and arm64 devices.
> The below log is extracted from arm64 ROCK Pi 4B while booting and
> another issue is kernel oops noticed while testing selftests:  kvm:
> memslot_perf_test.
>
> 1) WARNING: CPU: 1 PID: 201 at mm/vmalloc.c:315 ioremap_page_range
> 2)  Unable to handle kernel NULL pointer dereference at virtual address
>   Internal error: Oops: 0000000096000006 [#1] PREEMPT SMP
>   Kernel panic - not syncing: Oops: Fatal exception in interrupt
>
> Please find steps to reproduce, logs and config file links below.
>
> Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>
>
> Warning log:
> -----------
> [   21.074045] ------------[ cut here ]------------
> [   21.074468] vm_area at addr ffffffffc0800000 is not marked as VM_IOREMAP
> [   21.075125] WARNING: CPU: 1 PID: 201 at mm/vmalloc.c:315
> ioremap_page_range (vmalloc.c:?)
> [   21.075854] Modules linked in: industrialio_triggered_buffer
> pcie_rockchip_host(+) coresight kfifo_buf drm fuse backlight dm_mod
> ip_tables x_tables
> [   21.077047] CPU: 1 PID: 201 Comm: (udev-worker) Not tainted
> 6.8.0-rc7-next-20240307 #1
> [   21.077749] Hardware name: Radxa ROCK Pi 4B (DT)
> [   21.078163] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
> [   21.078782] pc : ioremap_page_range (vmalloc.c:?)
> [   21.079197] lr : ioremap_page_range (vmalloc.c:?)
> <trim>
> [   21.086242] Call trace:
> [   21.086464] ioremap_page_range (vmalloc.c:?)
> [   21.086839] pci_remap_iospace (??:?)
> [   21.087192] devm_pci_remap_iospace (??:?)
> [   21.087579] devm_of_pci_bridge_init (??:?)
> [   21.087990] devm_pci_alloc_host_bridge (??:?)
> [   21.088410] rockchip_pcie_probe+0x34/0x30c pcie_rockchip_host

The warning was added by commit 3e49a866c9dc ("mm: Enforce
VM_IOREMAP flag and range in ioremap_page_range.").

This indeed uses a special memory area at a fixed physical address,
but I don't see where the vm_struct comes from.


> # Testing move active area performance with 1 runs, 5 seconds each
> [  353.142236] Unable to handle kernel NULL pointer dereference at
> virtual address 000000000000000a
> [  353.143045] Mem abort info:
....
> [  353.156328] Hardware name: Radxa ROCK Pi 4B (DT)
> [  353.156743] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
> [  353.157369] pc : unmap_region (mmap.c:?)
> [  353.157744] lr : unmap_region (mmap.c:?)
> <trim>
>
> [  353.164918] Call trace:
> [  353.165144] unmap_region (mmap.c:?)
> [  353.165478] do_vmi_align_munmap (mmap.c:?)
> [  353.165873] do_vmi_munmap (??:?)

No idea here, but it seems unrelated to the first one.

Something is wrong with your address decoding, there are no line
numbers.

      Arnd




[Index of Archives]     [Linux Kernel]     [Linux USB Development]     [Yosemite News]     [Linux SCSI]

  Powered by Linux