Dud 7800XT or driver issues?

I bought a Sapphire reference 7800XT in late 2023 and my experience was horrible; not only would I get frequent oops within amdgpu, but when it did take down my whole system it wouldn’t come back unless I turned off the PSU first due to this bug.

A lot was fixed with kernel 6.8, and crashes are far less frequent, but I will still occasionally have my wayland session torn down and have my gpu power level set to BOOTUP_DEFAULT by an issue seemingly in amdgpu (included example trace below). Do I have a dud GPU? Maybe my memory is playing up? Driver wackiness? Is anybody else experiencing instability on the 7800XT on linux?

I will mention, I’m using Arch on currently on kernel 6.8.7. I’ve briefly used 6.9rcX, but not long enough to tell if it fixed any issues.

kern :warn : [ +1.185416] ------------[ cut here ]------------
kern :warn : [ +0.000002] WARNING: CPU: 3 PID: 1256317 at amdgpu_dm_atomic_commit_tail+0x37a6/0x3de0 [amdgpu]
kern :warn : [ +0.000137] Modules linked in: xt_nat xt_connmark overlay xt_mark xt_MASQUERADE xt_addrtype xt_conntrack ip6t_rpfilter ipt_rpfilter xt_pkttype xt_LOG nf_log_syslog xt_tcpudp nft_compat veth nvme_tcp nvme_keyring nvme_fabrics vhost_vsock vmw_vsock_virtio_transport_common vhost vhost_iotlb vsock snd_seq_dummy snd_hrtimer snd_>
kern :warn : [ +0.000054] i2c_piix4 zenpower(OE) soundcore libphy nft_ct ryzen_smu(OE) spl(OE) gpio_amdpt mac_hid cfg80211 nft_chain_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 sch_fq_codel vboxnetflt(OE) vboxnetadp(OE) nf_tables libcrc32c vboxdrv(OE) nls_ascii usbip_host usbip_core crypto_user nfnetlink zram zsmalloc dmi_sysf>
kern :warn : [ +0.000037] CPU: 3 PID: 1256317 Comm: kworker/u65:16 Tainted: P W OE 6.8.7-x64v-xanmod2-2 #1
kern :warn : [ +0.000002] Hardware name: Micro-Star International Co., Ltd. MS-7C56/B550-A PRO (MS-7C56), BIOS A.D0 04/28/2023
kern :warn : [ +0.000001] Workqueue: events_unbound async_run_entry_fn
kern :warn : [ +0.000005] RIP: 0010:amdgpu_dm_atomic_commit_tail+0x37a6/0x3de0 [amdgpu]
kern :warn : [ +0.000116] Code: ff ff 48 98 48 69 c0 08 09 00 00 49 8d 8c 03 d8 02 00 00 e9 11 ea ff ff 0f 0b 49 8b 3f e8 92 a1 e0 ee 85 c0 0f 84 f8 d4 ff ff <0f> 0b e9 f1 d4 ff ff 0f 0b e9 12 d0 ff ff 48 8b 85 88 fe ff ff 31
kern :warn : [ +0.000001] RSP: 0018:ffffb02ceb427960 EFLAGS: 00010282
kern :warn : [ +0.000002] RAX: 00000000ffffffea RBX: ffff910e40f2d000 RCX: ffff91134b967080
kern :warn : [ +0.000001] RDX: 0000000000000003 RSI: 0000000000000297 RDI: ffff910e4fc0015c
kern :warn : [ +0.000001] RBP: ffffb02ceb427bb0 R08: ffff910e4fc00178 R09: 0000000000000000
kern :warn : [ +0.000001] R10: ffffb030fe8f3500 R11: ffff910e4fc00010 R12: 0000000000000000
kern :warn : [ +0.000001] R13: 0000000000000000 R14: ffff9110d2cac000 R15: ffff9112517e5c00
kern :warn : [ +0.000001] FS: 0000000000000000(0000) GS:ffff91153e380000(0000) knlGS:0000000000000000
kern :warn : [ +0.000001] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
kern :warn : [ +0.000001] CR2: 0000000000000000 CR3: 000000063b02e000 CR4: 0000000000f50ef0
kern :warn : [ +0.000001] PKRU: 55555554
kern :warn : [ +0.000000] Call Trace:
kern :warn : [ +0.000002]
kern :warn : [ +0.000002] ? __warn+0x6b/0xd0
kern :warn : [ +0.000003] ? amdgpu_dm_atomic_commit_tail+0x37a6/0x3de0 [amdgpu]
kern :warn : [ +0.000089] ? report_bug+0x11a/0x150
kern :warn : [ +0.000003] ? handle_bug+0x3c/0x80
kern :warn : [ +0.000002] ? exc_invalid_op+0x13/0x60
kern :warn : [ +0.000001] ? asm_exc_invalid_op+0x16/0x20
kern :warn : [ +0.000005] ? amdgpu_dm_atomic_commit_tail+0x37a6/0x3de0 [amdgpu]
kern :warn : [ +0.000088] ? amdgpu_vram_mgr_new+0x20/0x3c0 [amdgpu]
kern :warn : [ +0.000071] ? amdgpu_bo_move_notify+0xa9/0xb0 [amdgpu]
kern :warn : [ +0.000067] ? srso_alias_return_thunk+0x5/0xfbef5
kern :warn : [ +0.000002] ? amdgpu_bo_move+0x21f/0x6e0 [amdgpu]
kern :warn : [ +0.000070] ? srso_alias_return_thunk+0x5/0xfbef5
kern :warn : [ +0.000002] ? amdgpu_bo_gpu_offset_no_check+0x31/0x80 [amdgpu]
kern :warn : [ +0.000067] ? srso_alias_return_thunk+0x5/0xfbef5
kern :warn : [ +0.000001] ? amdgpu_dm_plane_helper_prepare_fb+0x10a/0x2e0 [amdgpu]
kern :warn : [ +0.000091] commit_tail+0x8f/0x120
kern :warn : [ +0.000004] drm_atomic_helper_commit+0x111/0x140
kern :warn : [ +0.000002] drm_atomic_commit+0x91/0xc0
kern :warn : [ +0.000002] ? __drm_printfn_seq_file+0x20/0x20
kern :warn : [ +0.000003] drm_atomic_helper_commit_duplicated_state+0xba/0xd0
kern :warn : [ +0.000002] drm_atomic_helper_resume+0x85/0x130
kern :warn : [ +0.000003] dm_resume+0x336/0x8e0 [amdgpu]
kern :warn : [ +0.000088] ? _dev_info+0x67/0x90
kern :warn : [ +0.000004] amdgpu_device_ip_resume_phase2+0x4d/0xc0 [amdgpu]
kern :warn : [ +0.000066] amdgpu_device_resume+0x97/0x2c0 [amdgpu]
kern :warn : [ +0.000066] amdgpu_pmops_resume+0x41/0x80 [amdgpu]
kern :warn : [ +0.000066] ? pci_legacy_resume+0x80/0x80
kern :warn : [ +0.000002] dpm_run_callback+0x85/0x130
kern :warn : [ +0.000003] device_resume+0xab/0x2d0
kern :warn : [ +0.000002] async_resume+0x14/0x20
kern :warn : [ +0.000002] async_run_entry_fn+0x29/0x110
kern :warn : [ +0.000002] process_one_work+0x15e/0x280
kern :warn : [ +0.000003] worker_thread+0x2ec/0x410
kern :warn : [ +0.000002] ? rescuer_thread+0x400/0x400
kern :warn : [ +0.000001] kthread+0xdf/0x110
kern :warn : [ +0.000002] ? kthread_complete_and_exit+0x20/0x20
kern :warn : [ +0.000002] ret_from_fork+0x2b/0x40
kern :warn : [ +0.000002] ? kthread_complete_and_exit+0x20/0x20
kern :warn : [ +0.000002] ret_from_fork_asm+0x11/0x20
kern :warn : [ +0.000004]
kern :warn : [ +0.000001] —[ end trace 0000000000000000 ]—