Skip to content

[op6-enchilada] Graphics regression on 6.12/6.13/6.16

With linux-image-6.13-qcom 6.13-1 on OnePlus6 Enchilada After the first screen lock the graphics are lagging a lot and these can be found in the logs:

janv. 22 06:57:47 mobian kernel: [dpu error]invalid IRQ=[134217727, 31]
janv. 22 06:57:47 mobian kernel: [drm:dpu_encoder_phys_cmd_control_vblank_irq [msm]] *ERROR* vblank irq err id:32 pp:0 ret:-22, enable false/1
janv. 22 06:57:47 mobian kernel: [dpu error]invalid IRQ=[134217727, 31]
janv. 22 06:57:51 mobian kernel: ------------[ cut here ]------------
janv. 22 06:57:51 mobian kernel: WARNING: CPU: 2 PID: 1885 at drivers/gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.c:575 dpu_core_irq_register_callback+0x130/0x198 [msm]
janv. 22 06:57:51 mobian kernel: Modules linked in: rmnet rfcomm algif_hash algif_skcipher snd_soc_wcd934x snd_soc_wcd_mbhc gpio_wcd934x snd_soc_wcd_classh q6asm_dai q6voice_dai q6routing q6afe_dai q6voice q6cvp q6adm q6asm bnep q6afe snd_q6dsp_common wcd934x >
janv. 22 06:57:51 mobian kernel:  reset_qcom_pdc camcc_sdm845 ipa
janv. 22 06:57:51 mobian kernel: CPU: 2 UID: 1000 PID: 1885 Comm: phoc Not tainted 6.13-qcom #6.13-1
janv. 22 06:57:51 mobian kernel: Hardware name: OnePlus 6 (DT)
janv. 22 06:57:51 mobian kernel: pstate: 804000c5 (Nzcv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
janv. 22 06:57:51 mobian kernel: pc : dpu_core_irq_register_callback+0x130/0x198 [msm]
janv. 22 06:57:51 mobian kernel: lr : dpu_core_irq_register_callback+0x40/0x198 [msm]
janv. 22 06:57:51 mobian kernel: sp : ffff80008f4cb8d0
janv. 22 06:57:51 mobian kernel: x29: ffff80008f4cb8d0 x28: 0000000000000001 x27: ffff000088d8a2d0
janv. 22 06:57:51 mobian kernel: x26: ffff800079c62598 x25: ffff8000813976d8 x24: 0000000000000028
janv. 22 06:57:51 mobian kernel: x23: 0000000000000000 x22: ffff00008ab01080 x21: ffff800079bf94b0
janv. 22 06:57:51 mobian kernel: x20: ffff00008ab09080 x19: 0000000000000008 x18: 0000000000000000
janv. 22 06:57:51 mobian kernel: x17: 000000040044ffff x16: 00000000000004b8 x15: 00000000000004dc
janv. 22 06:57:51 mobian kernel: x14: 00000000000008e8 x13: 000000000000090c x12: 0000000000000914
janv. 22 06:57:51 mobian kernel: x11: 0000000000000040 x10: ffff800081890e90 x9 : ffff800081890e88
janv. 22 06:57:51 mobian kernel: x8 : ffff800081ad9000 x7 : 0000000000000000 x6 : 0000000000000000
janv. 22 06:57:51 mobian kernel: x5 : 0000000000000000 x4 : ffff00008e004140 x3 : ffff00008ab01080
janv. 22 06:57:51 mobian kernel: x2 : ffff800079bf94b0 x1 : 0000000000000000 x0 : 0000000000000000
janv. 22 06:57:51 mobian kernel: Call trace:
janv. 22 06:57:51 mobian kernel:  dpu_core_irq_register_callback+0x130/0x198 [msm] (P)
janv. 22 06:57:51 mobian kernel:  dpu_encoder_phys_cmd_irq_enable+0x2c/0x98 [msm]
janv. 22 06:57:51 mobian kernel:  _dpu_encoder_irq_enable+0x58/0xb0 [msm]
janv. 22 06:57:51 mobian kernel:  dpu_encoder_resource_control+0x1e8/0x4b8 [msm]
janv. 22 06:57:51 mobian kernel:  dpu_encoder_virt_atomic_enable+0xb0/0x16c [msm]
janv. 22 06:57:51 mobian kernel:  drm_atomic_helper_commit_modeset_enables+0x188/0x26c
janv. 22 06:57:51 mobian kernel:  msm_atomic_commit_tail+0x1a4/0x548 [msm]
janv. 22 06:57:51 mobian kernel:  commit_tail+0xa4/0x18c
janv. 22 06:57:51 mobian kernel:  drm_atomic_helper_commit+0x164/0x178
janv. 22 06:57:51 mobian kernel:  drm_atomic_commit+0x88/0xc4
janv. 22 06:57:51 mobian kernel:  drm_mode_atomic_ioctl+0xa30/0xc88
janv. 22 06:57:51 mobian kernel:  drm_ioctl_kernel+0xbc/0x12c
janv. 22 06:57:51 mobian kernel:  drm_ioctl+0x210/0x4d4
janv. 22 06:57:51 mobian kernel:  __arm64_sys_ioctl+0xb4/0xec
janv. 22 06:57:51 mobian kernel:  invoke_syscall+0x48/0x110
janv. 22 06:57:51 mobian kernel:  el0_svc_common.constprop.0+0x40/0xe0
janv. 22 06:57:51 mobian kernel:  do_el0_svc+0x1c/0x28
janv. 22 06:57:51 mobian kernel:  el0_svc+0x30/0xd0
janv. 22 06:57:51 mobian kernel:  el0t_64_sync_handler+0x10c/0x138
janv. 22 06:57:51 mobian kernel:  el0t_64_sync+0x198/0x19c
janv. 22 06:57:51 mobian kernel: ---[ end trace 0000000000000000 ]---
janv. 22 06:57:51 mobian kernel: WARNING: CPU: 4 PID: 1885 at drivers/gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.c:575 dpu_core_irq_register_callback+0x130/0x198 [msm]
janv. 22 06:57:51 mobian kernel: Modules linked in: rmnet rfcomm algif_hash algif_skcipher snd_soc_wcd934x snd_soc_wcd_mbhc gpio_wcd934x snd_soc_wcd_classh q6asm_dai q6voice_dai q6routing q6afe_dai q6voice q6cvp q6adm q6asm bnep q6afe snd_q6dsp_common wcd934x >
janv. 22 06:57:51 mobian kernel:  reset_qcom_pdc camcc_sdm845 ipa
janv. 22 06:57:51 mobian kernel: CPU: 4 UID: 1000 PID: 1885 Comm: phoc Tainted: G        W          6.13-qcom #6.13-1
janv. 22 06:57:51 mobian kernel: Tainted: [W]=WARN
janv. 22 06:57:51 mobian kernel: Hardware name: OnePlus 6 (DT)
janv. 22 06:57:51 mobian kernel: pstate: 804000c5 (Nzcv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
janv. 22 06:57:51 mobian kernel: pc : dpu_core_irq_register_callback+0x130/0x198 [msm]
janv. 22 06:57:51 mobian kernel: lr : dpu_core_irq_register_callback+0x40/0x198 [msm]
janv. 22 06:57:51 mobian kernel: sp : ffff80008f4cb8d0
janv. 22 06:57:51 mobian kernel: x29: ffff80008f4cb8d0 x28: 0000000000000001 x27: ffff000088d8a2d0
janv. 22 06:57:51 mobian kernel: x26: ffff800079c62598 x25: ffff8000813976d8 x24: 0000000000000028
janv. 22 06:57:51 mobian kernel: x23: 0000000000000000 x22: ffff00008ab01080 x21: ffff800079bf9254
janv. 22 06:57:51 mobian kernel: x20: ffff00008ab09080 x19: 000000000000002b x18: 0000000000000000
janv. 22 06:57:51 mobian kernel: x17: 000000040044ffff x16: 005000f4b5503510 x15: 0000000000000000
janv. 22 06:57:51 mobian kernel: x14: ffff000086942400 x13: ffff8001721eb000 x12: 000000003474591d
janv. 22 06:57:51 mobian kernel: x11: 000000355512bc72 x10: 0000000000000ae0 x9 : ffff80008f4cb7f0
janv. 22 06:57:51 mobian kernel: x8 : ffff800081ad9000 x7 : 0000000000000001 x6 : ffff800079c86bc0
janv. 22 06:57:51 mobian kernel: x5 : 0000000000000000 x4 : ffff00008e004488 x3 : ffff00008ab01080
janv. 22 06:57:51 mobian kernel: x2 : ffff800079bf9254 x1 : 0000000000000000 x0 : 0000000000000000
janv. 22 06:57:51 mobian kernel: Call trace:
janv. 22 06:57:51 mobian kernel:  dpu_core_irq_register_callback+0x130/0x198 [msm] (P)
janv. 22 06:57:51 mobian kernel:  dpu_encoder_phys_cmd_irq_enable+0x88/0x98 [msm]
janv. 22 06:57:51 mobian kernel:  _dpu_encoder_irq_enable+0x58/0xb0 [msm]
janv. 22 06:57:51 mobian kernel:  dpu_encoder_resource_control+0x1e8/0x4b8 [msm]
janv. 22 06:57:51 mobian kernel:  dpu_encoder_virt_atomic_enable+0xb0/0x16c [msm]
janv. 22 06:57:51 mobian kernel:  drm_atomic_helper_commit_modeset_enables+0x188/0x26c
janv. 22 06:57:51 mobian kernel:  msm_atomic_commit_tail+0x1a4/0x548 [msm]
janv. 22 06:57:51 mobian kernel:  commit_tail+0xa4/0x18c
janv. 22 06:57:51 mobian kernel:  drm_atomic_helper_commit+0x164/0x178
janv. 22 06:57:51 mobian kernel:  drm_atomic_commit+0x88/0xc4
janv. 22 06:57:51 mobian kernel:  drm_mode_atomic_ioctl+0xa30/0xc88
janv. 22 06:57:51 mobian kernel:  drm_ioctl_kernel+0xbc/0x12c
janv. 22 06:57:51 mobian kernel:  drm_ioctl+0x210/0x4d4
janv. 22 06:57:51 mobian kernel:  __arm64_sys_ioctl+0xb4/0xec
janv. 22 06:57:51 mobian kernel:  invoke_syscall+0x48/0x110
janv. 22 06:57:51 mobian kernel:  el0_svc_common.constprop.0+0x40/0xe0
janv. 22 06:57:51 mobian kernel:  do_el0_svc+0x1c/0x28
janv. 22 06:57:51 mobian kernel:  el0_svc+0x30/0xd0
janv. 22 06:57:51 mobian kernel:  el0t_64_sync_handler+0x10c/0x138
janv. 22 06:57:51 mobian kernel:  el0t_64_sync+0x198/0x19c
janv. 22 06:57:51 mobian kernel: ---[ end trace 0000000000000000 ]---
janv. 22 06:57:51 mobian kernel: [drm:_dpu_encoder_phys_cmd_wait_for_ctl_start:662] [dpu error]enc32 intf1 ctl start interrupt wait failed
janv. 22 06:57:51 mobian kernel: [drm:dpu_kms_wait_for_commit_done:508] [dpu error]wait for commit done returned -22
janv. 22 06:57:51 mobian kernel: [drm:_dpu_encoder_phys_cmd_wait_for_ctl_start:662] [dpu error]enc32 intf1 ctl start interrupt wait failed
janv. 22 06:57:51 mobian kernel: [drm:dpu_kms_wait_for_commit_done:508] [dpu error]wait for commit done returned -22

the two last line repeats until shutdown.