Bug 15704 - [5.2 M1 RC2] BeaglePlay: System hangs randomly and kernel call trace with 6.12
Summary: [5.2 M1 RC2] BeaglePlay: System hangs randomly and kernel call trace with 6.12
Status: VERIFIED FIXED
Alias: None
Product: BSPs
Classification: Build System, Metadata & Runtime
Component: bsps-meta-yocto (show other bugs)
Version: 5.2
Hardware: x86 arm64
: Medium+ normal
Target Milestone: 5.3 M3
Assignee: Ross Burton
QA Contact: Yi Zhao
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2024-12-25 06:39 UTC by Yi Zhao
Modified: 2025-12-03 03:25 UTC (History)
10 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: Regression (Used to work)
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments
Beagle console log (54.95 KB, text/plain)
2025-01-17 13:38 UTC, Ross Burton
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Yi Zhao 2024-12-25 06:39:45 UTC
Image Location: https://valkyrie.yocto.io/pub/releases/yocto-5.2_M1.rc2/machines/genericarm64/

Git rev: master/fafd1db382cc24c53c17170df82780f9d593ca1f

Steps:
1. Download genericarm64 core-image-sato-sdk wic image from the above link.
2. Deploy wic image to MircoSD card and boot up system.

The system can boot up. But after login, the kernel keeps throwing call traces and the system randomly hangs:


root@genericarm64:~# 
root@genericarm64:~# BUG: scheduling while atomic: getty/957/0x00000002
Modules linked in: bnep 8021q wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio dp83td510 realtek xhci_plat_hcd gpio_tps65219 tps65219_regulator tps65219_pwr
button dwc3 ite_it66121 tps65219 rtc_bq32k at24 udc_core roles ti_am65_cpsw_nuss k3_cppi_desc_pool k3_udma_glue ghash_ce sha2_ce sha256_arm64 sha1_ce snd_soc_s
imple_card gpio_regulator snd_soc_simple_card_utils fixed mdio_gpio mdio_bitbang gpio_keys display_connector sdhci_am654 dwc3_am62 rtc_ti_k3 rti_wdt reset_ti_s
ci k3_j72xx_bandgap pinctrl_single k3_udma k3_psil_lib snd_soc_davinci_mcasp snd_soc_ti_udma k3_ringacc snd_soc_ti_edma phylink snd_soc_ti_sdma sci_clk gpio_da
vinci virt_dma ti_sci_pm_domains snd_soc_core tidss 8250_omap snd_pcm_dmaengine ac97_bus drm_dma_helper snd_pcm drm_display_helper snd_timer cec snd soundcore 
sa2ul spi_omap2_mcspi phy_gmii_sel syscon_clk i2c_omap aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 2 UID: 0 PID: 957 Comm: getty Not tainted 6.12.3-yocto-standard #1
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Call trace:
 dump_backtrace.part.0+0xe4/0x100
 show_stack+0x24/0x40
 dump_stack_lvl+0x64/0x88
 dump_stack+0x1c/0x30
 __schedule_bug+0x60/0x90
 __schedule+0x83c/0xcf8
 schedule+0x40/0x158
 schedule_timeout+0xb0/0x1b0
 wait_for_completion_timeout+0x84/0x188
 ti_sci_set_device_state+0x134/0x220
 ti_sci_cmd_get_device_exclusive+0x24/0x40
 ti_sci_pd_power_on+0x34/0x68 [ti_sci_pm_domains]
 _genpd_power_on+0xa4/0x178
 genpd_power_on+0xb4/0x190
 genpd_runtime_resume+0xc8/0x260
 __rpm_callback+0x54/0x200
 rpm_callback+0x78/0x90
 rpm_resume+0x420/0x690
 __pm_runtime_resume+0x5c/0xb0
 omap8250_set_mctrl+0x38/0xe0 [8250_omap]
 serial8250_set_mctrl+0x2c/0x60
 uart_update_mctrl+0x98/0x120
 uart_shutdown+0x124/0x180
 uart_hangup+0x7c/0x180
 __tty_hangup.part.0+0x408/0x440
 tty_vhangup_session+0x24/0x40
 disassociate_ctty.part.0+0x48/0x1b0
 disassociate_ctty+0x30/0x48
 do_exit+0x6fc/0xa30
 do_group_exit+0x40/0xb0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x68/0x120
 do_el0_svc+0x4c/0xe0
 el0_svc+0x3c/0x140
 el0t_64_sync_handler+0x128/0x140
 el0t_64_sync+0x19c/0x1a0
BUG: scheduling while atomic: getty/957/0x00000000
Modules linked in: bnep 8021q wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio dp83td510 realtek xhci_plat_hcd gpio_tps65219 tps65219_regulator tps65219_pwr
button dwc3 ite_it66121 tps65219 rtc_bq32k at24 udc_core roles ti_am65_cpsw_nuss k3_cppi_desc_pool k3_udma_glue ghash_ce sha2_ce sha256_arm64 sha1_ce snd_soc_s
imple_card gpio_regulator snd_soc_simple_card_utils fixed mdio_gpio mdio_bitbang gpio_keys display_connector sdhci_am654 dwc3_am62 rtc_ti_k3 rti_wdt reset_ti_s
ci k3_j72xx_bandgap pinctrl_single k3_udma k3_psil_lib snd_soc_davinci_mcasp snd_soc_ti_udma k3_ringacc snd_soc_ti_edma phylink snd_soc_ti_sdma sci_clk gpio_da
vinci virt_dma ti_sci_pm_domains snd_soc_core tidss 8250_omap snd_pcm_dmaengine ac97_bus drm_dma_helper snd_pcm drm_display_helper snd_timer cec snd soundcore 
sa2ul spi_omap2_mcspi phy_gmii_sel syscon_clk i2c_omap aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 2 UID: 0 PID: 957 Comm: getty Tainted: G        W          6.12.3-yocto-standard #1
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Call trace:
 dump_backtrace.part.0+0xe4/0x100
 show_stack+0x24/0x40
 dump_stack_lvl+0x64/0x88
 dump_stack+0x1c/0x30
 __schedule_bug+0x60/0x90
 __schedule+0x83c/0xcf8
 schedule+0x40/0x158
 rpm_resume+0x1b8/0x690
 __pm_runtime_resume+0x5c/0xb0
 omap_8250_pm+0x34/0x1a8 [8250_omap]
 serial8250_pm+0x24/0x60
 uart_hangup+0xf4/0x180
 __tty_hangup.part.0+0x408/0x440
 tty_vhangup_session+0x24/0x40
 disassociate_ctty.part.0+0x48/0x1b0
 disassociate_ctty+0x30/0x48
 do_exit+0x6fc/0xa30
 do_group_exit+0x40/0xb0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x68/0x120
 do_el0_svc+0x4c/0xe0
 el0_svc+0x3c/0x140
 el0t_64_sync_handler+0x128/0x140
 el0t_64_sync+0x19c/0x1a0
BUG: scheduling while atomic: getty/1134/0x00000002
Modules linked in: bnep 8021q wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio dp83td510 realtek xhci_plat_hcd gpio_tps65219 tps65219_regulator tps65219_pwr
button dwc3 ite_it66121 tps65219 rtc_bq32k at24 udc_core roles ti_am65_cpsw_nuss k3_cppi_desc_pool k3_udma_glue ghash_ce sha2_ce sha256_arm64 sha1_ce snd_soc_s
imple_card gpio_regulator snd_soc_simple_card_utils fixed mdio_gpio mdio_bitbang gpio_keys display_connector sdhci_am654 dwc3_am62 rtc_ti_k3 rti_wdt reset_ti_s
ci k3_j72xx_bandgap pinctrl_single k3_udma k3_psil_lib snd_soc_davinci_mcasp snd_soc_ti_udma k3_ringacc snd_soc_ti_edma phylink snd_soc_ti_sdma sci_clk gpio_da
vinci virt_dma ti_sci_pm_domains snd_soc_core tidss 8250_omap snd_pcm_dmaengine ac97_bus drm_dma_helper snd_pcm drm_display_helper snd_timer cec snd soundcore 
sa2ul spi_omap2_mcspi phy_gmii_sel syscon_clk i2c_omap aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 1 UID: 0 PID: 1134 Comm: getty Tainted: G        W          6.12.3-yocto-standard #1
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Call trace:
 dump_backtrace.part.0+0xe4/0x100
 show_stack+0x24/0x40
 dump_stack_lvl+0x64/0x88
 dump_stack+0x1c/0x30
 __schedule_bug+0x60/0x90
 __schedule+0x83c/0xcf8
 schedule+0x40/0x158
 schedule_timeout+0xb0/0x1b0
 wait_for_completion_timeout+0x84/0x188
 ti_sci_set_device_state+0x134/0x220
 ti_sci_cmd_get_device_exclusive+0x24/0x40
 ti_sci_pd_power_on+0x34/0x68 [ti_sci_pm_domains]
 _genpd_power_on+0xa4/0x178
 genpd_power_on+0xb4/0x190
 genpd_runtime_resume+0xc8/0x260
 __rpm_callback+0x54/0x200
 rpm_callback+0x78/0x90
 rpm_resume+0x420/0x690
 __pm_runtime_resume+0x5c/0xb0
 omap8250_set_mctrl+0x38/0xe0 [8250_omap]
 serial8250_set_mctrl+0x2c/0x60
 uart_update_mctrl+0x98/0x120
 uart_shutdown+0x124/0x180
 uart_hangup+0x7c/0x180
 __tty_hangup.part.0+0x408/0x440
 tty_vhangup_session+0x24/0x40
 disassociate_ctty.part.0+0x48/0x1b0
 disassociate_ctty+0x30/0x48
 do_exit+0x6fc/0xa30
 do_group_exit+0x40/0xb0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x68/0x120
 do_el0_svc+0x4c/0xe0
 el0_svc+0x3c/0x140
 el0t_64_sync_handler+0x128/0x140
 el0t_64_sync+0x19c/0x1a0
BUG: scheduling while atomic: getty/1134/0x00000000
Modules linked in: bnep 8021q wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio dp83td510 realtek xhci_plat_hcd gpio_tps65219 tps65219_regulator tps65219_pwr
button dwc3 ite_it66121 tps65219 rtc_bq32k at24 udc_core roles ti_am65_cpsw_nuss k3_cppi_desc_pool k3_udma_glue ghash_ce sha2_ce sha256_arm64 sha1_ce snd_soc_s
imple_card gpio_regulator snd_soc_simple_card_utils fixed mdio_gpio mdio_bitbang gpio_keys display_connector sdhci_am654 dwc3_am62 rtc_ti_k3 rti_wdt reset_ti_s
ci k3_j72xx_bandgap pinctrl_single k3_udma k3_psil_lib snd_soc_davinci_mcasp snd_soc_ti_udma k3_ringacc snd_soc_ti_edma phylink snd_soc_ti_sdma sci_clk gpio_da
vinci virt_dma ti_sci_pm_domains snd_soc_core tidss 8250_omap snd_pcm_dmaengine ac97_bus drm_dma_helper snd_pcm drm_display_helper snd_timer cec snd soundcore 
sa2ul spi_omap2_mcspi phy_gmii_sel syscon_clk i2c_omap aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 1 UID: 0 PID: 1134 Comm: getty Tainted: G        W          6.12.3-yocto-standard #1
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Call trace:
 dump_backtrace.part.0+0xe4/0x100
 show_stack+0x24/0x40
 dump_stack_lvl+0x64/0x88
 dump_stack+0x1c/0x30
 __schedule_bug+0x60/0x90
 __schedule+0x83c/0xcf8
 schedule+0x40/0x158
 schedule_timeout+0x100/0x1b0
 wait_for_completion+0x84/0x178
 __flush_work+0x1e4/0x308
 flush_delayed_work+0x40/0x70
 fsnotify_wait_marks_destroyed+0x24/0x40
 fsnotify_destroy_group+0x68/0x128
 inotify_release+0x20/0x40
 __fput+0xd4/0x2e8
 ____fput+0x20/0x38
 task_work_run+0x88/0xf0
 do_exit+0x31c/0xa30
 do_group_exit+0x40/0xb0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x68/0x120
 do_el0_svc+0x4c/0xe0
 el0_svc+0x3c/0x140
 el0t_64_sync_handler+0x128/0x140
 el0t_64_sync+0x19c/0x1a0
BUG: scheduling while atomic: getty/1139/0x00000002
Modules linked in: bnep 8021q wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio dp83td510 realtek xhci_plat_hcd gpio_tps65219 tps65219_regulator tps65219_pwr
button dwc3 ite_it66121 tps65219 rtc_bq32k at24 udc_core roles ti_am65_cpsw_nuss k3_cppi_desc_pool k3_udma_glue ghash_ce sha2_ce sha256_arm64 sha1_ce snd_soc_s
imple_card gpio_regulator snd_soc_simple_card_utils fixed mdio_gpio mdio_bitbang gpio_keys display_connector sdhci_am654 dwc3_am62 rtc_ti_k3 rti_wdt reset_ti_s
ci k3_j72xx_bandgap pinctrl_single k3_udma k3_psil_lib snd_soc_davinci_mcasp snd_soc_ti_udma k3_ringacc snd_soc_ti_edma phylink snd_soc_ti_sdma sci_clk gpio_da
vinci virt_dma ti_sci_pm_domains snd_soc_core tidss 8250_omap snd_pcm_dmaengine ac97_bus drm_dma_helper snd_pcm drm_display_helper snd_timer cec snd soundcore 
sa2ul spi_omap2_mcspi phy_gmii_sel syscon_clk i2c_omap aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher



