Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FS#3278 - malta: memory allocation failure during boot #8151

Closed
openwrt-bot opened this issue Aug 7, 2020 · 0 comments
Closed

FS#3278 - malta: memory allocation failure during boot #8151

openwrt-bot opened this issue Aug 7, 2020 · 0 comments
Labels

Comments

@openwrt-bot
Copy link

guidosarducci:

The problem is observed on all booting malta subtargets, built from current master and using the default 5.4 kernel and config options. During boot the built-in SCSI CDROM support will fail ("out of memory") during its probe.

Sample log file:

[ 1.009668] ata2.00: ATAPI: QEMU DVD-ROM, 2.5+, max UDMA/100
[ 1.023561] scsi 1:0:0:0: CD-ROM QEMU QEMU DVD-ROM 2.5+ PQ: 0 ANSI: 5
[ 1.037871] kworker/u2:3: page allocation failure: order:0, mode:0xcc1(GFP_KERNEL|GFP_DMA), nodemask=(null),cpuset=/,mems_allowed=0
[ 1.038594] CPU: 0 PID: 90 Comm: kworker/u2:3 Not tainted 5.4.52 #0
[ 1.039141] Workqueue: events_unbound async_run_entry_fn
[ 1.039481] Stack : 0000000000000000 0000000000000001 d443da66b6c08100 d443da66b6c08100
[ 1.039936] 0000000000000000 900000009fb2f4d0 ffffffffffffff64 ffffffff804b8360
[ 1.040330] 000000000000009c 3a206576656e7473 5f756e626f756e64 206173796e635f72
[ 1.040802] ffffffffffffffff 0000000000000010 0000000000000000 0000000000000000
[ 1.041179] 0000000000000000 0000000000000000 ffffffff808b0000 ffffffff80890000
[ 1.041582] 0000000000000240 0000000000000240 900000009fb2f818 0000000000000000
[ 1.041983] 0000000000000003 ffffffff804b74f0 0000000000000000 ffffffff81dc0000
[ 1.042380] 900000009fb2c000 900000009fb2f4d0 0000000000000cc1 ffffffff806d8104
[ 1.042776] 0000000000000000 6e626f756e640000 0000000000000000 d443da66b6c08100
[ 1.043174] 0000000000000001 ffffffff8010b0e4 0000000000000001 ffffffff806d8104
[ 1.043592] ...
[ 1.043881] Call Trace:
[ 1.044100] [] show_stack+0x34/0x108
[ 1.044780] [] dump_stack+0x9c/0xd8
[ 1.045218] [] warn_alloc+0xcc/0x148
[ 1.045619] [] __alloc_pages_slowpath+0xcd0/0xdb8
[ 1.045964] [] __alloc_pages_nodemask+0x290/0x2d0
[ 1.046319] [] new_slab+0x33c/0xd18
[ 1.046644] [] ___slab_alloc.isra.92.constprop.97+0x2cc/0x4d0
[ 1.047023] [] __slab_alloc.isra.93.constprop.96+0x20/0x48
[ 1.047426] [] kmem_cache_alloc+0x1e8/0x2b0
[ 1.047838] [] sr_probe+0x1e4/0x6f0
[ 1.048127] [] really_probe+0xf8/0x350
[ 1.048409] [] bus_for_each_drv+0x70/0xb0
[ 1.048711] [] __device_attach+0xe0/0x120
[ 1.049004] [] bus_probe_device+0xa0/0xc0
[ 1.049296] [] device_add+0x410/0x638
[ 1.049577] [] scsi_sysfs_add_sdev+0x60/0x280
[ 1.049893] [] scsi_probe_and_add_lun+0x96c/0xce8
[ 1.050212] [] __scsi_add_device+0x120/0x178
[ 1.050661] [] ata_scsi_scan_host+0xb8/0x2c0
[ 1.051134] [] async_run_entry_fn+0x50/0x130
[ 1.051576] [] process_one_work+0x250/0x4a8
[ 1.051869] [] worker_thread+0x16c/0x610
[ 1.052158] [] kthread+0x138/0x140
[ 1.052447] [] ret_from_kernel_thread+0x14/0x1c
[ 1.053276] Mem-Info:
[ 1.053604] active_anon:0 inactive_anon:6244 isolated_anon:0
[ 1.053604] active_file:0 inactive_file:0 isolated_file:0
[ 1.053604] unevictable:0 dirty:0 writeback:0 unstable:0
[ 1.053604] slab_reclaimable:185 slab_unreclaimable:1174
[ 1.053604] mapped:0 shmem:6244 pagetables:0 bounce:0
[ 1.053604] free:104901 free_pcp:33 free_cma:0
[ 1.054876] Node 0 active_anon:0kB inactive_anon:24976kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB mapped:0kB dirty:0kB writeback:0kB shmem:24976kB writeback_tmp:0kB unstable:0kB all_unreclaimable? no
[ 1.055882] DMA free:0kB min:0kB low:0kB high:0kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB writepending:0kB present:16384kB managed:0kB mlocked:0kB kernel_stack:0kB pagetables:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB
[ 1.056908] lowmem_reserve[]: 0 441 441 441
[ 1.057166] DMA32 free:419604kB min:2688kB low:3360kB high:4032kB active_anon:0kB inactive_anon:24976kB active_file:0kB inactive_file:0kB unevictable:0kB writepending:0kB present:507900kB managed:451736kB mlocked:0kB kernel_stack:512kB pagetables:0kB bounce:0kB free_pcp:132kB local_pcp:132kB free_cma:0kB
[ 1.058190] lowmem_reserve[]: 0 0 0 0
[ 1.058405] DMA: 04kB 08kB 016kB 032kB 064kB 0128kB 0256kB 0512kB 01024kB 02048kB 04096kB = 0kB
[ 1.058943] DMA32: 3
4kB (UME) 18kB (U) 716kB (UE) 932kB (UE) 464kB (UME) 3128kB (UME) 1256kB (U) 1512kB (M) 21024kB (UE) 12048kB (E) 1014096kB (M) = 419620kB
[ 1.059733] 6244 total pagecache pages
[ 1.059978] 0 pages in swap cache
[ 1.060136] Swap cache stats: add 0, delete 0, find 0/0
[ 1.060397] Free swap = 0kB
[ 1.060553] Total swap = 0kB
[ 1.060757] 131071 pages RAM
[ 1.060912] 0 pages HighMem/MovableOnly
[ 1.061161] 18137 pages reserved
[ 1.061524] sr 1:0:0:0: [sr0] out of memory.
[ 1.061776] cdrom: Uniform CD-ROM driver Revision: 3.20
[ 1.091522] Freeing unused kernel memory: 21544K

Based on the log, the //sr_probe// function fails to allocate memory from the low 16MB DMA_ZONE, which is exhausted. While on 32-bit targets the bootup continues and login is possible, there may still be related or follow-on memory problems. For example, malta/mipseb64 shows the same memory allocation failure, and then a subsequent SIGSEGV during //init// startup leads to a boot loop.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant