Hi, On 03/12/2021 21:25, Sebastian Reichel wrote: > Hi, > > No idea (I have not booted my N900 for some time). Newer kernel might > just have slowed down or speed up things and uncovered a race condition. > IIRC the dma_mask warning is old and not a huge issue. > > What is IRQ #26 according to /proc/cpuinfo? I am assuming you meant /proc/interrupts: 26: 0 INTC 10 Edge l3-app-irq Full list at [1]. > Finally for the NULL pointer dereference in ssi_gdd_tasklet it would > help to run the stacktrace through "scripts/decode_stacktrace.sh", > so that we get exact line numbers. See [2] - but I had to path scripts/decode_stacktrace.sh to fix the module names [3], so take them with a grain salt. > Have you tried bisecting this? I will attempt that next. Cheers, Merlijn [1] > # cat /proc/interrupts > CPU0 > 19: 0 INTC 3 Edge arm-pmu > 23: 1 INTC 7 Edge TWL4030-PIH > 25: 0 INTC 9 Edge l3-debug-irq > 26: 0 INTC 10 Edge l3-app-irq > 29: 30756 INTC 13 Edge omap-dma-engine > 36: 0 INTC 20 Edge gpmc > 37: 913 INTC 21 Edge SGX ISR > 40: 0 INTC 24 Edge 480bd400.mmu > 41: 2404 INTC 25 Edge OMAP DISPC > 45: 0 INTC 29 Edge 48310000.gpio > 46: 7804 INTC 30 Edge 49050000.gpio > 47: 0 INTC 31 Edge 49052000.gpio > 48: 0 INTC 32 Edge 49054000.gpio > 49: 0 INTC 33 Edge 49056000.gpio > 50: 0 INTC 34 Edge 49058000.gpio > 53: 73596 INTC 37 Edge clockevent > 64: 0 INTC 48 Edge 480ba000.spi > 65: 0 INTC 49 Edge 480c3000.sham > 72: 50013 INTC 56 Edge 48070000.i2c > 73: 1510 INTC 57 Edge 48072000.i2c > 77: 3 INTC 61 Edge 48060000.i2c > 81: 0 INTC 65 Edge 48098000.spi > 82: 0 INTC 66 Edge 4809a000.spi > 83: 1 INTC 67 Edge SSI PORT > 87: 0 INTC 71 Edge gdd_mpu > 90: 1461 INTC 74 Edge 49020000.serial > 92: 1 INTC 76 Edge ohci_hcd:usb1 > 99: 20334 INTC 83 Edge mmc0 > 102: 630 INTC 86 Edge mmc1 > 107: 0 INTC 91 Edge 480b8000.spi > 112: 53048 PRCM Edge pm_wkup > 121: 0 PRCM Edge pinctrl, pinctrl, pinctrl, pm_io > 144: 0 pinctrl 366 Edge 49020000.serial:wakeup > 146: 0 twl4030 0 Edge twl4030_gpio > 147: 0 twl4030 1 Edge 48070000.i2c:twl@48:keypad > 149: 0 twl4030 3 Edge twl4030_madc > 151: 1 twl4030 5 Edge twl4030_power > 154: 0 twl4030 8 Edge twl4030_pwrbutton > 157: 1 twl4030 11 Edge rtc0 > 181: 0 49056000.gpio 23 Edge SSI cawake > 182: 0 49054000.gpio 4 Edge tsc200x > 183: 0 49054000.gpio 14 Edge Camera Lens Cover > 184: 0 49052000.gpio 4 Edge Camera Focus > 185: 0 49052000.gpio 5 Edge Camera Capture > 186: 0 49054000.gpio 17 Edge Lock Button > 187: 0 49052000.gpio 7 Edge Keypad Slide > 188: 0 49052000.gpio 25 Edge Proximity Sensor > 189: 0 49058000.gpio 0 Edge Machine Cover > 190: 7804 49050000.gpio 10 Edge wl1251 > 191: 0 49052000.gpio 8 Edge modem_rst_ind > Err: 0 [2] > $ cat trace.txt | ARCH=arm CROSS_COMPILE=armv7a-hardfloat-linux-gnueabi- ./scripts/decode_stacktrace.sh vmlinux auto modout/lib/modules/5.15.2-00596-g511bae76ff39-dirty > [ 221.321380] 8<--- cut here --- > [ 221.324462] Unable to handle kernel NULL pointer dereference at virtual address 00000000 > [ 221.332641] pgd = 70c7579d > [ 221.335388] [00000000] *pgd=00000000 > [ 221.339019] Internal error: Oops: 805 [#1] PREEMPT SMP ARM > [ 221.344573] Modules linked in: cbc aes_arm_bs crypto_simd cryptd aes_arm aes_generic ccm bluetooth ecdh_generic ecc libaes zram zsmalloc cmt_speech nokia_modem ssi_protocol phonet joydev mousedev evdev hsi_char wl1251_spi wl1251 mac80211 libarc4 omap3_rom_rng ir_rx51 isp1704_charger rng_core rc_core snd_soc_rx51 udc_core leds_gpio sha256_generic pvrsrvkm_omap3_sgx530_121 libsha256 sha256_arm gpio_keys display_connector pwm_omap_dmtimer cpufreq_dt snd_soc_omap_mcbsp snd_soc_ti_sdma snd_soc_tpa6130a2 cfg80211 snd_soc_core snd_pcm_dmaengine omap_sham crypto_engine snd_pcm snd_timer snd leds_lp5523 soundcore leds_lp55xx_common panel_sony_acx565akm bq2415x_charger bq27xxx_battery_i2c tsc2005 led_class tsc200x_core bq27xxx_battery omap_mailbox ohci_platform rtc_twl ohci_hcd ehci_hcd st_accel_i2c twl4030_pwrbutton st_sensors_i2c st_accel pwm_twl st_sensors pwm_twl_led industrialio_triggered_buffer usbcore twl4030_madc kfifo_buf omapdrm twl4030_charger twl4030_keypad industrialio matrix_keymap > [ 221.345306] usb_common drm_kms_helper cfbfillrect syscopyarea cfbimgblt sysfillrect sysimgblt fb_sys_fops cfbcopyarea drm omap_ssi hsi drm_panel_orientation_quirks cec > [ 221.448211] CPU: 0 PID: 647 Comm: irq/83-SSI PORT Tainted: G W 5.15.2-00596-g511bae76ff39-dirty #8 > [ 221.458526] Hardware name: Nokia RX-51 board > [ 221.462829] PC is at ssi_gdd_tasklet (./include/linux/list.h:73) omap_ssi > [ 221.468444] LR is at _raw_spin_unlock (./arch/arm/include/asm/thread_info.h:87) > [ 221.473022] pc : lr : psr: 20060013 > [ 221.479339] sp : c3cfbdf0 ip : 00000000 fp : 00000122 > [ 221.484588] r10: 00000100 r9 : 00000806 r8 : c485a800 > [ 221.489837] r7 : 00000000 r6 : 00000000 r5 : c30f7340 r4 : c4f0bd00 > [ 221.496398] r3 : 00000000 r2 : 00000000 r1 : c0f05228 r0 : c48abe40 > [ 221.502990] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none > [ 221.510162] Control: 10c5387d Table: 84bac019 DAC: 00000051 > [ 221.515930] Register r0 information: slab kmalloc-512 start c48abe00 pointer offset 64 size 512 > [ 221.524749] Register r1 information: non-slab/vmalloc memory > [ 221.530456] Register r2 information: NULL pointer > [ 221.535186] Register r3 information: NULL pointer > [ 221.539947] Register r4 information: slab kmalloc-64 start c4f0bd00 pointer offset 0 size 64 > [ 221.548461] Register r5 information: slab kmalloc-256 start c30f7300 pointer offset 64 size 256 > [ 221.557250] Register r6 information: NULL pointer > [ 221.562011] Register r7 information: NULL pointer > [ 221.566741] Register r8 information: slab kmalloc-1k start c485a800 pointer offset 0 size 1024 > [ 221.575439] Register r9 information: non-paged memory > [ 221.580535] Register r10 information: non-paged memory > [ 221.585723] Register r11 information: non-paged memory > [ 221.590881] Register r12 information: NULL pointer > [ 221.595733] Process irq/83-SSI PORT (pid: 647, stack limit = 0x58d4b081) > [ 221.602478] Stack: (0xc3cfbdf0 to 0xc3cfc000) > [ 221.606872] bde0: 00000000 c1805e00 c1805e50 00000001 > [ 221.615081] be00: c3ca4000 c48abe40 00000001 00000008 fa058000 c30f7340 00000000 c30f7354 > [ 221.623321] be20: 00000000 00000000 c30f7358 cfb4d330 00000000 00000000 c3cfa000 c0140f98 > [ 221.631561] be40: 00000001 c0f03080 00000000 c0ff8160 00000101 c0cc6434 00000203 c0101304 > [ 221.639770] be60: c3cfa000 c485a800 0000000a ffffe144 bf01f9ec 00208040 00000201 c3cfa000 > [ 221.648010] be80: 60060013 c48abe40 c48abe5c c48abe5c c30f7340 c485a800 01000100 c0140a10 > [ 221.656249] bea0: 00000001 ffffe000 c48abe40 c0140b18 c4f0bd00 00000000 c48abe40 bf01f9ec > [ 221.664459] bec0: bf01f928 c61c4c00 c48abe64 c48abe40 00000001 c48abe5c c30f7340 c485a800 > [ 221.672698] bee0: 01000100 bf01fdd4 00000000 c485a410 00000000 00000000 00000001 c48abe40 > [ 221.680938] bf00: 00000001 c48abea4 c485a800 00000001 00000000 bf01ffb0 00000004 fa058000 > [ 221.689147] bf20: 00000000 c3867980 c1835b00 c38679a4 00000001 c1835b00 c3867980 c01a2dec > [ 221.697387] bf40: 00000000 c01a2e08 00000000 c3cfa000 c38679a4 c01a3054 00000000 c01a2b98 > [ 221.705627] bf60: 00000000 56f1b382 00000000 c48ad080 c3cfa000 c48ad040 c01a2efc c3867980 > [ 221.713836] bf80: c35bbca4 c48ad060 00000000 c015e9d0 c48ad080 c015e87c 00000000 00000000 > [ 221.722076] bfa0: 00000000 00000000 00000000 c0100150 00000000 00000000 00000000 00000000 > [ 221.730316] bfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 > [ 221.738525] bfe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000 > [ 221.746765] (ssi_gdd_tasklet [omap_ssi]) from tasklet_action_common.constprop.0 (kernel/softirq.c:878) > [ 221.757476] (tasklet_action_common.constprop.0) from __do_softirq (./include/linux/atomic/atomic-instrumented.h:28) > [ 221.767120] (__do_softirq) from do_softirq (./include/asm-generic/softirq_stack.h:11) > [ 221.774597] (do_softirq) from __local_bh_enable_ip (kernel/softirq.c:383) > [ 221.782836] (__local_bh_enable_ip) from ssi_async (drivers/hsi/controllers/omap_ssi_port.c:410) omap_ssi]) > [ 221.791961] (ssi_async [omap_ssi]) from ssi_pio_complete (drivers/hsi/controllers/omap_ssi_port.c:954) omap_ssi]) > [ 221.801818] (ssi_pio_complete [omap_ssi]) from ssi_pio_thread (drivers/hsi/controllers/omap_ssi_port.c:976) omap_ssi]) > [ 221.812011] (ssi_pio_thread [omap_ssi]) from irq_thread_fn (kernel/irq/manage.c:1199) > [ 221.820861] (irq_thread_fn) from irq_thread (kernel/irq/manage.c:1279) > [ 221.828582] (irq_thread) from kthread (kernel/kthread.c:319) > [ 221.835784] (kthread) from ret_from_fork (arch/arm/kernel/entry-common.S:147) > [ 221.843048] Exception stack(0xc3cfbfb0 to 0xc3cfbff8) > [ 221.848144] bfa0: 00000000 00000000 00000000 00000000 > [ 221.856353] bfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 > [ 221.864593] bfe0: 00000000 00000000 00000000 00000000 00000013 00000000 > [ 221.871246] Code: e58040b0 e5841000 e59f1084 e5842004 (e5824000) > All code > ======== > 0: e58040b0 str r4, [r0, #176] ; 0xb0 > 4: e5841000 str r1, [r4] > 8: e59f1084 ldr r1, [pc, #132] ; 0x94 > c: e5842004 str r2, [r4, #4] > 10:* e5824000 str r4, [r2] <-- trapping instruction > > Code starting with the faulting instruction > =========================================== > 0: e5824000 str r4, [r2] > [ 221.877441] sched: RT throttling activated > [ 221.877532] ---[ end trace 9743f51737b4ffb3 ]--- [3] For some reason the $module was "omap_ssi])" so it failed to find the module with find. > diff --git a/scripts/decode_stacktrace.sh b/scripts/decode_stacktrace.sh > index 5fbad61fe490..686bae46c665 100755 > --- a/scripts/decode_stacktrace.sh > +++ b/scripts/decode_stacktrace.sh > @@ -61,6 +61,7 @@ find_module() { > fi > > if [[ "$modpath" != "" ]] ; then > + module=$(echo $module | sed 's/])//') > for fn in $(find "$modpath" -name "${module//_/[-_]}.ko*") ; do > if readelf -WS "$fn" | grep -qwF .debug_line ; then > echo $fn