This issue only happens on kernel 6.12:
root@genericarm64:~# uname -a
Linux genericarm64 6.12.3-yocto-standard #1 SMP PREEMPT Thu Dec 12 17:25:00 UTC 2024 aarch64 GNU/Linux

In kernel 6.6 on genericarm64-alt image, there is no such issue.
Comment 1 Richard Purdie 2025-01-03 14:41:39 UTC
Would it be possible to retest this with 6.12.5 (patches in master-next)?
Comment 2 Bruce Ashfield 2025-01-03 14:45:35 UTC
Does the specific beaglebone black BSP boot and work ?

For our reference boards, we (Kevin) have tested the beaglebone black and it works, but we don't test/use the genericarm64 BSP for that.
Comment 3 Richard Purdie 2025-01-03 14:50:00 UTC
"paulg: a quick glance at the kernel barfage and I'm thinking bad config.  You can't tie your UART to critical printk path and then try and power down the thing."

It is possible there is some config in there to do with PM of the UARTs which are being used for console messaging...
Comment 4 Randy MacLeod 2025-01-09 15:41:37 UTC
If we can test this and prove that we have a fix in master, then we can release M1.
Comment 5 Randy MacLeod 2025-01-09 15:42:15 UTC
FYI, Trevor Gamblin may have a CI pipeline to do continuous builds and tests for this board but it's not setup just yet.
Comment 6 Ross Burton 2025-01-09 17:05:44 UTC
I can confirm that master is still broken.

After a few 'scheduling while atomic' messages the MMC then dies too:

mmc1: Timeout waiting for hardware interrupt.
mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
mmc1: sdhci: Sys addr:  0x00000010 | Version:  0x00001004
mmc1: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000000
mmc1: sdhci: Argument:  0x000bd140 | Trn mode: 0x0000002b
mmc1: sdhci: Present:   0x01f70000 | Host ctl: 0x000000df
mmc1: sdhci: Power:     0x0000000f | Blk gap:  0x00000080
mmc1: sdhci: Wake-up:   0x00000000 | Clock:    0x00000007
mmc1: sdhci: Timeout:   0x00000000 | Int stat: 0x00000003
mmc1: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
mmc1: sdhci: Caps:      0x3de8c801 | Caps_1:   0x18002407
mmc1: sdhci: Cmd:       0x0000193a | Max curr: 0x00000000
mmc1: sdhci: Resp[0]:   0x00000900 | Resp[1]:  0x01dbd37f
mmc1: sdhci: Resp[2]:   0x325b5900 | Resp[3]:  0x00000900
mmc1: sdhci: Host ctl2: 0x0000000b
mmc1: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x0000000089670218
mmc1: sdhci: ============================================
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...!: (1 ticks this GP) idle=b5bc/1/0x4000000000000002 softirq=3383/3383 fqs=2
rcu: 	(detected by 2, t=5255 jiffies, g=3573, q=282 ncpus=4)
Sending NMI from CPU 2 to CPUs 0:
mmc1: Timeout waiting for hardware interrupt.
mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
mmc1: sdhci: Sys addr:  0x00000010 | Version:  0x00001004
mmc1: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000000
mmc1: sdhci: Argument:  0x00000000 | Trn mode: 0x00000023
mmc1: sdhci: Present:   0x01f70000 | Host ctl: 0x000000df
mmc1: sdhci: Power:     0x0000000f | Blk gap:  0x00000080
mmc1: sdhci: Wake-up:   0x00000000 | Clock:    0x00000007
mmc1: sdhci: Timeout:   0x0000000e | Int stat: 0x00018002
mmc1: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
mmc1: sdhci: Caps:      0x3de8c801 | Caps_1:   0x18002407
mmc1: sdhci: Cmd:       0x00000c1b | Max curr: 0x00000000
mmc1: sdhci: Resp[0]:   0x00000900 | Resp[1]:  0x01dbd37f
mmc1: sdhci: Resp[2]:   0x325b5900 | Resp[3]:  0x00000900
mmc1: sdhci: Host ctl2: 0x0000000b
mmc1: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x0000000089670218
mmc1: sdhci: ============================================
rcu: rcu_preempt kthread timer wakeup didn't happen for 7737 jiffies! g3573 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402
rcu: 	Possible timer handling issue on cpu=1 timer-softirq=2407
rcu: rcu_preempt kthread starved for 7742 jiffies! g3573 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->cpu=1
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:I stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
Call trace:
 __switch_to+0xe0/0x148
 __schedule+0x380/0xcf8
 schedule+0x40/0x158
 schedule_timeout+0xb0/0x1b0
 rcu_gp_fqs_loop+0x140/0x760
 rcu_gp_kthread+0x244/0x2a0
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: Stack dump where RCU GP kthread last ran:
Sending NMI from CPU 2 to CPUs 1:
mmc1: Timeout waiting for hardware cmd interrupt.
mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
mmc1: sdhci: Sys addr:  0x00000010 | Version:  0x00001004
mmc1: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000000
mmc1: sdhci: Argument:  0xaaaa0000 | Trn mode: 0x00000023
mmc1: sdhci: Present:   0x01f70000 | Host ctl: 0x000000df
mmc1: sdhci: Power:     0x0000000f | Blk gap:  0x00000080
mmc1: sdhci: Wake-up:   0x00000000 | Clock:    0x00000007
mmc1: sdhci: Timeout:   0x0000000e | Int stat: 0x00018001
mmc1: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
mmc1: sdhci: Caps:      0x3de8c801 | Caps_1:   0x18002407
mmc1: sdhci: Cmd:       0x00000d1a | Max curr: 0x00000000
mmc1: sdhci: Resp[0]:   0x00400900 | Resp[1]:  0x01dbd37f
mmc1: sdhci: Resp[2]:   0x325b5900 | Resp[3]:  0x00000900
mmc1: sdhci: Host ctl2: 0x0000000b
mmc1: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x0000000089670218
mmc1: sdhci: ============================================
mmc1: Timeout waiting for hardware cmd interrupt.
mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
mmc1: sdhci: Sys addr:  0x00000010 | Version:  0x00001004
mmc1: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000000
mmc1: sdhci: Argument:  0xaaaa0000 | Trn mode: 0x00000023
mmc1: sdhci: Present:   0x01f70000 | Host ctl: 0x000000df
mmc1: sdhci: Power:     0x0000000f | Blk gap:  0x00000080
mmc1: sdhci: Wake-up:   0x00000000 | Clock:    0x00000007
mmc1: sdhci: Timeout:   0x0000000e | Int stat: 0x00018001
mmc1: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
mmc1: sdhci: Caps:      0x3de8c801 | Caps_1:   0x18002407
mmc1: sdhci: Cmd:       0x00000d1a | Max curr: 0x00000000
mmc1: sdhci: Resp[0]:   0x00000900 | Resp[1]:  0x01dbd37f
mmc1: sdhci: Resp[2]:   0x325b5900 | Resp[3]:  0x00000900
mmc1: sdhci: Host ctl2: 0x0000000b
mmc1: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x0000000089670218
mmc1: sdhci: ============================================
mmc1: Timeout waiting for hardware cmd interrupt.
mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
mmc1: sdhci: Sys addr:  0x00000010 | Version:  0x00001004
mmc1: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000000
mmc1: sdhci: Argument:  0x00000000 | Trn mode: 0x00000023
mmc1: sdhci: Present:   0x01f70000 | Host ctl: 0x000000df
mmc1: sdhci: Power:     0x0000000f | Blk gap:  0x00000080
mmc1: sdhci: Wake-up:   0x00000000 | Clock:    0x00000007
mmc1: sdhci: Timeout:   0x0000000e | Int stat: 0x00018002
mmc1: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
mmc1: sdhci: Caps:      0x3de8c801 | Caps_1:   0x18002407
mmc1: sdhci: Cmd:       0x00000c1a | Max curr: 0x00000000
mmc1: sdhci: Resp[0]:   0x00000900 | Resp[1]:  0x01dbd37f
mmc1: sdhci: Resp[2]:   0x325b5900 | Resp[3]:  0x00000900
mmc1: sdhci: Host ctl2: 0x0000000b
mmc1: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x0000000089670218
mmc1: sdhci: ============================================
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...0: (1 ticks this GP) idle=b5bc/1/0x4000000000000002 softirq=3383/3383 fqs=1847
rcu: 	(detected by 2, t=26032 jiffies, g=3573, q=919 ncpus=4)
Sending NMI from CPU 2 to CPUs 0:
rcu: rcu_preempt kthread starved for 14546 jiffies! g3573 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=2
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:R  running task     stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
Call trace:
 __switch_to+0xe0/0x148
 __schedule+0x380/0xcf8
 schedule+0x40/0x158
 schedule_timeout+0xb0/0x1b0
 rcu_gp_fqs_loop+0x140/0x760
 rcu_gp_kthread+0x244/0x2a0
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: Stack dump where RCU GP kthread last ran:
CPU: 2 UID: 0 PID: 64 Comm: kworker/2:1 Tainted: G        W          6.12.8-yocto-standard #1
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Workqueue: events bpf_prog_free_deferred
pstate: 20400005 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : smp_call_function_many_cond+0x1a4/0x690
lr : smp_call_function_many_cond+0x160/0x690
sp : ffff80008278bb80
x29: ffff80008278bb80 x28: 0000000000000002 x27: 0000000000000004
x26: ffff800081ca8ea0 x25: ffff00007f99c840 x24: ffff80008013d228
x23: ffff00007f9792c0 x22: ffff800081caa6d8 x21: ffff800081be7840
x20: 0000000000000000 x19: ffff800081caa6d8 x18: ffff800082665060
x17: ffff000001019cc0 x16: 0000000000000000 x15: 0000000000001000
x14: 0000000000000000 x13: 0000000000000030 x12: 0101010101010101
x11: 7f7f7f7f7f7f7f7f x10: fefefefefefefeff x9 : ffff8000808a44fc
x8 : ffff00000040f1f8 x7 : 0000000000000000 x6 : ffff800081ca8000
x5 : 0000000000000000 x4 : 0000000000000000 x3 : ffff00007f93f848
x2 : 0000000000000000 x1 : 0000000000000011 x0 : 0000000000000000
Call trace:
 smp_call_function_many_cond+0x1a4/0x690
 kick_all_cpus_sync+0x50/0x88
 __text_poke+0xe4/0x118
 aarch64_insn_set+0x34/0x70
 bpf_arch_text_invalidate+0x28/0x50
 bpf_prog_pack_free+0xfc/0x210
 bpf_jit_binary_pack_free+0x2c/0x140
 bpf_jit_free+0x5c/0xa8
 bpf_prog_free_deferred+0x138/0x170
 process_one_work+0x19c/0x408
 worker_thread+0x25c/0x380
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...0: (1 ticks this GP) idle=b5bc/1/0x4000000000000002 softirq=3383/3383 fqs=1847
rcu: 	(detected by 2, t=44339 jiffies, g=3573, q=919 ncpus=4)
Sending NMI from CPU 2 to CPUs 0:
rcu: rcu_preempt kthread starved for 32853 jiffies! g3573 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=2
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:R  running task     stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
Call trace:
 __switch_to+0xe0/0x148
 __schedule+0x380/0xcf8
 schedule+0x40/0x158
 schedule_timeout+0xb0/0x1b0
 rcu_gp_fqs_loop+0x140/0x760
 rcu_gp_kthread+0x244/0x2a0
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: Stack dump where RCU GP kthread last ran:
CPU: 2 UID: 0 PID: 64 Comm: kworker/2:1 Tainted: G        W          6.12.8-yocto-standard #1
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Workqueue: events bpf_prog_free_deferred
pstate: 20400005 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : smp_call_function_many_cond+0x1a4/0x690
lr : smp_call_function_many_cond+0x160/0x690
sp : ffff80008278bb80
x29: ffff80008278bb80 x28: 0000000000000002 x27: 0000000000000004
x26: ffff800081ca8ea0 x25: ffff00007f99c840 x24: ffff80008013d228
x23: ffff00007f9792c0 x22: ffff800081caa6d8 x21: ffff800081be7840
x20: 0000000000000000 x19: ffff800081caa6d8 x18: ffff800082665060
x17: ffff000001019cc0 x16: 0000000000000000 x15: 0000000000001000
x14: 0000000000000000 x13: 0000000000000030 x12: 0101010101010101
x11: 7f7f7f7f7f7f7f7f x10: fefefefefefefeff x9 : ffff8000808a44fc
x8 : ffff00000040f1f8 x7 : 0000000000000000 x6 : ffff800081ca8000
x5 : 0000000000000000 x4 : 0000000000000000 x3 : ffff00007f93f848
x2 : 0000000000000000 x1 : 0000000000000011 x0 : 0000000000000000
Call trace:
 smp_call_function_many_cond+0x1a4/0x690
 kick_all_cpus_sync+0x50/0x88
 __text_poke+0xe4/0x118
 aarch64_insn_set+0x34/0x70
 bpf_arch_text_invalidate+0x28/0x50
 bpf_prog_pack_free+0xfc/0x210
 bpf_jit_binary_pack_free+0x2c/0x140
 bpf_jit_free+0x5c/0xa8
 bpf_prog_free_deferred+0x138/0x170
 process_one_work+0x19c/0x408
 worker_thread+0x25c/0x380
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...0: (1 ticks this GP) idle=b5bc/1/0x4000000000000002 softirq=3383/3383 fqs=1847
rcu: 	(detected by 2, t=62646 jiffies, g=3573, q=919 ncpus=4)
Sending NMI from CPU 2 to CPUs 0:
rcu: rcu_preempt kthread starved for 51160 jiffies! g3573 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=2
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:R  running task     stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
Call trace:
 __switch_to+0xe0/0x148
 __schedule+0x380/0xcf8
 schedule+0x40/0x158
 schedule_timeout+0xb0/0x1b0
 rcu_gp_fqs_loop+0x140/0x760
 rcu_gp_kthread+0x244/0x2a0
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: Stack dump where RCU GP kthread last ran:
CPU: 2 UID: 0 PID: 64 Comm: kworker/2:1 Tainted: G        W          6.12.8-yocto-standard #1
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Workqueue: events bpf_prog_free_deferred
pstate: 20400005 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : smp_call_function_many_cond+0x1a4/0x690
lr : smp_call_function_many_cond+0x160/0x690
sp : ffff80008278bb80
x29: ffff80008278bb80 x28: 0000000000000002 x27: 0000000000000004
x26: ffff800081ca8ea0 x25: ffff00007f99c840 x24: ffff80008013d228
x23: ffff00007f9792c0 x22: ffff800081caa6d8 x21: ffff800081be7840
x20: 0000000000000000 x19: ffff800081caa6d8 x18: ffff800082665060
x17: ffff000001019cc0 x16: 0000000000000000 x15: 0000000000001000
x14: 0000000000000000 x13: 0000000000000030 x12: 0101010101010101
x11: 7f7f7f7f7f7f7f7f x10: fefefefefefefeff x9 : ffff8000808a44fc
x8 : ffff00000040f1f8 x7 : 0000000000000000 x6 : ffff800081ca8000
x5 : 0000000000000000 x4 : 0000000000000000 x3 : ffff00007f93f848
x2 : 0000000000000000 x1 : 0000000000000011 x0 : 0000000000000000
Call trace:
 smp_call_function_many_cond+0x1a4/0x690
 kick_all_cpus_sync+0x50/0x88
 __text_poke+0xe4/0x118
 aarch64_insn_set+0x34/0x70
 bpf_arch_text_invalidate+0x28/0x50
 bpf_prog_pack_free+0xfc/0x210
 bpf_jit_binary_pack_free+0x2c/0x140
 bpf_jit_free+0x5c/0xa8
 bpf_prog_free_deferred+0x138/0x170
 process_one_work+0x19c/0x408
 worker_thread+0x25c/0x380
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...0: (1 ticks this GP) idle=b5bc/1/0x4000000000000002 softirq=3383/3383 fqs=1847
rcu: 	(detected by 2, t=80953 jiffies, g=3573, q=919 ncpus=4)
Sending NMI from CPU 2 to CPUs 0:
rcu: rcu_preempt kthread starved for 69467 jiffies! g3573 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=2
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:R  running task     stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
Call trace:
 __switch_to+0xe0/0x148
 __schedule+0x380/0xcf8
 schedule+0x40/0x158
 schedule_timeout+0xb0/0x1b0
 rcu_gp_fqs_loop+0x140/0x760
 rcu_gp_kthread+0x244/0x2a0
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: Stack dump where RCU GP kthread last ran:
CPU: 2 UID: 0 PID: 64 Comm: kworker/2:1 Tainted: G        W          6.12.8-yocto-standard #1
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Workqueue: events bpf_prog_free_deferred
pstate: 20400005 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : smp_call_function_many_cond+0x1a4/0x690
lr : smp_call_function_many_cond+0x160/0x690
sp : ffff80008278bb80
x29: ffff80008278bb80 x28: 0000000000000002 x27: 0000000000000004
x26: ffff800081ca8ea0 x25: ffff00007f99c840 x24: ffff80008013d228
x23: ffff00007f9792c0 x22: ffff800081caa6d8 x21: ffff800081be7840
x20: 0000000000000000 x19: ffff800081caa6d8 x18: ffff800082665060
x17: ffff000001019cc0 x16: 0000000000000000 x15: 0000000000001000
x14: 0000000000000000 x13: 0000000000000030 x12: 0101010101010101
x11: 7f7f7f7f7f7f7f7f x10: fefefefefefefeff x9 : ffff8000808a44fc
x8 : ffff00000040f1f8 x7 : 0000000000000000 x6 : ffff800081ca8000
x5 : 0000000000000000 x4 : 0000000000000000 x3 : ffff00007f93f848
x2 : 0000000000000000 x1 : 0000000000000011 x0 : 0000000000000000
Call trace:
 smp_call_function_many_cond+0x1a4/0x690
 kick_all_cpus_sync+0x50/0x88
 __text_poke+0xe4/0x118
 aarch64_insn_set+0x34/0x70
 bpf_arch_text_invalidate+0x28/0x50
 bpf_prog_pack_free+0xfc/0x210
 bpf_jit_binary_pack_free+0x2c/0x140
 bpf_jit_free+0x5c/0xa8
 bpf_prog_free_deferred+0x138/0x170
 process_one_work+0x19c/0x408
 worker_thread+0x25c/0x380
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...0: (1 ticks this GP) idle=b5bc/1/0x4000000000000002 softirq=3383/3383 fqs=1847
rcu: 	(detected by 2, t=99260 jiffies, g=3573, q=919 ncpus=4)
Sending NMI from CPU 2 to CPUs 0:
rcu: rcu_preempt kthread starved for 87774 jiffies! g3573 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=2
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:R  running task     stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
Call trace:
 __switch_to+0xe0/0x148
 __schedule+0x380/0xcf8
 schedule+0x40/0x158
 schedule_timeout+0xb0/0x1b0
 rcu_gp_fqs_loop+0x140/0x760
 rcu_gp_kthread+0x244/0x2a0
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
rcu: Stack dump where RCU GP kthread last ran:
CPU: 2 UID: 0 PID: 64 Comm: kworker/2:1 Tainted: G        W          6.12.8-yocto-standard #1
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Workqueue: events bpf_prog_free_deferred
pstate: 20400005 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : smp_call_function_many_cond+0x1a4/0x690
lr : smp_call_function_many_cond+0x160/0x690
sp : ffff80008278bb80
x29: ffff80008278bb80 x28: 0000000000000002 x27: 0000000000000004
x26: ffff800081ca8ea0 x25: ffff00007f99c840 x24: ffff80008013d228
x23: ffff00007f9792c0 x22: ffff800081caa6d8 x21: ffff800081be7840
x20: 0000000000000000 x19: ffff800081caa6d8 x18: ffff800082665060
x17: ffff000001019cc0 x16: 0000000000000000 x15: 0000000000001000
x14: 0000000000000000 x13: 0000000000000030 x12: 0101010101010101
x11: 7f7f7f7f7f7f7f7f x10: fefefefefefefeff x9 : ffff8000808a44fc
x8 : ffff00000040f1f8 x7 : 0000000000000000 x6 : ffff800081ca8000
x5 : 0000000000000000 x4 : 0000000000000000 x3 : ffff00007f93f848
x2 : 0000000000000000 x1 : 0000000000000011 x0 : 0000000000000000
Call trace:
 smp_call_function_many_cond+0x1a4/0x690
 kick_all_cpus_sync+0x50/0x88
 __text_poke+0xe4/0x118
 aarch64_insn_set+0x34/0x70
 bpf_arch_text_invalidate+0x28/0x50
 bpf_prog_pack_free+0xfc/0x210
 bpf_jit_binary_pack_free+0x2c/0x140
 bpf_jit_free+0x5c/0xa8
 bpf_prog_free_deferred+0x138/0x170
 process_one_work+0x19c/0x408
 worker_thread+0x25c/0x380
 kthread+0x11c/0x128
 ret_from_fork+0x10/0x20
