Web lists-archives.com

BUG: Internal error: Oops: 17 [#1] SMP / _raw_spin_lock()




Hi,

while issuing the command "dd if=/dev/zero of=test2 bs=8k count=64k conv=sync"
in /tmp3 on the rootfs (/dev/sda1; a SSD drive), the system
sometime crashes (maybe in 5% of the cases)

The device is a Banana Pi using Allwinner A20 SoC (sunxi/sun7i/ARM),
the kernel in use is the stock 5.0.5 kernel w/o any modifications, but compiled by myself.

Could a kind kernel developer/tester please briefly check the following
serial output whether the bug is in the SATA driver (ahci-sunxi[1c18000.sata]) or is it perhaps a kernel bug?
That driver is linked into the kernel. A coredump was not generated.

I'm new to kernel debugging. Is this a problem with _raw_spin_lock()
(--> https://lwn.net/Articles/14473/ ), or a NULL pointer issue?


Here's the serial debug output, interrupt list and iomem list:

[  262.990731] random: crng init done
[  262.994158] random: 7 urandom warning(s) missed due to ratelimiting
[ 263.720319] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[  263.728442] pgd = aaea8072
[  263.731161] [00000000] *pgd=7f213835
[  263.734762] Internal error: Oops: 17 [#1] SMP THUMB2
[ 263.739730] Modules linked in: b53_mdio b53_common dsa_core phylink devlink bridge nvmem_sunxi_sid sun4i_ts input_leds sun4i_ss cpufreq_dt uio_pdrv_genirq uio evdev
[  263.754491] CPU: 1 PID: 568 Comm: dd Not tainted 5.0.5-my11 #1
[  263.760327] Hardware name: Allwinner sun7i (A20) Family
[  263.765582] PC is at _raw_spin_lock+0x4/0x30
[  263.769869] LR is at __queue_work+0x133/0x2c8
[  263.774234] pc : [<c0770314>]    lr : [<c01288c7>]    psr: 000701b3
[  263.780506] sp : ee27fad0  ip : c0c10748  fp : ef10ab00
[  263.785736] r10: c0b51324  r9 : ee27e000  r8 : c0c6fcf8
[  263.790970] r7 : ef6b2f80  r6 : 00000004  r5 : ee5ac840  r4 : ef6b7b00
[  263.797503] r3 : 000012c1  r2 : 000012c0  r1 : 00000000  r0 : 00000000
[ 263.804039] Flags: nzcv IRQs off FIQs on Mode SVC_32 ISA Thumb Segment none
[  263.811442] Control: 50c5387d  Table: 6e29c06a  DAC: 00000051
[  263.817196] Process dd (pid: 568, stack limit = 0xe5362e05)
[  263.822776] Stack: (0xee27fad0 to 0xee280000)
[ 263.827150] fac0: 03024100 c056a955 00000001 00000014 [ 263.835345] fae0: ee27fad0 c0b51324 00000001 00000000 ee5ac840 00000004 ef10ab00 00000000 [ 263.843540] fb00: 00000000 ee27fbe0 c0c03080 c0129e2d 20070113 c0c08d48 c0ca6cc8 ee5ac840 [ 263.851736] fb20: 00000001 eeba0588 eeba09d4 c049c67f 33333335 ee5ac800 00000001 c04a33fb [ 263.859930] fb40: eeba0588 00000000 00000000 00000000 eeba0588 c04a3497 ee5ceb00 00000000 [ 263.868125] fb60: eead8800 c056b6bf 00000000 ffffffe1 ee5cebb8 ee5ceb00 00000000 00000000 [ 263.876322] fb80: 00000100 c056b7d5 ee5cebb8 00100000 ee4ef418 ef05d800 ee27e000 c0c08d48 [ 263.884498] fba0: ee27fbe0 ee27fbc4 ee5ceb38 00000004 c0c03090 ee27e000 00000100 c04a1b2b [ 263.892666] fbc0: ee27fc00 ee27fbc4 ee27fbc4 c0c08d48 00000025 40000004 00000000 c0102263 [ 263.900835] fbe0: 00000001 ef134a00 ef134a64 c0c03080 c0b51380 0000000a c0b58d40 c0b58d40 [ 263.909003] fc00: c0b51310 fffff1d4 c0c03d00 00440000 c0c091f0 c0b58cfc 00000000 00000000 [ 263.917171] fc20: 00000001 ef00c000 f0803000 efb8fc74 00000000 c011c17b 0000008a c01506c7 [ 263.925340] fc40: 00000048 c0c091f0 ee27fc78 f080200c f0802000 c04f7c15 ecac9a00 c01efaca [ 263.933509] fc60: 00070033 ffffffff ee27fcac 0000c39e ee27e000 c0101a65 0000c39f ee27fcc8 [ 263.941677] fc80: ef6b6b84 ef6b6b80 ef003a80 ecac99c0 00708840 2eb5a000 0000c39e ffffffff [ 263.949846] fca0: efb8fc74 00000000 a0070013 ee27fcc8 ecac9a00 c01efaca 00070033 ffffffff [ 263.958014] fcc0: 00000051 bf000000 00000000 00000000 00001000 00700840 ffffffff c0224429 [ 263.966182] fce0: 00000000 c02244f3 00000000 ef058800 ef058800 efb8fc74 00000000 efb8fc74 [ 263.974350] fd00: ed482330 00001000 00000000 ed48242c 00001000 c02245c9 00000000 00000000 [ 263.982518] fd20: efb8fc74 c026f839 00000000 c0c08d48 00000000 eed430a0 ee5ba000 c0270899 [ 263.990686] fd40: ed482330 00001000 c0ca02ac ed48242c 00001000 c02981d3 00600040 ee5b9400 [ 263.998854] fd60: 00000001 00000c12 00000002 c0c08d48 00000000 efb8fc74 00000000 eed430a0 [ 264.007022] fd80: ed482330 176ca000 00000000 ed48242c 00001000 c0275787 00001000 c0270899 [ 264.015190] fda0: efb8fc50 00000000 176cb000 00000000 ee27fe0c 000176ca 00000000 c0c08d48 [ 264.023358] fdc0: 0656d5cd ee27fef8 ed48242c ee1fb480 c02756ad 00000000 c081276c 00001000 [ 264.031526] fde0: 00001000 c01b8941 00001000 00000000 ee27fe0c ee27fe10 176ca000 00000000 [ 264.039695] fe00: 00000000 ee27e000 5cb39559 00000000 00000000 c0c08d48 ef39db80 00000000 [ 264.047863] fe20: ee27ff10 00000000 ed48242c ed482330 00000000 ee1fb480 ee27fef8 c01b9959 [ 264.056031] fe40: ed482330 00000000 00000004 c01b65ff ee27fe58 c0b59180 00002000 ee27ff10 [ 264.064200] fe60: ed482330 ee27fef8 ed4823b0 ed482330 00000000 00002000 00000000 c0267475 [ 264.072368] fe80: 00000000 c0760167 00001000 c04bdc43 ee5cd380 00000000 c01032b5 00000000 [ 264.080536] fea0: ffffffff c0c08d48 ffffffff ee27fef0 00001000 ee27e000 00000000 c0c08d48 [ 264.088704] fec0: 00002000 ee1fb480 00002000 ee27ff78 00080000 176ca000 00000000 00000004 [ 264.096873] fee0: 00000400 c01fee0d 00002000 00002000 0002c000 00002000 00000001 00000000 [ 264.105042] ff00: 00002000 ee27fef0 00000001 00000000 ee1fb480 00000000 176ca000 00000000 [ 264.113210] ff20: 00000000 ee27fe9c 00000000 00000000 00002000 c0c08d48 0002c000 00002000 [ 264.121378] ff40: ee1fb480 00000000 0002c000 ee27ff78 00002000 c01fef8d ee2b6780 0002c000 [ 264.129546] ff60: ee1fb480 0002c000 176ca000 00000000 ee1fb480 c01ff14b 176ca000 00000000 [ 264.137715] ff80: ee27ffb0 c0c08d48 f0802000 00000000 0002a1f0 00002000 00000004 c0101224 [ 264.145883] ffa0: ee27e000 c0101001 00000000 0002a1f0 00000001 0002c000 00002000 620ec300 [ 264.154050] ffc0: 00000000 0002a1f0 00002000 00000004 0002c000 00000000 00000001 00000400 [ 264.162218] ffe0: 00000000 bec734e4 00013bb9 b6f3ef26 60070030 00000001 00000000 00000000 [ 264.170399] [<c0770314>] (_raw_spin_lock) from [<c01288c7>] (__queue_work+0x133/0x2c8) [ 264.178314] [<c01288c7>] (__queue_work) from [<c0129e2d>] (mod_delayed_work_on+0x41/0x68) [ 264.186490] [<c0129e2d>] (mod_delayed_work_on) from [<c049c67f>] (kblockd_mod_delayed_work_on+0x17/0x18) [ 264.195964] [<c049c67f>] (kblockd_mod_delayed_work_on) from [<c04a33fb>] (blk_mq_run_hw_queue+0x37/0xb4) [ 264.205436] [<c04a33fb>] (blk_mq_run_hw_queue) from [<c04a3497>] (blk_mq_run_hw_queues+0x1f/0x2c) [ 264.214304] [<c04a3497>] (blk_mq_run_hw_queues) from [<c056b6bf>] (scsi_end_request+0xe7/0x158) [ 264.222997] [<c056b6bf>] (scsi_end_request) from [<c056b7d5>] (scsi_io_completion+0x4d/0x4fc) [ 264.231515] [<c056b7d5>] (scsi_io_completion) from [<c04a1b2b>] (blk_done_softirq+0x5b/0x78) [ 264.239947] [<c04a1b2b>] (blk_done_softirq) from [<c0102263>] (__do_softirq+0xcb/0x1d0)
[  264.247948] [<c0102263>] (__do_softirq) from [<c011c17b>] (irq_exit+0x87/0xb8)
[ 264.255170] [<c011c17b>] (irq_exit) from [<c01506c7>] (__handle_domain_irq+0x3f/0x78) [ 264.262997] [<c01506c7>] (__handle_domain_irq) from [<c04f7c15>] (gic_handle_irq+0x35/0x68) [ 264.271340] [<c04f7c15>] (gic_handle_irq) from [<c0101a65>] (__irq_svc+0x65/0x94)
[  264.278810] Exception stack(0xee27fc78 to 0xee27fcc0)
[ 264.283855] fc60: 0000c39f ee27fcc8 [ 264.292022] fc80: ef6b6b84 ef6b6b80 ef003a80 ecac99c0 00708840 2eb5a000 0000c39e ffffffff [ 264.300190] fca0: efb8fc74 00000000 a0070013 ee27fcc8 ecac9a00 c01efaca 00070033 ffffffff [ 264.308364] [<c0101a65>] (__irq_svc) from [<c01efaca>] (kmem_cache_alloc+0x92/0xfc) [ 264.316017] [<c01efaca>] (kmem_cache_alloc) from [<c0224429>] (alloc_buffer_head+0x15/0x38) [ 264.324360] [<c0224429>] (alloc_buffer_head) from [<c02244f3>] (alloc_page_buffers+0x6f/0x138) [ 264.332963] [<c02244f3>] (alloc_page_buffers) from [<c02245c9>] (create_empty_buffers+0xd/0xf8) [ 264.341656] [<c02245c9>] (create_empty_buffers) from [<c026f839>] (ext4_block_write_begin+0x271/0x348) [ 264.350958] [<c026f839>] (ext4_block_write_begin) from [<c0275787>] (ext4_da_write_begin+0xdb/0x2c8) [ 264.360083] [<c0275787>] (ext4_da_write_begin) from [<c01b8941>] (generic_perform_write+0x85/0x148) [ 264.369121] [<c01b8941>] (generic_perform_write) from [<c01b9959>] (__generic_file_write_iter+0xf1/0x158) [ 264.378680] [<c01b9959>] (__generic_file_write_iter) from [<c0267475>] (ext4_file_write_iter+0x99/0x378) [ 264.388153] [<c0267475>] (ext4_file_write_iter) from [<c01fee0d>] (__vfs_write+0xd9/0x110)
[  264.396411] [<c01fee0d>] (__vfs_write) from [<c01fef8d>] (vfs_write+0x71/0x13c)
[  264.403713] [<c01fef8d>] (vfs_write) from [<c01ff14b>] (ksys_write+0x3b/0x84)
[ 264.410842] [<c01ff14b>] (ksys_write) from [<c0101001>] (ret_fast_syscall+0x1/0x62)
[  264.418486] Exception stack(0xee27ffa8 to 0xee27fff0)
[ 264.423533] ffa0: 00000000 0002a1f0 00000001 0002c000 00002000 620ec300 [ 264.431700] ffc0: 00000000 0002a1f0 00002000 00000004 0002c000 00000000 00000001 00000400
[  264.439864] ffe0: 00000000 bec734e4 00013bb9 b6f3ef26
[  264.444914] Code: 0000 0000 f8b0 f000 (e850) 3f00
[  264.449702] ---[ end trace d5d1098913ee9dc7 ]---
[  264.454313] Kernel panic - not syncing: Fatal exception in interrupt
[  264.460665] CPU0: stopping
[ 264.463378] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G D 5.0.5-my11 #1
[  264.471021] Hardware name: Allwinner sun7i (A20) Family
[ 264.476253] [<c010bb39>] (unwind_backtrace) from [<c0109253>] (show_stack+0xb/0xc)
[  264.483820] [<c0109253>] (show_stack) from [<c075cf0f>] (dump_stack+0x67/0x74)
[ 264.491038] [<c075cf0f>] (dump_stack) from [<c010ae1b>] (handle_IPI+0x13b/0x164) [ 264.498428] [<c010ae1b>] (handle_IPI) from [<c04f7c47>] (gic_handle_irq+0x67/0x68) [ 264.505991] [<c04f7c47>] (gic_handle_irq) from [<c0101a65>] (__irq_svc+0x65/0x94)
[  264.513461] Exception stack(0xc0c01f18 to 0xc0c01f60)
[ 264.518505] 1f00: 00000000 0000d938 [ 264.526673] 1f20: ef6a39e0 c0113fc1 c0c00000 00000000 c0c08d70 c0c08db0 c0b58470 00000000 [ 264.534841] 1f40: c0c01f70 00000000 005f2f58 c0c01f68 c01070f5 c01070f6 40070033 ffffffff [ 264.543012] [<c0101a65>] (__irq_svc) from [<c01070f6>] (arch_cpu_idle+0x22/0x24) [ 264.550406] [<c01070f6>] (arch_cpu_idle) from [<c0137029>] (do_idle+0x195/0x1dc) [ 264.557798] [<c0137029>] (do_idle) from [<c013725b>] (cpu_startup_entry+0x13/0x18) [ 264.565363] [<c013725b>] (cpu_startup_entry) from [<c0b00a65>] (start_kernel+0x345/0x364)
[  264.573535] Rebooting in 10 seconds..


# cat /proc/interrupts
           CPU0       CPU1
 18:          0          0     GICv2  29 Level     arch_timer
 19:      26533      28068     GICv2  30 Level     arch_timer
 22:          0          0     GICv2  54 Level     timer@1c20c00
 23:          0          0     GICv2 113 Level     sun5i_timer0
 24:          0          0     GICv2 152 Level     arm-pmu
 25:          0          0     GICv2 153 Level     arm-pmu
 26:          0          0     GICv2  59 Level     1c02000.dma-controller
 27:          0          0     GICv2  42 Level     sun4i-spi
 31:        158          0     GICv2  64 Level     sunxi-mmc
 32:          0          0     GICv2  70 Level     musb-hdrc.1.auto
 33:          2          0     GICv2  71 Level     ehci_hcd:usb1
 34:         34          0     GICv2  96 Level     ohci_hcd:usb3
 37:       3656          0     GICv2  88 Level     ahci-sunxi[1c18000.sata]
 38:         19          0     GICv2  72 Level     ehci_hcd:usb2
 41:          0          0     GICv2  56 Level     1c20d00.rtc
 47:       2294          0     GICv2  61 Level     sun4i-ts
 48:        348          0     GICv2  33 Level     ttyS0
 51:       1832          0     GICv2  39 Level     mv64xxx_i2c
 52:          0          0     GICv2  41 Level     mv64xxx_i2c
 60:       2632          0     GICv2 117 Level     eth0
 70:          1          0  sunxi_pio_edge   4 Edge      usb0-id-det
 76:          0          0  sunxi_pio_edge  10 Edge      1c0f000.mmc cd
 98:          0          0  sunxi-nmi   0 Level     axp20x_irq_chip
104:          0          0  axp20x_irq_chip   5 Edge      axp20x-usb-power-supply
105:          0          0  axp20x_irq_chip   6 Edge      axp20x-usb-power-supply
125:          0          0  axp20x_irq_chip  26 Edge      axp20x-usb-power-supply
126:          0          0  axp20x_irq_chip  27 Edge      axp20x-usb-power-supply
132:          0          0  axp20x_irq_chip  33 Edge      axp20x-pek-dbr
133:          0          0  axp20x_irq_chip  34 Edge      axp20x-pek-dbf
IPI0:          0          0  CPU wakeup interrupts
IPI1:          0          0  Timer broadcast interrupts
IPI2:       2965       8365  Rescheduling interrupts
IPI3:          2          5  Function call interrupts
IPI4:          0          0  CPU stop interrupts
IPI5:      20161      21560  IRQ work interrupts
IPI6:          0          0  completion interrupts
Err:          0


# cat /proc/iomem
01c00000-01c0002f : system-control@1c00000
01c00030-01c0003b : interrupt-controller@1c00030
01c02000-01c02fff : dma-controller@1c02000
01c05000-01c05fff : spi@1c05000
01c0f000-01c0ffff : mmc@1c0f000
01c13000-01c133ff : usb@1c13000
  01c13000-01c133ff : usb@1c13000
01c13400-01c1340f : phy_ctrl
01c14000-01c140ff : usb@1c14000
01c14400-01c144ff : usb@1c14400
01c14800-01c14803 : pmu1
01c15000-01c15fff : crypto-engine@1c15000
01c18000-01c18fff : sata@1c18000
01c1c000-01c1c0ff : usb@1c1c000
01c1c800-01c1c803 : pmu2
01c20000-01c203ff : clock@1c20000
01c20800-01c20bff : pinctrl@1c20800
01c20c90-01c20c9f : watchdog@1c20c90
01c20d00-01c20d1f : rtc@1c20d00
01c23800-01c239ff : eeprom@1c23800
01c25000-01c250ff : rtp@1c25000
01c28000-01c2801f : serial
01c28c00-01c28c1f : serial
01c29c00-01c29c1f : serial
01c2ac00-01c2afff : i2c@1c2ac00
01c2b400-01c2b7ff : i2c@1c2b400
01c50000-01c5ffff : ethernet@1c50000
01c60000-01c60fff : hstimer@1c60000
40000000-7fafffff : System RAM
  40008000-40afffff : Kernel code
  40c00000-40cb5a8f : Kernel data