{"id":421,"date":"2026-02-12T13:32:05","date_gmt":"2026-02-12T12:32:05","guid":{"rendered":"https:\/\/bowfinger.de\/blog\/?p=421"},"modified":"2026-02-12T13:32:24","modified_gmt":"2026-02-12T12:32:24","slug":"firefox-librewolf-taking-down-graphics-stack-on-wayland-with-amd-gpu","status":"publish","type":"post","link":"https:\/\/bowfinger.de\/blog\/2026\/02\/firefox-librewolf-taking-down-graphics-stack-on-wayland-with-amd-gpu\/","title":{"rendered":"Firefox\/LibreWolf taking down graphics stack on Wayland with AMD GPU"},"content":{"rendered":"\n<p>I keep having screens freezing seemingly randomly on my AMD Strix Halo GPU on Wayland whenever (and it seems only if!) I&#8217;m using Firefox\/LibreWolf.<\/p>\n\n\n\n<p>I can recover fine: Unplug the HDMI or DisplayPort cable of the affected screen, wait a few seconds and the graphics stack resets and everything is back to normal.<\/p>\n\n\n\n<p>When this happens, I get the following module panic retrievable via dmesg:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">[69348.590903] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> [CRTC:86:crtc-0] flip_done timed out<br>[69362.413939] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> flip_done timed out<br>[69362.413954] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> [CRTC:86:crtc-0] commit wait timed out<br>[69372.653095] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> flip_done timed out<br>[69372.653111] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> [PLANE:83:plane-7] commit wait timed out<br>[69843.658648] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> [CRTC:86:crtc-0] flip_done timed out<br>[69845.208181] workqueue: dm_irq_work_func [amdgpu] hogged CPU for &gt;10000us 4 times, consider switching to WQ_UNBOUND<br>[69853.896845] amdgpu 0000:c4:00.0: amdgpu: [drm] <em>ERROR<\/em> [CRTC:86:crtc-0] hw_done or flip_done timed out<br>[69864.136149] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> flip_done timed out<br>[69864.136165] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> [CRTC:86:crtc-0] commit wait timed out<br>[69874.375292] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> flip_done timed out<br>[69874.375309] amdgpu 0000:c4:00.0: [drm] <em>ERROR<\/em> [PLANE:83:plane-7] commit wait timed out<br>[69874.456995] ------------[ cut here ]------------<br>[69874.456998] WARNING: CPU: 28 PID: 411 at drivers\/gpu\/drm\/amd\/amdgpu\/..\/display\/amdgpu_dm\/amdgpu_dm.c:9074 amdgpu_dm_commit_planes+0x10c3\/0x1620 [amdgpu]<br>[69874.457496] Modules linked in: tls snd_seq_dummy snd_hrtimer xfrm_interface xfrm6_tunnel tunnel4 tunnel6 xfrm_user xfrm_algo rpcsec_gss_krb5 twofish_generic twofish_avx_x86_64 twofish_x86_64_3way twofish_x86_64 twofish_common serpent_avx2 serpent_avx_x86_64 serpent_sse2_x86_64 serpent_generic blowfish_generic blowfish_x86_64 blowfish_common cast5_avx_x86_64 cast5_generic cast_common nft_masq des3_ede_x86_64 nfsv4 des_generic libdes camellia_generic camellia_aesni_avx2 camellia_aesni_avx_x86_64 camellia_x86_64 nft_chain_nat nf_nat xcbc nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 md4 nfs netfs bridge stp llc vxlan nf_tables ip6_udp_tunnel udp_tunnel ccm overlay qrtr rfcomm cmac algif_hash algif_skcipher af_alg bnep binfmt_misc zfs(PO) spl(O) nfsd nfs_acl sch_fq_codel lockd grace msr parport_pc ppdev lp parport joydev btusb btrtl btintel btbcm btmtk bluetooth wacom input_leds amd_atl intel_rapl_msr intel_rapl_common snd_acp70 snd_acp_i2s snd_acp_pdm snd_acp_pcm snd_sof_amd_acp70 snd_sof_amd_acp63 snd_sof_amd_vangogh<br>[69874.457550] snd_sof_amd_rembrandt snd_sof_amd_renoir snd_hda_codec_alc662 snd_sof_amd_acp snd_hda_codec_realtek_lib snd_sof_pci snd_hda_codec_generic snd_sof_xtensa_dsp snd_sof snd_sof_utils snd_hda_codec_atihdmi snd_pci_ps snd_hda_codec_hdmi snd_soc_acpi_amd_match snd_amd_sdw_acpi soundwire_amd soundwire_generic_allocation soundwire_bus edac_mce_amd snd_soc_sdca mt7925e snd_hda_intel mt7925_common snd_hda_codec snd_soc_core snd_usb_audio mt792x_lib snd_hda_core snd_compress mt76_connac_lib snd_intel_dspcfg ac97_bus mt76 snd_pcm_dmaengine snd_usbmidi_lib snd_intel_sdw_acpi kvm_amd snd_ump snd_hwdep snd_rpl_pci_acp6x snd_seq_midi snd_acp_pci mac80211 snd_seq_midi_event snd_amd_acpi_mach snd_acp_legacy_common kvm nls_iso8859_1 uvcvideo snd_rawmidi snd_pci_acp6x videobuf2_vmalloc snd_pcm uvc snd_seq videobuf2_memops videobuf2_v4l2 snd_seq_device irqbypass videobuf2_common snd_timer polyval_clmulni snd_pci_acp5x cfg80211 ghash_clmulni_intel videodev snd_rn_pci_acp3x snd snd_acp_config aesni_intel i2c_piix4 snd_soc_acpi<br>[69874.457591] mc rapl wmi_bmof libarc4 ccp amdxdna soundcore snd_pci_acp3x k10temp i2c_smbus soc_button_array amd_pmc mac_hid amdgpu amdxcp drm_panel_backlight_quirks gpu_sched drm_buddy drm_ttm_helper ttm drm_exec drm_suballoc_helper drm_display_helper auth_rpcgss cec rc_core i2c_algo_bit nvme_fabrics sunrpc efi_pstore nfnetlink dmi_sysfs ip_tables x_tables autofs4 btrfs blake2b_generic raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor async_tx xor raid6_pq raid1 raid0 linear hid_generic usbhid sdhci_pci nvme sdhci_uhs2 psmouse thunderbolt nvme_core serio_raw sdhci nvme_keyring video i2c_hid_acpi cqhci nvme_auth i2c_hid wmi hid<br>[69874.457638] CPU: 28 UID: 0 PID: 411 Comm: kworker\/28:1H Kdump: loaded Tainted: P O 6.17.0-14-generic #14-Ubuntu PREEMPT(voluntary)<br>[69874.457644] Tainted: [P]=PROPRIETARY_MODULE, [O]=OOT_MODULE<br>[69874.457645] Hardware name: AZW GTR Pro\/GTR Pro, BIOS GTRP108 09\/16\/2025<br>[69874.457648] Workqueue: events_highpri dm_irq_work_func [amdgpu]<br>[69874.458008] RIP: 0010:amdgpu_dm_commit_planes+0x10c3\/0x1620 [amdgpu]<br>[69874.458309] Code: e8 f2 5a ff ff 4c 8b 9d 78 ff ff ff e9 c2 f9 ff ff 31 c9 48 85 d2 0f 85 cb fe ff ff e9 bf f8 ff ff 0f 0b 0f 0b e9 f7 fe ff ff &lt;0f&gt; 0b e9 0f ff ff ff 48 8b 45 88 be 01 00 00 00 4c 89 9d 30 ff ff<br>[69874.458311] RSP: 0018:ffffd10e41b3f9e8 EFLAGS: 00010082<br>[69874.458315] RAX: 0000000000000001 RBX: 0000000000000246 RCX: 0000000000000000<br>[69874.458317] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000<br>[69874.458318] RBP: ffffd10e41b3fae8 R08: 0000000000000000 R09: 0000000000000000<br>[69874.458319] R10: 0000000000000000 R11: 0000000000000000 R12: ffff8d5aa6f45b18<br>[69874.458320] R13: 0000000000000000 R14: ffff8d5aa8dcc000 R15: ffff8d5a8d682c00<br>[69874.458322] FS: 0000000000000000(0000) GS:ffff8d718b87f000(0000) knlGS:0000000000000000<br>[69874.458324] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033<br>[69874.458325] CR2: 00007ef8da7208f0 CR3: 00000015d0c40000 CR4: 0000000000f50ef0<br>[69874.458327] PKRU: 55555554<br>[69874.458329] Call Trace:<br>[69874.458331] [69874.458337] ? manage_dm_interrupts+0xa3\/0x210 [amdgpu] [69874.458606] amdgpu_dm_atomic_commit_tail+0xa77\/0x1130 [amdgpu] [69874.458862] commit_tail+0xc0\/0x1b0 [69874.458868] ? drm_atomic_helper_swap_state+0x2d2\/0x3a0 [69874.458872] drm_atomic_helper_commit+0x153\/0x190 [69874.458874] drm_atomic_commit+0xaa\/0xf0 [69874.458877] ? __pfx___drm_printfn_info+0x10\/0x10 [69874.458883] dm_restore_drm_connector_state+0x102\/0x170 [amdgpu] [69874.459125] handle_hpd_irq_helper+0x1a3\/0x1e0 [amdgpu] [69874.459360] handle_hpd_irq+0xe\/0x20 [amdgpu] [69874.459592] dm_irq_work_func+0x16\/0x30 [amdgpu] [69874.459824] process_one_work+0x18b\/0x370 [69874.459830] worker_thread+0x317\/0x450 [69874.459833] ? _raw_spin_lock_irqsave+0xe\/0x20 [69874.459839] ? __pfx_worker_thread+0x10\/0x10 [69874.459842] kthread+0x108\/0x220 [69874.459845] ? __pfx_kthread+0x10\/0x10 [69874.459848] ret_from_fork+0x131\/0x150 [69874.459853] ? __pfx_kthread+0x10\/0x10 [69874.459855] ret_from_fork_asm+0x1a\/0x30 [69874.459860]<br>[69874.459861] ---[ end trace 0000000000000000 ]---<br>[69874.498959] workqueue: dm_irq_work_func [amdgpu] hogged CPU for &gt;10000us 5 times, consider switching to WQ_UNBOUND<br>[69874.722942] workqueue: dm_irq_work_func [amdgpu] hogged CPU for &gt;10000us 7 times, consider switching to WQ_UNBOUND<br>[69874.841943] workqueue: dm_irq_work_func [amdgpu] hogged CPU for &gt;10000us 11 times, consider switching to WQ_UNBOUND<\/code><\/pre>\n\n\n\n<p>It&#8217;s super annoying but not the end of the world. I would like to debug it, however, to find out who&#8217;s going to get the issue posted: Firefox, LibreWolf, Wayland or AMD?<\/p>\n\n\n\n<p>Any ideas? Let me know @&#x63;&#x77;&#x65;&#x69;&#x63;&#x6b;&#x68;&#x6d;&#x61;&#x6e;&#x6e;&#64;&#113;&#111;&#116;&#111;&#46;&#111;rg.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I keep having screens freezing seemingly randomly on my AMD Strix Halo GPU on Wayland whenever (and it seems only if!) I&#8217;m using Firefox\/LibreWolf. I can recover fine: Unplug the HDMI or DisplayPort cable of the affected screen, wait a few seconds and the graphics stack resets and everything is back to normal. When this&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[17,16],"tags":[],"class_list":["post-421","post","type-post","status-publish","format-standard","hentry","category-hardware","category-linux"],"_links":{"self":[{"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/posts\/421","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/comments?post=421"}],"version-history":[{"count":1,"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/posts\/421\/revisions"}],"predecessor-version":[{"id":422,"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/posts\/421\/revisions\/422"}],"wp:attachment":[{"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/media?parent=421"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/categories?post=421"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bowfinger.de\/blog\/wp-json\/wp\/v2\/tags?post=421"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}