Comment 7 Mikko Rapeli 2025-01-15 16:23:27 UTC
AMD kv260 does not see this issue with genericarm64 machine core-image-sato and kernel 6.12.8 from last week. Will also check 6.12.9 once builds succeed in my queues.
Comment 8 Mikko Rapeli 2025-01-17 11:41:35 UTC
Seeing rcu stalls and reproducible hang on high IO load on rockpi4b using qemuarm64 based machine and upstream kernel.org arm64 defconfig with some amendments. These did not happen on 6.6.35 (old poky master snapshot).

https://ledge.validation.linaro.org/scheduler/job/99855

+ mount /dev/mmcblk1p7 /mnt -o rw,noatime,iversion
[    9.258121] mmc_host mmc1: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    9.423482] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
[    9.559223] EXT4-fs (mmcblk1p7): mounted filesystem 6091b3a4-ce08-3020-93a6-f755a22ef03b r/w with ordered data mode. Quota mode: disabled.
+ cd /mnt
+ echo 'Backup filesystem to tmpfs ...'
Backup filesystem to tmpfs ...
+ pigz -c
+ tar -cf - .
[   32.238210] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[   32.238813] rcu: 	4-...0: (1 GPs behind) idle=57d4/1/0x4000000000000000 softirq=1002/1004 fqs=2590
[   32.239648] rcu: 	(detected by 1, t=5252 jiffies, g=221, q=56 ncpus=6)
[   32.240257] Sending NMI from CPU 1 to CPUs 4:
[   42.241525] rcu: rcu_preempt kthread starved for 2499 jiffies! g221 f0x0 RCU_GP_DOING_FQS(6) ->state=0x0 ->cpu=3
[   42.242841] rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
[   42.243649] rcu: RCU grace-period kthread stack dump:
[   42.244100] task:rcu_preempt     state:I stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
[   42.244933] Call trace:
[   42.245158]  __switch_to+0xe8/0x148
[   42.245487]  __schedule+0x2c8/0xc08
[   42.245808]  schedule+0x3c/0x120
[   42.246105]  schedule_timeout+0x9c/0x1a8
[   42.246474]  rcu_gp_fqs_loop+0x12c/0x6e0
[   42.246862]  rcu_gp_kthread+0x210/0x260
[   42.247240]  kthread+0x118/0x130
[   42.247561]  ret_from_fork+0x10/0x20
[   42.247913] rcu: Stack dump where RCU GP kthread last ran:
[   42.248420] Sending NMI from CPU 1 to CPUs 3:
[   42.248917] NMI backtrace for cpu 3
[   42.249262] CPU: 3 UID: 0 PID: 0 Comm: swapper/3 Not tainted 6.12.9-yocto-standard #1
[   42.249990] Hardware name: radxa Radxa ROCK Pi 4A/Radxa ROCK Pi 4A, BIOS 2025.01-dirty 01/01/2025
[   42.250801] pstate: 40000005 (nZcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[   42.251448] pc : cpuidle_enter_state+0xbc/0x4e0
[   42.251886] lr : cpuidle_enter_state+0x270/0x4e0
[   42.252328] sp : ffff80008021bd90
[   42.252646] x29: ffff80008021bd90 x28: 0000000000000000 x27: 0000000000000000
[   42.253325] x26: 0000000000000001 x25: 0000000000000002 x24: 00000009d611a949
[   42.254003] x23: ffff1e3e019bb080 x22: 0000000000000002 x21: ffff1e3ef55074b8
[   42.254681] x20: 00000009d63b2979 x19: 0000000000000002 x18: 0000000000000000
[   42.255356] x17: 000000040044ffff x16: 00500072b5503510 x15: 0000000000000000
[   42.256034] x14: ffff1e3e00e22300 x13: ffff5d37cab20000 x12: 0000000034d4d91d
[   42.256711] x11: 0000000000000000 x10: 0000000000001000 x9 : ffffc10728157a04
[   42.257389] x8 : 00000072b5503510 x7 : 0000000000000004 x6 : 000000011d833e13
[   42.258066] x5 : 00ffffffffffffff x4 : 0000000000c49ba6 x3 : ffff80008021bcc0
[   42.258744] x2 : 0000000159f09adf x1 : ffff1e3e00e22300 x0 : 0000000000000000
[   42.259422] Call trace:
[   42.259662]  cpuidle_enter_state+0xbc/0x4e0
[   42.260068]  cpuidle_enter+0x40/0x60
[   42.260420]  do_idle+0x1ec/0x268
[   42.260741]  cpu_startup_entry+0x40/0x50
[   42.261122]  secondary_start_kernel+0x138/0x168
[   42.261560]  __secondary_switched+0xb8/0xc0
[  105.282211] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[  105.282814] rcu: 	4-...0: (1 GPs behind) idle=57d4/1/0x4000000000000000 softirq=1002/1004 fqs=10468
[  105.283657] rcu: 	(detected by 1, t=23513 jiffies, g=221, q=56 ncpus=6)
[  105.284274] Sending NMI from CPU 1 to CPUs 4:
[  115.285541] rcu: rcu_preempt kthread starved for 2500 jiffies! g221 f0x0 RCU_GP_DOING_FQS(6) ->state=0x0 ->cpu=5
[  115.286874] rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
[  115.287706] rcu: RCU grace-period kthread stack dump:
[  115.288174] task:rcu_preempt     state:I stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
[  115.289040] Call trace:
[  115.289282]  __switch_to+0xe8/0x148
[  115.289636]  __schedule+0x2c8/0xc08
[  115.289981]  schedule+0x3c/0x120
[  115.290302]  schedule_timeout+0x9c/0x1a8
[  115.290681]  rcu_gp_fqs_loop+0x12c/0x6e0
[  115.291068]  rcu_gp_kthread+0x210/0x260
[  115.291446]  kthread+0x118/0x130
[  115.291767]  ret_from_fork+0x10/0x20
[  115.292118] rcu: Stack dump where RCU GP kthread last ran:
[  115.292625] Sending NMI from CPU 1 to CPUs 5:
[  115.293094] NMI backtrace for cpu 5
[  115.293418] CPU: 5 UID: 0 PID: 0 Comm: swapper/5 Not tainted 6.12.9-yocto-standard #1
[  115.294109] Hardware name: radxa Radxa ROCK Pi 4A/Radxa ROCK Pi 4A, BIOS 2025.01-dirty 01/01/2025
[  115.294885] pstate: 40000005 (nZcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  115.295498] pc : cpuidle_enter_state+0x274/0x4e0
[  115.295914] lr : cpuidle_enter_state+0x270/0x4e0
[  115.296325] sp : ffff80008022bd90
[  115.296618] x29: ffff80008022bd90 x28: 0000000000000000 x27: 0000000000000000
[  115.297252] x26: 0000000000000001 x25: 0000000000000002 x24: 0000001ad7d2dda2
[  115.297883] x23: ffff1e3e019bc080 x22: 0000000000000002 x21: ffff1e3ef554b4b8
[  115.298514] x20: 0000001ad800efe7 x19: 0000000000000002 x18: 0000000000000000
[  115.299145] x17: 000000040044ffff x16: 00500074b5503510 x15: 0000000000000000
[  115.299776] x14: ffff1e3e00e24600 x13: ffff5d37cab64000 x12: 0000000034d4d91d
[  115.300407] x11: 0000000000000000 x10: 0000000000001000 x9 : ffffc10728157a04
[  115.301038] x8 : 00000074b5503510 x7 : 0000000000000004 x6 : 000000011d833e13
[  115.301669] x5 : 00ffffffffffffff x4 : 0000000000c49ba6 x3 : ffff80008022bcc0
[  115.302300] x2 : 00000001c26e2ee9 x1 : ffff1e3e00e24600 x0 : 0000000000000000
[  115.302932] Call trace:
[  115.303151]  cpuidle_enter_state+0x274/0x4e0
[  115.303530]  cpuidle_enter+0x40/0x60
[  115.303852]  do_idle+0x1ec/0x268
[  115.304142]  cpu_startup_entry+0x40/0x50
[  115.304493]  secondary_start_kernel+0x138/0x168
[  115.304897]  __secondary_switched+0xb8/0xc0
[  178.326209] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[  178.326798] rcu: 	4-...0: (1 GPs behind) idle=57d4/1/0x4000000000000000 softirq=1002/1004 fqs=18343
[  178.327640] rcu: 	(detected by 1, t=41774 jiffies, g=221, q=56 ncpus=6)
[  178.328258] Sending NMI from CPU 1 to CPUs 4:
[  188.329525] rcu: rcu_preempt kthread starved for 2500 jiffies! g221 f0x0 RCU_GP_DOING_FQS(6) ->state=0x0 ->cpu=5
[  188.330859] rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
[  188.331690] rcu: RCU grace-period kthread stack dump:
[  188.332160] task:rcu_preempt     state:I stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
[  188.333024] Call trace:
[  188.333265]  __switch_to+0xe8/0x148
[  188.333615]  __schedule+0x2c8/0xc08
[  188.333960]  schedule+0x3c/0x120
[  188.334281]  schedule_timeout+0x9c/0x1a8
[  188.334660]  rcu_gp_fqs_loop+0x12c/0x6e0
[  188.335045]  rcu_gp_kthread+0x210/0x260
[  188.335423]  kthread+0x118/0x130
[  188.335743]  ret_from_fork+0x10/0x20
[  188.336094] rcu: Stack dump where RCU GP kthread last ran:
[  188.336601] Sending NMI from CPU 1 to CPUs 5:
[  188.337069] NMI backtrace for cpu 5
[  188.337385] CPU: 5 UID: 0 PID: 0 Comm: swapper/5 Not tainted 6.12.9-yocto-standard #1
[  188.338074] Hardware name: radxa Radxa ROCK Pi 4A/Radxa ROCK Pi 4A, BIOS 2025.01-dirty 01/01/2025
[  188.338851] pstate: 40000005 (nZcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  188.339463] pc : cpuidle_enter_state+0x274/0x4e0
[  188.339875] lr : cpuidle_enter_state+0x270/0x4e0
[  188.340285] sp : ffff80008022bd90
[  188.340579] x29: ffff80008022bd90 x28: 0000000000000000 x27: 0000000000000000
[  188.341212] x26: 0000000000000001 x25: 0000000000000002 x24: 0000002bd995da32
[  188.341843] x23: ffff1e3e019bc080 x22: 0000000000000002 x21: ffff1e3ef554b4b8
[  188.342474] x20: 0000002bd9c39275 x19: 0000000000000002 x18: 0000000000000000
[  188.343105] x17: 000000040044ffff x16: 00500074b5503510 x15: 0000000000000000
[  188.343737] x14: ffff1e3e00e24600 x13: ffff5d37cab64000 x12: 0000000034d4d91d
[  188.344367] x11: 0000000000000000 x10: 0000000000001000 x9 : ffffc10728157a04
[  188.344998] x8 : 00000074b5503510 x7 : 0000000000000004 x6 : 000000011d833e13
[  188.345629] x5 : 00ffffffffffffff x4 : 0000000000c49ba6 x3 : ffff80008022bcc0
[  188.346260] x2 : 000000022aebafbd x1 : ffff1e3e00e24600 x0 : 0000000000000000
[  188.346891] Call trace:
[  188.347110]  cpuidle_enter_state+0x274/0x4e0
[  188.347491]  cpuidle_enter+0x40/0x60
[  188.347811]  do_idle+0x1ec/0x268
[  188.348099]  cpu_startup_entry+0x40/0x50
[  188.348450]  secondary_start_kernel+0x138/0x168
[  188.348852]  __secondary_switched+0xb8/0xc0
[  251.370209] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[  251.370799] rcu: 	4-...0: (1 GPs behind) idle=57d4/1/0x4000000000000000 softirq=1002/1004 fqs=26220
[  251.371641] rcu: 	(detected by 2, t=60035 jiffies, g=221, q=56 ncpus=6)
[  251.372257] Sending NMI from CPU 2 to CPUs 4:
[  261.373523] rcu: rcu_preempt kthread starved for 2500 jiffies! g221 f0x0 RCU_GP_DOING_FQS(6) ->state=0x0 ->cpu=5
[  261.374854] rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
[  261.375685] rcu: RCU grace-period kthread stack dump:
[  261.376153] task:rcu_preempt     state:I stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
[  261.377017] Call trace:
[  261.377258]  __switch_to+0xe8/0x148
[  261.377610]  __schedule+0x2c8/0xc08
[  261.377956]  schedule+0x3c/0x120
[  261.378278]  schedule_timeout+0x9c/0x1a8
[  261.378657]  rcu_gp_fqs_loop+0x12c/0x6e0
[  261.379043]  rcu_gp_kthread+0x210/0x260
[  261.379421]  kthread+0x118/0x130
[  261.379741]  ret_from_fork+0x10/0x20
[  261.380093] rcu: Stack dump where RCU GP kthread last ran:
[  261.380600] Sending NMI from CPU 2 to CPUs 5:
[  261.381066] NMI backtrace for cpu 5
[  261.381382] CPU: 5 UID: 0 PID: 0 Comm: swapper/5 Not tainted 6.12.9-yocto-standard #1
[  261.382071] Hardware name: radxa Radxa ROCK Pi 4A/Radxa ROCK Pi 4A, BIOS 2025.01-dirty 01/01/2025
[  261.382847] pstate: 40000005 (nZcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  261.383459] pc : cpuidle_enter_state+0x274/0x4e0
[  261.383871] lr : cpuidle_enter_state+0x270/0x4e0
[  261.384282] sp : ffff80008022bd90
[  261.384575] x29: ffff80008022bd90 x28: 0000000000000000 x27: 0000000000000000
[  261.385208] x26: 0000000000000001 x25: 0000000000000002 x24: 0000003cdb58d6c2
[  261.385839] x23: ffff1e3e019bc080 x22: 0000000000000002 x21: ffff1e3ef554b4b8
[  261.386471] x20: 0000003cdb8684c4 x19: 0000000000000002 x18: 0000000000000000
[  261.387102] x17: 000000040044ffff x16: 00500074b5503510 x15: 0000000000000000
[  261.387733] x14: ffff1e3e00e24600 x13: ffff5d37cab64000 x12: 0000000034d4d91d
[  261.388364] x11: 0000000000000000 x10: 0000000000001000 x9 : ffffc10728157a04
[  261.388995] x8 : 00000074b5503510 x7 : 0000000000000004 x6 : 000000011d833e13
[  261.389626] x5 : 00ffffffffffffff x4 : 0000000000c49ba6 x3 : ffff80008022bcc0
[  261.390257] x2 : 0000000293693282 x1 : ffff1e3e00e24600 x0 : 0000000000000000
[  261.390888] Call trace:
[  261.391107]  cpuidle_enter_state+0x274/0x4e0
[  261.391486]  cpuidle_enter+0x40/0x60
[  261.391806]  do_idle+0x1ec/0x268
[  261.392095]  cpu_startup_entry+0x3c/0x50
[  261.392445]  secondary_start_kernel+0x138/0x168
[  261.392848]  __secondary_switched+0xb8/0xc0
[  324.414253] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
[  324.414841] rcu: 	4-...0: (1 GPs behind) idle=57d4/1/0x4000000000000000 softirq=1002/1004 fqs=34097
[  324.415683] rcu: 	(detected by 0, t=78296 jiffies, g=221, q=338 ncpus=6)
[  324.416308] Sending NMI from CPU 0 to CPUs 4:
[  334.417575] rcu: rcu_preempt kthread starved for 2495 jiffies! g221 f0x0 RCU_GP_DOING_FQS(6) ->state=0x0 ->cpu=2
[  334.418909] rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
[  334.419741] rcu: RCU grace-period kthread stack dump:
[  334.420211] task:rcu_preempt     state:I stack:0     pid:18    tgid:18    ppid:2      flags:0x00000008
[  334.421075] Call trace:
[  334.421315]  __switch_to+0xe8/0x148
[  334.421666]  __schedule+0x2c8/0xc08
[  334.422011]  schedule+0x3c/0x120
[  334.422334]  schedule_timeout+0x9c/0x1a8
[  334.422713]  rcu_gp_fqs_loop+0x12c/0x6e0
[  334.423100]  rcu_gp_kthread+0x210/0x260
[  334.423478]  kthread+0x118/0x130
[  334.423798]  ret_from_fork+0x10/0x20
[  334.424150] rcu: Stack dump where RCU GP kthread last ran:
[  334.424657] Sending NMI from CPU 0 to CPUs 2:
[  334.425152] NMI backtrace for cpu 2
[  334.425496] CPU: 2 UID: 0 PID: 0 Comm: swapper/2 Not tainted 6.12.9-yocto-standard #1
[  334.426223] Hardware name: radxa Radxa ROCK Pi 4A/Radxa ROCK Pi 4A, BIOS 2025.01-dirty 01/01/2025
[  334.427034] pstate: 40000005 (nZcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  334.427681] pc : cpuidle_enter_state+0xbc/0x4e0
[  334.428119] lr : cpuidle_enter_state+0x270/0x4e0
[  334.428562] sp : ffff800080213d90
[  334.428879] x29: ffff800080213d90 x28: 0000000000000000 x27: 0000000000000000
[  334.429558] x26: 0000000000000001 x25: 0000000000000002 x24: 0000004ddd1c657a
[  334.430235] x23: ffff1e3e019ba880 x22: 0000000000000002 x21: ffff1e3ef54e54b8
[  334.430913] x20: 0000004ddd4ab8b1 x19: 0000000000000002 x18: 00000000add959ef
[  334.431590] x17: 000000040044ffff x16: 00500072b5503510 x15: 0000000000000000
[  334.432268] x14: ffff1e3e00e21180 x13: ffff5d37caafe000 x12: 0000000034d4d91d
[  334.432946] x11: 0000000000000000 x10: 0000000000001000 x9 : ffffc10728157a04
[  334.433622] x8 : 00000072b5503510 x7 : 0000000000000004 x6 : 000000011d833e13
[  334.434298] x5 : 00ffffffffffffff x4 : 0000000000c49ba6 x3 : ffff800080213cc0
[  334.434975] x2 : 00000002fbe6bd22 x1 : ffff1e3e00e21180 x0 : 0000000000000000
[  334.435652] Call trace:
[  334.435893]  cpuidle_enter_state+0xbc/0x4e0
[  334.436300]  cpuidle_enter+0x40/0x60
[  334.436652]  do_idle+0x1ec/0x268
[  334.436972]  cpu_startup_entry+0x40/0x50
[  334.437353]  secondary_start_kernel+0x138/0x168
[  334.437790]  __secondary_switched+0xb8/0xc0
Comment 9 Mikko Rapeli 2025-01-17 11:51:50 UTC
FWIW, the same kernel which hangs on rockpi4b, works on qemu, kv260, zcu102 and synquacer boards without any kernel issues.
Comment 10 Mikko Rapeli 2025-01-17 13:04:24 UTC
rockpi4b issue filed to https://bugzilla.kernel.org/show_bug.cgi?id=219704
Comment 11 Ross Burton 2025-01-17 13:38:12 UTC
Created attachment 5094 [details]
Beagle console log

Attaching a full console log from my beagleplay.
Comment 12 Ross Burton 2025-01-23 16:07:38 UTC
TI did some (slow) bisecting and isolated it down to a 6.7 change:

commit 8700a7ea5519fb0b3bad2362adfeac358c2119ce
Author: Tony Lindgren <tony@atomide.com>
Date:   Wed Oct 4 09:26:48 2023 +0300

    serial: 8250_omap: Drop pm_runtime_irq_safe()
Comment 13 Ross Burton 2025-02-20 16:15:17 UTC
A revert to stop the kernel hang has been merged into meta-yocto 4951957.  Keeping this open but at a lower priority to resolve the underlying 'opening bad tty' issue.
Comment 14 Yi Zhao 2025-03-12 03:16:59 UTC
Kernel hang and call trace are gone in 5.2 M3 rc1.
Comment 15 Ross Burton 2025-04-03 12:30:46 UTC
Just found this in linux master:

commit 910ef438e93cd2ceb70c72caea418710d648feef
Author: John Ogness <john.ogness@linutronix.de>
Date:   Tue Jan 7 22:33:00 2025 +0106

    serial: 8250: Provide flag for IER toggling for RS485

    For RS485 mode, if SER_RS485_RX_DURING_TX is not available, the
    console ->write() callback needs to enable/disable Tx. It does
    this by calling the ->rs485_start_tx() and ->rs485_stop_tx()
    callbacks. However, some of these callbacks also disable/enable
    interrupts and makes power management calls. This causes 2
    problems for console writing:

    1. A console write can occur in contexts that are illegal for
       pm_runtime_*(). It is not even necessary for console writing
       to use pm_runtime_*() because a console already does this in
       serial8250_console_setup() and serial8250_console_exit().

    2. The console ->write() callback already handles
       disabling/enabling the interrupts by properly restoring the
       previous IER value.

    Add an argument @toggle_ier to the ->rs485_start_tx() and
    ->rs485_stop_tx() callbacks to specify if they may disable/enable
    receive interrupts while using pm_runtime_*(). Console writing
    will not allow the toggling.

Looks relevant, will test.
Comment 16 Randy MacLeod 2025-04-10 18:01:24 UTC
Move to a HIGH for 5.2 since 
  kv260 and some other boards are DOA in 5.2 for genericarm64 w/o a fix

See:
https://lists.yoctoproject.org/g/poky/message/13592

If this problem and the one in the link above are not the same, 
please create a new defect and revert the milestone and importance 
of this defect.

Thanks.
Comment 17 Mikko Rapeli 2025-04-11 12:54:43 UTC
(In reply to Randy MacLeod from comment #16)
> Move to a HIGH for 5.2 since 
>   kv260 and some other boards are DOA in 5.2 for genericarm64 w/o a fix
> 
> See:
> https://lists.yoctoproject.org/g/poky/message/13592
> 
> If this problem and the one in the link above are not the same, 
> please create a new defect and revert the milestone and importance 
> of this defect.
> 
> Thanks.

I don't think these bugs are related. kv260 issue is about agetty startup on target with poky-altcfg distro, which currently is using only build time configured SERIAL_CONSOLES and agetty is not starter to tty's detected at runtime.
Comment 18 Randy MacLeod 2025-04-11 14:16:50 UTC
Thanks for the clarification Mikko.

I'm on vacation as of today and heading out the door soon so 
would you mind creating a new defect for the  kv260 issue  ?

Richard asked for one in yesterday's bug review meeting.

../Randy
Comment 19 Mikko Rapeli 2025-04-11 14:49:58 UTC
(In reply to Randy MacLeod from comment #18)
> Thanks for the clarification Mikko.
> 
> I'm on vacation as of today and heading out the door soon so 
> would you mind creating a new defect for the  kv260 issue  ?
> 
> Richard asked for one in yesterday's bug review meeting.
> 
> ../Randy

Done, created:

https://bugzilla.yoctoproject.org/show_bug.cgi?id=15830
Comment 20 Randy MacLeod 2025-04-18 18:04:26 UTC
Thanks Mikko.
Comment 21 Yi Zhao 2025-10-22 07:15:10 UTC
This issue occurs again in 5.3 M3 with kernel 6.16.

Image Location: https://valkyrie.yocto.io/pub/releases/yocto-5.3_M3.rc1/machines/genericarm64/

Git rev: oecore: 5298d01663f897e38380116edf23973d2a156cbc
         meta-yocto: fe65e142d0d9ba0e51ff9175ffa82e902f982a20


The system can boot up. But after login, The system randomly hangs:

root@genericarm64:~# BUG: scheduling while atomic: getty/1078/0x00000002
Modules linked in: bnep wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio dp83td510 realtek snd_soc_hdmi_codec tps65219_pwrbutton tps65219_regulator gpio_tps65219 xhci_plat_hcd dwc3 ite_it66121 tps65219 udc_co
re rtc_bq32k at24 roles ti_am65_cpsw_nuss k3_cppi_desc_pool k3_udma_glue ghash_ce sha1_ce snd_soc_simple_card snd_soc_simple_card_utils gpio_regulator mdio_gpio mdio_bitbang fixed gpio_keys snd_soc_davinci_mcasp
 sdhci_am654 snd_soc_ti_udma snd_soc_ti_edma snd_soc_ti_sdma k3_j72xx_bandgap dwc3_am62 rtc_ti_k3 k3_udma snd_soc_core irq_ti_sci_inta k3_psil_lib k3_ringacc snd_compress ac97_bus snd_pcm_dmaengine tidss sci_clk
 snd_pcm rti_wdt reset_ti_sci irq_ti_sci_intr am65_cpts phylink ti_sci_pm_domains virt_dma snd_timer pinctrl_single snd drm_display_helper gpio_davinci cec drm_dma_helper omap_mailbox sa2ul soundcore omap_hwspin
lock syscon_clk phy_gmii_sel 8250_omap i2c_omap mux_core spi_omap2_mcspi display_connector aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 1 UID: 0 PID: 1078 Comm: getty Not tainted 6.16.9-yocto-standard #1 PREEMPT 
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Call trace:
 show_stack+0x24/0x40 (C)
 dump_stack_lvl+0x64/0x88
 dump_stack+0x1c/0x2c
 __schedule_bug+0x5c/0x80
 __schedule+0xa3c/0xc78
 schedule+0x40/0x130
 schedule_timeout+0x8c/0x130
 wait_for_completion_timeout+0x88/0x170
 ti_sci_set_device_state+0x134/0x220
 ti_sci_cmd_get_device_exclusive+0x24/0x40
 ti_sci_pd_power_on+0x38/0x78 [ti_sci_pm_domains]
 _genpd_power_on+0xa8/0x170
 genpd_power_on+0xe4/0x268
 genpd_runtime_resume+0xc8/0x240
 __rpm_callback+0x54/0x230
 rpm_callback+0x84/0xa0
 rpm_resume+0x454/0x660
 __pm_runtime_resume+0x58/0xa8
 omap8250_set_mctrl+0x38/0xd8 [8250_omap]
 serial8250_set_mctrl+0x2c/0x60
 uart_update_mctrl+0x98/0x120
 uart_shutdown+0x118/0x178
 uart_hangup+0x78/0x190
 __tty_hangup.part.0+0x408/0x440
 tty_vhangup_session+0x24/0x40
 disassociate_ctty.part.0+0x44/0x1b8
 disassociate_ctty+0x30/0x48
 do_exit+0x6e4/0x9e0
 do_group_exit+0x3c/0xc0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x54/0xe8
 do_el0_svc+0x48/0xd8
 el0_svc+0x40/0x168
 el0t_64_sync_handler+0x114/0x140
 el0t_64_sync+0x1a4/0x1a8
BUG: scheduling while atomic: getty/1078/0x00000000
Modules linked in: bnep wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio dp83td510 realtek snd_soc_hdmi_codec tps65219_pwrbutton tps65219_regulator gpio_tps65219 xhci_plat_hcd dwc3 ite_it66121 tps65219 udc_co
re rtc_bq32k at24 roles ti_am65_cpsw_nuss k3_cppi_desc_pool k3_udma_glue ghash_ce sha1_ce snd_soc_simple_card snd_soc_simple_card_utils gpio_regulator mdio_gpio mdio_bitbang fixed gpio_keys snd_soc_davinci_mcasp
 sdhci_am654 snd_soc_ti_udma snd_soc_ti_edma snd_soc_ti_sdma k3_j72xx_bandgap dwc3_am62 rtc_ti_k3 k3_udma snd_soc_core irq_ti_sci_inta k3_psil_lib k3_ringacc snd_compress ac97_bus snd_pcm_dmaengine tidss sci_clk
 snd_pcm rti_wdt reset_ti_sci irq_ti_sci_intr am65_cpts phylink ti_sci_pm_domains virt_dma snd_timer pinctrl_single snd drm_display_helper gpio_davinci cec drm_dma_helper omap_mailbox sa2ul soundcore omap_hwspin
lock syscon_clk phy_gmii_sel 8250_omap i2c_omap mux_core spi_omap2_mcspi display_connector aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 0 UID: 0 PID: 1078 Comm: getty Tainted: G        W           6.16.9-yocto-standard #1 PREEMPT 
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Call trace:
 show_stack+0x24/0x40 (C)
 dump_stack_lvl+0x64/0x88
 dump_stack+0x1c/0x2c
 __schedule_bug+0x5c/0x80
 __schedule+0xa3c/0xc78
 schedule+0x40/0x130
 rpm_resume+0x190/0x660
 __pm_runtime_resume+0x58/0xa8
 omap_8250_pm+0x34/0x1b0 [8250_omap]
 serial8250_pm+0x24/0x60
 uart_hangup+0xfc/0x190
 __tty_hangup.part.0+0x408/0x440
 tty_vhangup_session+0x24/0x40
 disassociate_ctty.part.0+0x44/0x1b8
 disassociate_ctty+0x30/0x48
 do_exit+0x6e4/0x9e0
 do_group_exit+0x3c/0xc0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x54/0xe8
 do_el0_svc+0x48/0xd8
 el0_svc+0x40/0x168
 el0t_64_sync_handler+0x114/0x140
 el0t_64_sync+0x1a4/0x1a8
------------[ cut here ]------------
WARNING: CPU: 0 PID: 1078 at /usr/src/kernel/kernel/sched/sched.h:2490 __schedule+0xa2c/0xc78
Modules linked in: bnep wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio dp83td510 realtek snd_soc_hdmi_codec tps65219_pwrbutton tps65219_regulator gpio_tps65219 xhci_plat_hcd dwc3 ite_it66121 tps65219 udc_co
re rtc_bq32k at24 roles ti_am65_cpsw_nuss k3_cppi_desc_pool k3_udma_glue ghash_ce sha1_ce snd_soc_simple_card snd_soc_simple_card_utils gpio_regulator mdio_gpio mdio_bitbang fixed gpio_keys snd_soc_davinci_mcasp
 sdhci_am654 snd_soc_ti_udma snd_soc_ti_edma snd_soc_ti_sdma k3_j72xx_bandgap dwc3_am62 rtc_ti_k3 k3_udma snd_soc_core irq_ti_sci_inta k3_psil_lib k3_ringacc snd_compress ac97_bus snd_pcm_dmaengine tidss sci_clk
 snd_pcm rti_wdt reset_ti_sci irq_ti_sci_intr am65_cpts phylink ti_sci_pm_domains virt_dma snd_timer pinctrl_single snd drm_display_helper gpio_davinci cec drm_dma_helper omap_mailbox sa2ul soundcore omap_hwspin
lock syscon_clk phy_gmii_sel 8250_omap i2c_omap mux_core spi_omap2_mcspi display_connector aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 0 UID: 0 PID: 1078 Comm: getty Tainted: G        W           6.16.9-yocto-standard #1 PREEMPT 
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
pstate: 204000c5 (nzCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : __schedule+0xa2c/0xc78
lr : __schedule+0xa1c/0xc78
sp : ffff8000846dba90
x29: ffff8000846dbac0 x28: ffff00000e2e6a80 x27: ffff00007f94d1c0
x26: 0000000000000001 x25: ffff00000e2e70e8 x24: 0000000000000000
x23: ffff8000813d4138 x22: 0000000000000000 x21: ffff800081fab708
x20: ffff00000e2e6a80 x19: ffff0000007811c0 x18: ffff800082d77090
x17: ffff000000683b40 x16: 0000000000000004 x15: 00000000ffffffff
x14: 0000000000000000 x13: ffff8000846db223 x12: ffff8000846db000
x11: 00000000fffffffd x10: 00000000ffffefff x9 : ffff8000813d3e9c
x8 : ffff00000e2e6a80 x7 : 0000000000017fe8 x6 : 00000000b8d49654
x5 : 03ffffffffffffff x4 : 0000000000000015 x3 : 0000000000000000
x2 : 0000000002d93d81 x1 : 000000000b550fa0 x0 : ffff0000007811c0
Call trace:
 __schedule+0xa2c/0xc78 (P)
 schedule+0x40/0x130
 rpm_resume+0x190/0x660
 __pm_runtime_resume+0x58/0xa8
 omap_8250_pm+0x34/0x1b0 [8250_omap]
 serial8250_pm+0x24/0x60
 uart_hangup+0xfc/0x190
 __tty_hangup.part.0+0x408/0x440
 tty_vhangup_session+0x24/0x40
 disassociate_ctty.part.0+0x44/0x1b8
 disassociate_ctty+0x30/0x48
 do_exit+0x6e4/0x9e0
 do_group_exit+0x3c/0xc0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x54/0xe8
 do_el0_svc+0x48/0xd8
 el0_svc+0x40/0x168
 el0t_64_sync_handler+0x114/0x140
 el0t_64_sync+0x1a4/0x1a8
---[ end trace 0000000000000000 ]---
mmc1: Timeout waiting for hardware interrupt.
mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
mmc1: sdhci: Sys addr:  0x00000060 | Version:  0x00001004
mmc1: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000000
mmc1: sdhci: Argument:  0x0048cd28 | Trn mode: 0x0000002b
mmc1: sdhci: Present:   0x01f70000 | Host ctl: 0x000000df
mmc1: sdhci: Power:     0x0000000f | Blk gap:  0x00000080
mmc1: sdhci: Wake-up:   0x00000000 | Clock:    0x00000007
mmc1: sdhci: Timeout:   0x00000000 | Int stat: 0x00000003
mmc1: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
mmc1: sdhci: Caps:      0x3de8c801 | Caps_1:   0x18002407
mmc1: sdhci: Cmd:       0x0000193a | Max curr: 0x00000000
mmc1: sdhci: Resp[0]:   0x00000900 | Resp[1]:  0x00e6cf7f
mmc1: sdhci: Resp[2]:   0x325b5900 | Resp[3]:  0x00000900
mmc1: sdhci: Host ctl2: 0x00000003
mmc1: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x00000000f4208290
mmc1: sdhci: ============================================
mmc1: Timeout waiting for hardware interrupt.
mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
mmc1: sdhci: Sys addr:  0x00000060 | Version:  0x00001004
mmc1: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000000
mmc1: sdhci: Argument:  0x00000000 | Trn mode: 0x00000023
mmc1: sdhci: Present:   0x01f70000 | Host ctl: 0x000000df
mmc1: sdhci: Power:     0x0000000f | Blk gap:  0x00000080
mmc1: sdhci: Wake-up:   0x00000000 | Clock:    0x00000007
mmc1: sdhci: Timeout:   0x0000000e | Int stat: 0x00018002
mmc1: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
mmc1: sdhci: Caps:      0x3de8c801 | Caps_1:   0x18002407
mmc1: sdhci: Cmd:       0x00000c1b | Max curr: 0x00000000
mmc1: sdhci: Resp[0]:   0x00000900 | Resp[1]:  0x00e6cf7f
mmc1: sdhci: Resp[2]:   0x325b5900 | Resp[3]:  0x00000900
mmc1: sdhci: Host ctl2: 0x00000003
mmc1: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x00000000f4208290
mmc1: sdhci: ============================================
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu:    (detected by 3, t=5256 jiffies, g=26165, q=238 ncpus=4)
rcu: All QSes seen, last rcu_preempt kthread activity 5237 (4294946989-4294941752), jiffies_till_next_fqs=1, root ->qsmask 0x0
rcu: rcu_preempt kthread timer wakeup didn't happen for 5241 jiffies! g26165 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x200
rcu:    Possible timer handling issue on cpu=1 timer-softirq=5280
rcu: rcu_preempt kthread starved for 5242 jiffies! g26165 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x200 ->cpu=1
rcu:    Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:R stack:0     pid:16    tgid:16    ppid:2      task_flags:0x208040 flags:0x00000010
Call trace:
 __switch_to+0xdc/0x148 (T)
 __schedule+0x3f8/0xc78
 schedule+0x40/0x130
 schedule_timeout+0x8c/0x130
 rcu_gp_fqs_loop+0x12c/0x6e8
 rcu_gp_kthread+0x220/0x278
 kthread+0x14c/0x240
 ret_from_fork+0x10/0x20


This issue only happens on kernel 6.16:
root@genericarm64:~# uname -a
Linux genericarm64 6.16.9-yocto-standard #1 SMP PREEMPT Mon Sep 29 01:39:04 UTC 2025 aarch64 GNU/Linux
root@genericarm64:~#

In kernel 6.12 on genericarm64-alt image, there is no such issue.
Comment 22 Bruce Ashfield 2025-10-22 12:58:45 UTC
I wonder if I misplaced the serial patches from Mikko on 6.16, when the genericarm64 work was underway, I noticed that they were being bbappended instead of being in linux-yocto.

I created branches for the genericarm64 work, and put the revert + serial patch onto those branches.

I don't have hardware to test this on, but let me do a build and at least confirm that the serial patches look like they are all in place.
Comment 23 Mikko Rapeli 2025-10-28 11:35:36 UTC
6.16 genericarm64 kernel does have the same uart revert patches as 6.12:

https://lists.yoctoproject.org/g/linux-yocto/message/15568

and its dependency

https://lists.yoctoproject.org/g/linux-yocto/message/15569

I think we need to debug/bisect further what is breaking this now
on beagleplay. The meta-yocto-bsp bbappend changes seem to be correctly applied to linux-yocto v6.16/standard/genericarm64 branch used by the kernel recipe.
Comment 24 Bruce Ashfield 2025-10-28 20:44:18 UTC
I came to the same conclusion, and I just check that 6.17 also has the serial changes applied to the genericarm64 branches.

So we are good on that front

I wonder if this is always happening on -alt, i.e. is there a systemd interaction ?

I don't have the hardware to test this, so I'm not much good for bisecting and boot testing. If only qemu would expose the issue, then we could do some long running boot loops.
Comment 25 Yi Zhao 2025-10-29 07:28:41 UTC
(In reply to Bruce Ashfield from comment #24)
> I came to the same conclusion, and I just check that 6.17 also has the
> serial changes applied to the genericarm64 branches.
> 
> So we are good on that front
> 
> I wonder if this is always happening on -alt, i.e. is there a systemd
> interaction ?

This issue happens on poky distro with sysvinit and kernel 6.16. The poky-alt distro with systemd doesn't have this issue because the default kernel is 6.12 in this distro.


> 
> I don't have the hardware to test this, so I'm not much good for bisecting
> and boot testing. If only qemu would expose the issue, then we could do some
> long running boot loops.
Comment 26 Mikko Rapeli 2025-10-29 08:21:25 UTC
I got access to a BeaglePlay and am running
https://valkyrie.yocto.io/pub/releases/yocto-5.3_M3.rc1/machines/genericarm64/core-image-sato-genericarm64.rootfs-20251017083208.wic.zst
on it. Serial console and ethernet works correctly. So far no hangs.

My device has an older u-boot firmware which I have not changed or updated:

U-Boot SPL 2024.07 (Aug 30 2024 - 14:27:24 +0000)
SYSFW ABI: 3.1 (firmware rev 0x000a '10.0.2--v10.00.02 (Fiery Fox)')
Changed A53 CPU frequency to 1250000000Hz (T grade) in DT
SPL initial stack usage: 13400 bytes
Trying to boot from MMC1
Starting ATF on ARM64 core...

NOTICE:  BL31: v2.11.0(release):v2.11.0
NOTICE:  BL31: Built : 14:27:24, Aug 30 2024
I/TC: 
I/TC: OP-TEE version: 4.3.0 (gcc version 12.2.0 (Debian 12.2.0-14)) #1 Fri Aug 30 14:27:24 UTC 2024 aarch64
I/TC: WARNING: This OP-TEE configuration might be insecure!
I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
I/TC: Primary CPU initializing
I/TC: GIC redistributor base address not provided
I/TC: Assuming default GIC group status and modifier
I/TC: SYSFW ABI: 3.1 (firmware rev 0x000a '10.0.2--v10.00.02 (Fiery Fox)')
I/TC: HUK Initialized
I/TC: Primary CPU switching to normal world boot

U-Boot SPL 2024.07 (Aug 30 2024 - 14:27:24 +0000)
SYSFW ABI: 3.1 (firmware rev 0x000a '10.0.2--v10.00.02 (Fiery Fox)')
SPL initial stack usage: 1760 bytes
Trying to boot from MMC1


U-Boot 2024.07 (Aug 30 2024 - 14:27:24 +0000)

SoC:   AM62X SR1.0 GP
Model: BeagleBoard.org BeaglePlay
DRAM:  2 GiB
Core:  99 devices, 28 uclasses, devicetree: separate
MMC:   mmc@fa10000: 0, mmc@fa00000: 1, mmc@fa20000: 2
Loading Environment from nowhere... OK
In:    serial@2800000
Out:   serial@2800000
Err:   serial@2800000
Net:   am65_cpsw_nuss_port ethernet@8000000port@1: phy_connect() failed

Boot to serial console prompt works but there are some error messages which to me are unrelated:

Linux version 6.16.9-yocto-standard (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 15.2.0, GNU ld (GNU Binutils) 2.45.0.20250908) #1 SMP PREEMPT Mon Sep 29 01:39:04 UTC 2025
KASLR disabled due to lack of seed
Machine model: BeagleBoard.org BeaglePlay
...
Console: colour dummy device 80x25
printk: legacy console [tty0] enabled
...
2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 476, base_baud = 3000000) is a 8250
printk: legacy console [ttyS2] enabled
...
2850000.serial: ttyS0 at MMIO 0x2850000 (irq = 477, base_baud = 3000000) is a 8250
2860000.serial: ttyS1 at MMIO 0x2860000 (irq = 478, base_baud = 3000000) is a 8250
...
davinci-mcasp 2b10000.audio-controller: Sample-rate is off by 400 PPM
davinci-mcasp 2b10000.audio-controller: stream has more channels (2) than are enabled in mcasp (0)
davinci-mcasp 2b10000.audio-controller: ASoC error (-22): at snd_soc_dai_hw_params() on 2b10000.audio-controller
 davinci-mcasp.0-i2s-hifi: ASoC error (-22): at __soc_pcm_hw_params() on davinci-mcasp.0-i2s-hifi
davinci-mcasp 2b10000.audio-controller: Sample-rate is off by 400 PPM
davinci-mcasp 2b10000.audio-controller: stream has more channels (2) than are enabled in mcasp (0)
davinci-mcasp 2b10000.audio-controller: ASoC error (-22): at snd_soc_dai_hw_params() on 2b10000.audio-controller
 davinci-mcasp.0-i2s-hifi: ASoC error (-22): at __soc_pcm_hw_params() on davinci-mcasp.0-i2s-hifi
davinci-mcasp 2b10000.audio-controller: Sample-rate is off by 400 PPM
...
Poky (Yocto Project Reference Distro) 5.2.99+snapshot-5298d01663f897e38380116edf23973d2a156cbc genericarm64 /dev/ttyS2

genericarm64 login: root

WARNING: Poky is a reference Yocto Project distribution that should be used for
testing and development purposes only. It is recommended that you create your
own distribution for production use.

root@genericarm64:~# uname -a
Linux genericarm64 6.16.9-yocto-standard #1 SMP PREEMPT Mon Sep 29 01:39:04 UTC 2025 aarch64 GNU/Linux

I will try stressing and testing the device some more but so far I've not reproduced this problem.
Comment 27 Mikko Rapeli 2025-10-29 08:56:57 UTC
Tried with image
https://valkyrie.yocto.io/pub/releases/yocto-5.3_M3.rc1/machines/genericarm64/core-image-sato-genericarm64.rootfs-20251017083208.wic.zst

and was able to reproduce:

root@genericarm64:~# uname -a
Linux genericarm64 6.16.9-yocto-standard #1 SMP PREEMPT Mon Sep 29 01:39:04 UTC 2025 aarch64 GNU/Linux
root@genericarm64:~# lsmod
Module                  Size  Used by
bnep                   20480  2
wl18xx                110592  0
wlcore                212992  1 wl18xx
mac80211              933888  2 wl18xx,wlcore
libarc4                12288  1 mac80211
cfg80211              851968  3 wl18xx,wlcore,mac80211
wlcore_sdio            12288  0
snd_soc_hdmi_codec     16384  1
dp83td510              12288  1
realtek                36864  1
xhci_plat_hcd          16384  0
tps65219_pwrbutton     12288  0
tps65219_regulator     16384  4
gpio_tps65219          12288  0
ite_it66121            20480  0
dwc3                  176128  0
udc_core               57344  1 dwc3
roles                  12288  1 dwc3
tps65219               28672  0
at24                   20480  0
rtc_bq32k              12288  0
ghash_ce               16384  0
snd_soc_simple_card    16384  0
sha1_ce                12288  0
gpio_regulator         12288  1
snd_soc_simple_card_utils    20480  1 snd_soc_simple_card
mdio_gpio              12288  3
mdio_bitbang           12288  1 mdio_gpio
fixed                  12288  12
gpio_keys              16384  0
sdhci_am654            20480  0
k3_j72xx_bandgap       12288  0
ti_am65_cpsw_nuss      81920  0
k3_cppi_desc_pool      12288  1 ti_am65_cpsw_nuss
dwc3_am62              12288  0
k3_udma_glue           20480  1 ti_am65_cpsw_nuss
rtc_ti_k3              16384  1
ti_sci_pm_domains      12288  0
k3_udma                57344  20 k3_udma_glue
k3_psil_lib            49152  2 k3_udma,k3_udma_glue
irq_ti_sci_inta        16384  0
k3_ringacc             20480  2 k3_udma,k3_udma_glue
sci_clk                12288  29
reset_ti_sci           12288  0
pinctrl_single         24576  132
rti_wdt                12288  0
am65_cpts              20480  1 ti_am65_cpsw_nuss
irq_ti_sci_intr        12288  0
phylink                40960  1 ti_am65_cpsw_nuss
virt_dma               12288  1 k3_udma
gpio_davinci           12288  21
sa2ul                  32768  0
omap_mailbox           12288  0
tidss                  53248  1
snd_soc_davinci_mcasp    36864  2
snd_soc_ti_udma        12288  1 snd_soc_davinci_mcasp
snd_soc_ti_edma        12288  1 snd_soc_davinci_mcasp
snd_soc_ti_sdma        12288  1 snd_soc_davinci_mcasp
phy_gmii_sel           16384  2
drm_display_helper    151552  1 tidss
snd_soc_core          233472  7 snd_soc_davinci_mcasp,snd_soc_ti_sdma,snd_soc_ti_edma,snd_soc_hdmi_codec,snd_soc_ti_udma,snd_soc_simple_card_utils,snd_soc_simple_card
cec                    45056  1 drm_display_helper
snd_compress           24576  1 snd_soc_core
ac97_bus               12288  1 snd_soc_core
snd_pcm_dmaengine      12288  1 snd_soc_core
drm_dma_helper         16384  1 tidss
snd_pcm               122880  6 snd_soc_davinci_mcasp,snd_soc_hdmi_codec,snd_compress,snd_soc_simple_card_utils,snd_soc_core,snd_pcm_dmaengine
snd_timer              36864  1 snd_pcm
snd                    77824  5 snd_soc_hdmi_codec,snd_timer,snd_compress,snd_soc_core,snd_pcm
soundcore              12288  1 snd
omap_hwspinlock        12288  0
8250_omap              24576  0
syscon_clk             12288  0
spi_omap2_mcspi        20480  0
i2c_omap               16384  0
mux_core               16384  1 i2c_omap
display_connector      12288  0
aes_neon_bs            24576  0
aes_neon_blk           24576  1 aes_neon_bs
aes_ce_blk             32768  0
aes_ce_cipher          12288  1 aes_ce_blk
root@genericarm64:~# BUG: scheduling while atomic: getty/1038/0x00000002
Modules linked in: bnep wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio snd_soc_hdmi_codec dp83td510 realtek xhci_plat_hcd tps65219_pwrbutton tps65219_regulator gpio_tps65219 ite_it66121 dwc3 udc_core roles tps65219 at24 rtc_bq32k ghash_ce snd_soc_simple_card sha1_ce gpio_regulator snd_soc_simple_card_utils mdio_gpio mdio_bitbang fixed gpio_keys sdhci_am654 k3_j72xx_bandgap ti_am65_cpsw_nuss k3_cppi_desc_pool dwc3_am62 k3_udma_glue rtc_ti_k3 ti_sci_pm_domains k3_udma k3_psil_lib irq_ti_sci_inta k3_ringacc sci_clk reset_ti_sci pinctrl_single rti_wdt am65_cpts irq_ti_sci_intr phylink virt_dma gpio_davinci sa2ul omap_mailbox tidss snd_soc_davinci_mcasp snd_soc_ti_udma snd_soc_ti_edma snd_soc_ti_sdma phy_gmii_sel drm_display_helper snd_soc_core cec snd_compress ac97_bus snd_pcm_dmaengine drm_dma_helper snd_pcm snd_timer snd soundcore omap_hwspinlock 8250_omap syscon_clk spi_omap2_mcspi i2c_omap mux_core display_connector aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 1 UID: 0 PID: 1038 Comm: getty Not tainted 6.16.9-yocto-standard #1 PREEMPT 
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Call trace:
 show_stack+0x24/0x40 (C)
 dump_stack_lvl+0x64/0x88
 dump_stack+0x1c/0x2c
 __schedule_bug+0x5c/0x80
 __schedule+0xa3c/0xc78
 schedule+0x40/0x130
 schedule_timeout+0x8c/0x130
 wait_for_completion_timeout+0x88/0x170
 ti_sci_set_device_state+0x134/0x220
 ti_sci_cmd_get_device_exclusive+0x24/0x40
 ti_sci_pd_power_on+0x38/0x78 [ti_sci_pm_domains]
 _genpd_power_on+0xa8/0x170
 genpd_power_on+0xe4/0x268
 genpd_runtime_resume+0xc8/0x240
 __rpm_callback+0x54/0x230
 rpm_callback+0x84/0xa0
 rpm_resume+0x454/0x660
 __pm_runtime_resume+0x58/0xa8
 omap8250_set_mctrl+0x38/0xd8 [8250_omap]
 serial8250_set_mctrl+0x2c/0x60
 uart_update_mctrl+0x98/0x120
 uart_shutdown+0x118/0x178
 uart_hangup+0x78/0x190
 __tty_hangup.part.0+0x408/0x440
 tty_vhangup_session+0x24/0x40
 disassociate_ctty.part.0+0x44/0x1b8
 disassociate_ctty+0x30/0x48
 do_exit+0x6e4/0x9e0
 do_group_exit+0x3c/0xc0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x54/0xe8
 do_el0_svc+0x48/0xd8
 el0_svc+0x40/0x168
 el0t_64_sync_handler+0x114/0x140
 el0t_64_sync+0x1a4/0x1a8
BUG: scheduling while atomic: getty/1038/0x00000000
Modules linked in: bnep wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio snd_soc_hdmi_codec dp83td510 realtek xhci_plat_hcd tps65219_pwrbutton tps65219_regulator gpio_tps65219 ite_it66121 dwc3 udc_core roles tps65219 at24 rtc_bq32k ghash_ce snd_soc_simple_card sha1_ce gpio_regulator snd_soc_simple_card_utils mdio_gpio mdio_bitbang fixed gpio_keys sdhci_am654 k3_j72xx_bandgap ti_am65_cpsw_nuss k3_cppi_desc_pool dwc3_am62 k3_udma_glue rtc_ti_k3 ti_sci_pm_domains k3_udma k3_psil_lib irq_ti_sci_inta k3_ringacc sci_clk reset_ti_sci pinctrl_single rti_wdt am65_cpts irq_ti_sci_intr phylink virt_dma gpio_davinci sa2ul omap_mailbox tidss snd_soc_davinci_mcasp snd_soc_ti_udma snd_soc_ti_edma snd_soc_ti_sdma phy_gmii_sel drm_display_helper snd_soc_core cec snd_compress ac97_bus snd_pcm_dmaengine drm_dma_helper snd_pcm snd_timer snd soundcore omap_hwspinlock 8250_omap syscon_clk spi_omap2_mcspi i2c_omap mux_core display_connector aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 2 UID: 0 PID: 1038 Comm: getty Tainted: G        W           6.16.9-yocto-standard #1 PREEMPT 
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
Call trace:
 show_stack+0x24/0x40 (C)
 dump_stack_lvl+0x64/0x88
 dump_stack+0x1c/0x2c
 __schedule_bug+0x5c/0x80
 __schedule+0xa3c/0xc78
 schedule+0x40/0x130
 rpm_resume+0x190/0x660
 __pm_runtime_resume+0x58/0xa8
 omap_8250_pm+0x34/0x1b0 [8250_omap]
 serial8250_pm+0x24/0x60
 uart_hangup+0xfc/0x190
 __tty_hangup.part.0+0x408/0x440
 tty_vhangup_session+0x24/0x40
 disassociate_ctty.part.0+0x44/0x1b8
 disassociate_ctty+0x30/0x48
 do_exit+0x6e4/0x9e0
 do_group_exit+0x3c/0xc0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x54/0xe8
 do_el0_svc+0x48/0xd8
 el0_svc+0x40/0x168
 el0t_64_sync_handler+0x114/0x140
 el0t_64_sync+0x1a4/0x1a8
------------[ cut here ]------------
WARNING: CPU: 2 PID: 1038 at /usr/src/kernel/kernel/sched/sched.h:2490 __schedule+0xa2c/0xc78
Modules linked in: bnep wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio snd_soc_hdmi_codec dp83td510 realtek xhci_plat_hcd tps65219_pwrbutton tps65219_regulator gpio_tps65219 ite_it66121 dwc3 udc_core roles tps65219 at24 rtc_bq32k ghash_ce snd_soc_simple_card sha1_ce gpio_regulator snd_soc_simple_card_utils mdio_gpio mdio_bitbang fixed gpio_keys sdhci_am654 k3_j72xx_bandgap ti_am65_cpsw_nuss k3_cppi_desc_pool dwc3_am62 k3_udma_glue rtc_ti_k3 ti_sci_pm_domains k3_udma k3_psil_lib irq_ti_sci_inta k3_ringacc sci_clk reset_ti_sci pinctrl_single rti_wdt am65_cpts irq_ti_sci_intr phylink virt_dma gpio_davinci sa2ul omap_mailbox tidss snd_soc_davinci_mcasp snd_soc_ti_udma snd_soc_ti_edma snd_soc_ti_sdma phy_gmii_sel drm_display_helper snd_soc_core cec snd_compress ac97_bus snd_pcm_dmaengine drm_dma_helper snd_pcm snd_timer snd soundcore omap_hwspinlock 8250_omap syscon_clk spi_omap2_mcspi i2c_omap mux_core display_connector aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 2 UID: 0 PID: 1038 Comm: getty Tainted: G        W           6.16.9-yocto-standard #1 PREEMPT 
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
pstate: 204000c5 (nzCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : __schedule+0xa2c/0xc78
lr : __schedule+0xa1c/0xc78
sp : ffff80008409ba90
x29: ffff80008409bac0 x28: ffff000003423540 x27: ffff00007f94d1c0
x26: 0000000000000001 x25: ffff000003423ba8 x24: 0000000000000000
x23: ffff8000813d4138 x22: 0000000000000000 x21: ffff800081fab708
x20: ffff000003423540 x19: ffff0000007811c0 x18: ffff800083df5090
x17: ffff000000683c00 x16: 0000000000000004 x15: 00000000ffffffff
x14: 0000000000000000 x13: ffff80008409b223 x12: ffff80008409b000
x11: 00000000fffffffd x10: 00000000ffffefff x9 : ffff8000813d3e9c
x8 : ffff000003423540 x7 : 0000000000017fe8 x6 : 00000000bf6ef390
x5 : 03ffffffffffffff x4 : 0000000000000015 x3 : 0000000000000000
x2 : 0000000002d93d81 x1 : 000000000065e002 x0 : ffff0000007811c0
Call trace:
 __schedule+0xa2c/0xc78 (P)
 schedule+0x40/0x130
 rpm_resume+0x190/0x660
 __pm_runtime_resume+0x58/0xa8
 omap_8250_pm+0x34/0x1b0 [8250_omap]
 serial8250_pm+0x24/0x60
 uart_hangup+0xfc/0x190
 __tty_hangup.part.0+0x408/0x440
 tty_vhangup_session+0x24/0x40
 disassociate_ctty.part.0+0x44/0x1b8
 disassociate_ctty+0x30/0x48
 do_exit+0x6e4/0x9e0
 do_group_exit+0x3c/0xc0
 __arm64_sys_exit_group+0x24/0x30
 invoke_syscall.constprop.0+0x54/0xe8
 do_el0_svc+0x48/0xd8
 el0_svc+0x40/0x168
 el0t_64_sync_handler+0x114/0x140
 el0t_64_sync+0x1a4/0x1a8
---[ end trace 0000000000000000 ]---
Unable to handle kernel read from unreadable memory at virtual address 0000000000000b58
Mem abort info:
  ESR = 0x0000000096000004
  EC = 0x25: DABT (current EL), IL = 32 bits
  SET = 0, FnV = 0
  EA = 0, S1PTW = 0
  FSC = 0x04: level 0 translation fault
Data abort info:
  ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000
  CM = 0, WnR = 0, TnD = 0, TagAccess = 0
  GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
user pgtable: 4k pages, 48-bit VAs, pgdp=0000000088851000
[0000000000000b58] pgd=0000000000000000, p4d=0000000000000000
Internal error: Oops: 0000000096000004 [#1]  SMP
Modules linked in: bnep wl18xx wlcore mac80211 libarc4 cfg80211 wlcore_sdio snd_soc_hdmi_codec dp83td510 realtek xhci_plat_hcd tps65219_pwrbutton tps65219_regulator gpio_tps65219 ite_it66121 dwc3 udc_core roles tps65219 at24 rtc_bq32k ghash_ce snd_soc_simple_card sha1_ce gpio_regulator snd_soc_simple_card_utils mdio_gpio mdio_bitbang fixed gpio_keys sdhci_am654 k3_j72xx_bandgap ti_am65_cpsw_nuss k3_cppi_desc_pool dwc3_am62 k3_udma_glue rtc_ti_k3 ti_sci_pm_domains k3_udma k3_psil_lib irq_ti_sci_inta k3_ringacc sci_clk reset_ti_sci pinctrl_single rti_wdt am65_cpts irq_ti_sci_intr phylink virt_dma gpio_davinci sa2ul omap_mailbox tidss snd_soc_davinci_mcasp snd_soc_ti_udma snd_soc_ti_edma snd_soc_ti_sdma phy_gmii_sel drm_display_helper snd_soc_core cec snd_compress ac97_bus snd_pcm_dmaengine drm_dma_helper snd_pcm snd_timer snd soundcore omap_hwspinlock 8250_omap syscon_clk spi_omap2_mcspi i2c_omap mux_core display_connector aes_neon_bs aes_neon_blk aes_ce_blk aes_ce_cipher
CPU: 1 UID: 0 PID: 0 Comm: swapper/1 Tainted: G        W           6.16.9-yocto-standard #1 PREEMPT 
Tainted: [W]=WARN
Hardware name: beagle BeagleBoard.org BeaglePlay/BeagleBoard.org BeaglePlay, BIOS 2024.07 07/01/2024
pstate: 604000c5 (nZCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : sched_balance_update_blocked_averages+0x54/0x570
lr : sched_balance_update_blocked_averages+0x54/0x570
sp : ffff8000825fbdb0
x29: 0000000000000000 x28: ffff0000007811c0 x27: ffff00007f94d1c0
x26: 0000000000000001 x25: ffff000000781828 x24: 0000000000000000
x23: ffff8000813d43a4 x22: 0000000000000000 x21: ffff800081fab708
x20: ffff800080133cd0 x19: 0000000000000000 x18: ffff8000824b5030
x17: ffff000000683c00 x16: 0000000000000004 x15: 00000000ffffffff
x14: 0000000000000000 x13: ffff80008409b223 x12: ffff80008409b000
x11: 00000000000000c0 x10: 0000000000000b00 x9 : ffff8000825fbd60
x8 : ffff000000781d20 x7 : 0000000000000001 x6 : 0000000000000000
x5 : ffff000002979d50 x4 : ffff0000007811c0 x3 : ffff000003423540
x2 : 0000000000000000 x1 : ffff0000007811c0 x0 : 0000000000000092
Call trace:
 sched_balance_update_blocked_averages+0x54/0x570 (P)
Code: d50343df 52800001 aa1303e0 97ffc494 (f945ae61) 
---[ end trace 0000000000000000 ]---
Kernel panic - not syncing: Attempted to kill the idle task!
SMP: stopping secondary CPUs
SMP: failed to stop secondary CPUs 0,2
Kernel Offset: disabled
CPU features: 0x0000,00000000,02000801,0400421b
Memory Limit: none
---[ end Kernel panic - not syncing: Attempted to kill the idle task! ]---
Comment 28 Mikko Rapeli 2025-10-29 09:15:17 UTC
I must have been checking wrong things in linux-yocto kernel tree.

Looks like
https://lists.yoctoproject.org/g/linux-yocto/message/15568
and
https://lists.yoctoproject.org/g/linux-yocto/message/15569

are missing from v6.16/standard/genericarm64 branch.
Comment 29 Mikko Rapeli 2025-10-29 11:48:13 UTC
(In reply to Mikko Rapeli from comment #28)
> I must have been checking wrong things in linux-yocto kernel tree.
> 
> Looks like
> https://lists.yoctoproject.org/g/linux-yocto/message/15568
> and
> https://lists.yoctoproject.org/g/linux-yocto/message/15569
> 
> are missing from v6.16/standard/genericarm64 branch.

Here is a "poky-altcfg" distro with systemd, kernel 6.16 and core-image-sato-sdk image with those two kernel patches applied (on top of some other unrelated genericarm64 kernel changes):

https://people.linaro.org/~mikko.rapeli/beagle_tty_hang/core-image-sato-sdk-genericarm64.rootfs.wic.zst

I am not seeing this crash on that image but will continue testing a bit more.

Will also test a "poky" distro build too with sysvinit since there the issue reproduced. I presume this issue would also happen on systemd though.

Bruce, could you pick those kernel patches to the v6.16/standard/genericarm64 and queue an update to linux-yocto? I think also 6.17 branch will need this.
Comment 30 Mikko Rapeli 2025-10-29 12:31:33 UTC
oeqa runtime test executed via testexport look good with the patches applied, no hangs/crashes from kernel:

https://people.linaro.org/~mikko.rapeli/beagle_tty_hang/runtime-results.log

Failures are expected:

 * stap fails due to testexport not having full build env
 * opkg fails due to package repo not available in test env
 * parselogs fails due to new kernel/driver error messages

2025-10-29 14:01:12,610 - runtime - INFO - RESULTS:
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - buildcpio.BuildCpioTest.test_cpio: PASSED (249.64s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - buildlzip.BuildLzipTest.test_lzip: PASSED (68.12s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - connman.ConnmanTest.test_connmand_help: PASSED (1.56s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - connman.ConnmanTest.test_connmand_running: PASSED (1.34s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - date.DateTest.test_date: PASSED (14.94s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - df.DfTest.test_df: PASSED (1.48s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - gcc.GccCompileTest.test_gcc_compile: PASSED (7.86s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - gcc.GccCompileTest.test_gpp2_compile: PASSED (7.88s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - gcc.GccCompileTest.test_gpp_compile: PASSED (9.43s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - gcc.GccCompileTest.test_make: PASSED (6.40s)
2025-10-29 14:01:12,610 - runtime - INFO - RESULTS - gi.GObjectIntrospectionTest.test_python: PASSED (2.61s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - go.GoHelloworldTest.test_gohelloworld: PASSED (2.02s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - kernelmodule.KernelModuleTest.test_kernel_module: PASSED (112.86s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - ldd.LddTest.test_ldd: PASSED (3.73s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - logrotate.LogrotateTest.test_logrotate_newlog: PASSED (7.40s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - logrotate.LogrotateTest.test_logrotate_wtmp: PASSED (6.23s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - oe_syslog.SyslogTest.test_syslog_running: PASSED (1.54s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - oe_syslog.SyslogTestConfig.test_syslog_logger: PASSED (3.20s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - oe_syslog.SyslogTestConfig.test_syslog_restart: PASSED (2.60s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - pam.PamBasicTest.test_pam: PASSED (4.99s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - parselogs.ParseLogsTest.test_get_context: PASSED (0.00s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - perl.PerlTest.test_perl_works: PASSED (1.56s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - ping.PingTest.test_ping: PASSED (0.02s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - python.PythonTest.test_python3: PASSED (1.27s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - scp.ScpTest.test_scp_file: PASSED (3.85s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - ssh.SSHTest.test_ssh: PASSED (1.14s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - systemd.SystemdBasicTests.test_systemd_basic: PASSED (1.45s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - systemd.SystemdBasicTests.test_systemd_failed: PASSED (2.50s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - systemd.SystemdBasicTests.test_systemd_list: PASSED (2.34s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - systemd.SystemdJournalTests.test_systemd_boot_time: PASSED (1.57s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - systemd.SystemdJournalTests.test_systemd_journal: PASSED (1.77s)
2025-10-29 14:01:12,611 - runtime - INFO - RESULTS - systemd.SystemdServiceTests.test_systemd_disable_enable: PASSED (12.53s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - systemd.SystemdServiceTests.test_systemd_status: PASSED (1.20s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - systemd.SystemdServiceTests.test_systemd_stop_start: PASSED (5.20s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - xorg.XorgTest.test_xorg_running: PASSED (2.67s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - apt.AptRepoTest.test_apt_install_from_repo: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - buildgalculator.GalculatorTest.test_galculator: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfBasicTest.test_dnf_help: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfBasicTest.test_dnf_history: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfBasicTest.test_dnf_info: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfBasicTest.test_dnf_search: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfBasicTest.test_dnf_version: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_exclude: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_install: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_install_dependency: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_install_from_disk: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_install_from_http: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_installroot: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_installroot_usrmerge: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_makecache: SKIPPED (0.00s)
2025-10-29 14:01:12,612 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_reinstall: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - dnf.DnfRepoTest.test_dnf_repoinfo: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - go.GoCompileTest.test_go_compile: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - go.GoCompileTest.test_go_module: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - oe_syslog.SyslogTestConfig.test_syslog_startup_config: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - ptest.PtestRunnerTest.test_ptestrunner_expectfail: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - ptest.PtestRunnerTest.test_ptestrunner_expectsuccess: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - rpm.RpmBasicTest.test_rpm_help: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - rpm.RpmBasicTest.test_rpm_query: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - rpm.RpmBasicTest.test_rpm_query_nonroot: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - rpm.RpmInstallRemoveTest.test_check_rpm_install_removal_log_file_size: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - rpm.RpmInstallRemoveTest.test_rpm_install: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - rpm.RpmInstallRemoveTest.test_rpm_remove: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - rust.RustCLibExampleTest.test_rust_c_lib_example: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - rust.RustCompileTest.test_cargo_compile: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - rust.RustCompileTest.test_rust_compile: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - systemd.SystemdServiceTests.test_systemd_coredump_minidebuginfo: SKIPPED (0.00s)
2025-10-29 14:01:12,613 - runtime - INFO - RESULTS - systemd.SystemdServiceTests.test_systemd_disable_enable_ro: SKIPPED (0.00s)
2025-10-29 14:01:12,614 - runtime - INFO - RESULTS - weston.WestonTest.test_wayland_info: SKIPPED (0.00s)
2025-10-29 14:01:12,614 - runtime - INFO - RESULTS - weston.WestonTest.test_weston_can_initialize_new_wayland_compositor: SKIPPED (0.00s)
2025-10-29 14:01:12,614 - runtime - INFO - RESULTS - weston.WestonTest.test_weston_running: SKIPPED (0.00s)
2025-10-29 14:01:12,614 - runtime - INFO - RESULTS - weston.WestonTest.test_weston_supports_xwayland: SKIPPED (0.00s)
2025-10-29 14:01:12,614 - runtime - INFO - RESULTS - stap.StapTest.test_stap: ERROR (0.00s)
2025-10-29 14:01:12,614 - runtime - INFO - RESULTS - opkg.OpkgRepoTest.test_opkg_install_from_repo: FAILED (2.89s)
2025-10-29 14:01:12,614 - runtime - INFO - RESULTS - parselogs.ParseLogsTest.test_parselogs: FAILED (11.64s)
2025-10-29 14:01:12,617 - runtime - INFO - SUMMARY:
2025-10-29 14:01:12,617 - runtime - INFO - runtime () - Ran 75 tests in 576.250s
2025-10-29 14:01:12,617 - runtime - INFO - runtime - FAIL - Required tests failed (successes=35, skipped=37, failures=2, errors=1)

Will now run the same tests with "poky" distro and sysvinit.
Comment 31 Bruce Ashfield 2025-10-29 12:34:33 UTC
The serial patches are staged to be applied to the genericarm64 branch, and should be there.

I'm double checking now on 6.16 and 6.17.

If they are missing, I'll take care of bumping the SRCREVs to pick them up (I'm waiting on my slow builder to get the kernel build done).
Comment 32 Bruce Ashfield 2025-10-29 13:07:10 UTC
The changes are on the branches for both 6.16 and 6.17:

[/home/bruc...-yocto.git]> git log --oneline -- drivers/tty/serial/8250/8250_port.c  |grep -i revert
06207c4dd5e24 Revert "serial: 8250: unexport serial8250_rpm_*() functions"
[/home/bruc...-yocto.git]> git branch --contains 06207c4dd5e24
* v6.16/standard/genericarm64

[/home/bruc...-yocto.git]> git log --oneline -- drivers/tty/serial/8250/8250_port.c  |grep -i revert
81ce86a643c08 Revert "serial: 8250: unexport serial8250_rpm_*() functions"
[/home/bruc...-yocto.git]> git branch --contains 81ce86a643c08
* v6.17/standard/genericarm64


I see the KBRANCH being set for genericarm64, but no SRCREV is set, that appears to be the missing piece.

Once my build runs, I'll confirm and send an explicit SRCREV set to the yocto-bsp bbappend.
Comment 33 Mikko Rapeli 2025-10-29 13:20:01 UTC
(In reply to Bruce Ashfield from comment #32)
> The changes are on the branches for both 6.16 and 6.17:
> 
> [/home/bruc...-yocto.git]> git log --oneline --
> drivers/tty/serial/8250/8250_port.c  |grep -i revert
> 06207c4dd5e24 Revert "serial: 8250: unexport serial8250_rpm_*() functions"
> [/home/bruc...-yocto.git]> git branch --contains 06207c4dd5e24
> * v6.16/standard/genericarm64
> 
> [/home/bruc...-yocto.git]> git log --oneline --
> drivers/tty/serial/8250/8250_port.c  |grep -i revert
> 81ce86a643c08 Revert "serial: 8250: unexport serial8250_rpm_*() functions"
> [/home/bruc...-yocto.git]> git branch --contains 81ce86a643c08
> * v6.17/standard/genericarm64
> 
> 
> I see the KBRANCH being set for genericarm64, but no SRCREV is set, that
> appears to be the missing piece.
> 
> Once my build runs, I'll confirm and send an explicit SRCREV set to the
> yocto-bsp bbappend.

Oh yes. And because the linux-yocto base SRCREV_machine commit from v6.16/standard/base branch is also in v6.16/standard/genericarm64 branch we did not see complaints from the missing SRCREV_machine:genericarm64.

This makes linux-yocto kernel updates a bit trickier since bumps need to be submitted to meta-yocto-bsp too. Maybe SRCREV_machine:genericarm64 should be set already in to oe-core side linux-yocto recipe to avoid this kind of issues. Then  missing updates to this or other machines would be easy to spot.
Comment 34 Bruce Ashfield 2025-10-29 14:02:01 UTC
My scripts do know how to update the bbappend for the h/w references, but since I didn't have a seed / starting SRCREV it was skipping it.

But yes, I agree that carrying a baseline / fallback commit for the references in the main recipe isn't an issue and in fact, makes usability much better. Someone can jump off the end of what is in the main .bb file, versus having to track down the bbappend.

My build is still running, but I'll come up with something and send it along once it completes.
Comment 35 Mikko Rapeli 2025-10-31 11:47:32 UTC
Fix for 6.16 linux-yocto kernels: https://lists.openembedded.org/g/openembedded-core/message/225515
Comment 36 Mikko Rapeli 2025-11-05 10:32:03 UTC
Fixed in poky and oe-core/meta-yocto master branch.
Comment 37 Yi Zhao 2025-12-03 03:25:28 UTC
Verified with 5.3 rc4.