Amdgpu: [gfxhub] page fault - Display freezing in Ubuntu 25.10

My Framework 13 will randomly freeze the display, usually when I’m using Google Chrome. In 24.04 LTS this issue manifested as the display freezing for maybe 20 seconds, but after upgrading to 25.10 (in an attempt to fix this issue) it now appears to also log me out when the crash occurs.

Relevant snippet of dmesg below:

[ 1932.708645] amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:24 vmid:5 pasid:32771)
[ 1932.708656] amdgpu 0000:c1:00.0: amdgpu:  Process chrome pid 8735 thread chrome:cs0 pid 8762
[ 1932.708660] amdgpu 0000:c1:00.0: amdgpu:   in page starting at address 0x0000000008000000 from client 10
[ 1932.708664] amdgpu 0000:c1:00.0: amdgpu: GCVM_L2_PROTECTION_FAULT_STATUS:0x00501430
[ 1932.708667] amdgpu 0000:c1:00.0: amdgpu: 	 Faulty UTCL2 client ID: SQC (data) (0xa)
[ 1932.708670] amdgpu 0000:c1:00.0: amdgpu: 	 MORE_FAULTS: 0x0
[ 1932.708672] amdgpu 0000:c1:00.0: amdgpu: 	 WALKER_ERROR: 0x0
[ 1932.708675] amdgpu 0000:c1:00.0: amdgpu: 	 PERMISSION_FAULTS: 0x3
[ 1932.708677] amdgpu 0000:c1:00.0: amdgpu: 	 MAPPING_ERROR: 0x0
[ 1932.708679] amdgpu 0000:c1:00.0: amdgpu: 	 RW: 0x0
[ 1949.185658] amdgpu 0000:c1:00.0: amdgpu: Dumping IP State
[ 1949.188344] amdgpu 0000:c1:00.0: amdgpu: Dumping IP State Completed
[ 1949.188442] amdgpu 0000:c1:00.0: amdgpu: [drm] AMDGPU device coredump file has been created
[ 1949.188445] amdgpu 0000:c1:00.0: amdgpu: [drm] Check your /sys/class/drm/card1/device/devcoredump/data
[ 1949.188448] amdgpu 0000:c1:00.0: amdgpu: ring gfx_0.0.0 timeout, signaled seq=162638, emitted seq=162640
[ 1949.188453] amdgpu 0000:c1:00.0: amdgpu:  Process chrome pid 8735 thread chrome:cs0 pid 8762
[ 1949.188458] amdgpu 0000:c1:00.0: amdgpu: Starting gfx_0.0.0 ring reset
[ 1951.192293] amdgpu 0000:c1:00.0: amdgpu: MES failed to respond to msg=RESET
[ 1951.192303] amdgpu 0000:c1:00.0: amdgpu: failed to reset legacy queue
[ 1951.192306] amdgpu 0000:c1:00.0: amdgpu: reset via MES failed and try pipe reset -110
[ 1951.192310] amdgpu 0000:c1:00.0: amdgpu: Ring gfx_0.0.0 reset failed
[ 1951.192314] amdgpu 0000:c1:00.0: amdgpu: GPU reset begin!
[ 1953.277919] amdgpu 0000:c1:00.0: amdgpu: MES failed to respond to msg=REMOVE_QUEUE
[ 1953.277928] amdgpu 0000:c1:00.0: amdgpu: failed to unmap legacy queue
[ 1953.488349] [drm:gfx_v11_0_cp_gfx_enable.isra.0 [amdgpu]] *ERROR* failed to halt cp gfx
[ 1953.489963] amdgpu 0000:c1:00.0: amdgpu: MODE2 reset
[ 1953.524769] amdgpu 0000:c1:00.0: amdgpu: GPU reset succeeded, trying to resume
[ 1953.525904] [drm] PCIE GART of 512M enabled (table at 0x000000801FD00000).
[ 1953.525936] amdgpu 0000:c1:00.0: amdgpu: SMU is resuming...
[ 1953.527426] amdgpu 0000:c1:00.0: amdgpu: SMU is resumed successfully!
[ 1953.534967] amdgpu 0000:c1:00.0: amdgpu: [drm] DMUB hardware initialized: version=0x08005300
[ 1953.752953] amdgpu 0000:c1:00.0: amdgpu: ring gfx_0.0.0 uses VM inv eng 0 on hub 0
[ 1953.752963] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.0.0 uses VM inv eng 1 on hub 0
[ 1953.752966] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.1.0 uses VM inv eng 4 on hub 0
[ 1953.752969] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.2.0 uses VM inv eng 6 on hub 0
[ 1953.752972] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.3.0 uses VM inv eng 7 on hub 0
[ 1953.752975] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.0.1 uses VM inv eng 8 on hub 0
[ 1953.752977] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.1.1 uses VM inv eng 9 on hub 0
[ 1953.752979] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.2.1 uses VM inv eng 10 on hub 0
[ 1953.752982] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.3.1 uses VM inv eng 11 on hub 0
[ 1953.752985] amdgpu 0000:c1:00.0: amdgpu: ring sdma0 uses VM inv eng 12 on hub 0
[ 1953.752987] amdgpu 0000:c1:00.0: amdgpu: ring vcn_unified_0 uses VM inv eng 0 on hub 8
[ 1953.752990] amdgpu 0000:c1:00.0: amdgpu: ring jpeg_dec uses VM inv eng 1 on hub 8
[ 1953.752993] amdgpu 0000:c1:00.0: amdgpu: ring mes_kiq_3.1.0 uses VM inv eng 13 on hub 0
[ 1953.755204] amdgpu 0000:c1:00.0: amdgpu: GPU reset(2) succeeded!
[ 1953.755237] amdgpu 0000:c1:00.0: [drm] device wedged, but recovered through reset
[ 1953.762218] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize parser -125!

Which Linux distro are you using?
Ubuntu

Which release version?
(if rolling release without a release version, skip this question)
25.10 (and previously 24.04)

(If rolling release, last date updated?)
Today.

Which kernel are you using?
6.17.0-14-generic

Which BIOS version are you using?

:~$  sudo dmidecode -s bios-version
03.17

Which Framework Laptop 13 model are you using? (AMD Ryzen™ AI 300 Series, AMD Ryzen™ 7040 Series, Intel® Core™ Ultra Series 1, 13th Gen Intel® Core™ , 12th Gen Intel® Core™, 11th Gen Intel® Core™)
AMD Ryzen™ 7040 Series - Ryzen™ 5 7640U

Does kernel parameter amdgpu.dcdebugmask=0x410 work?

I’ll give it a shot. Unfortunately I need to wait sometimes up to 24 hours before the bug reappears so it may be a while before I have more to report.

Are you running chrome with hardware acceleration enabled?

If yes, there’s some amdgpu changes in the pipeline that might solve this. I’ve seen the same behavior but only when hwaccel was turned on. In Firefox too. The amd folks released a test version of the kernel (have to build from source) and it seems to have fixed it for me as well as others in the discussion threads in their git repo.

1 Like

Okay, I just saw the crash again while using the amdgpu.dcdebugmask=0x410 kernel parameter.

Try turning off hardware acceleration.

I can turn of hardware acceleration but this makes some websites entirely unusable for me. Ideally I’d like to keep hardware accel and avoid these crashes.

I hear you. I’m just suggesting a test. See if it freezes. If the freezing stops when hw accel is off, then you’ll probably be safe in assuming that the “near future’“ amd driver update will be the solution to the situation. Then the only discomfort will be the wait!

Yeah, understood. Thanks for the suggestion, I’ve got chrome hardware acceleration turned off for now.

I tracked the threads on amd bug tracking system and it seems to me that the problem they’re trying to resolve is hang that origins from power optimization and panel replays, one that manifests by freezes, not page faults. In both cases disabling hardware acceleration may help so this may be just a red herring.

Nevertheless I’m about to test the patches they submitted and gonna let you know if they fix the problem (I experience the same sort of hangs while using Brave/Chromium).

Update:
As I said, it took just a moment to crash it. I’ll try one more thing later (instead of patching compile it entirely from their branch), but I don’t have high hopes here:

[   58.425852] amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:24 vmid:7 pasid:32787)
[   58.425858] amdgpu 0000:c1:00.0: amdgpu:  Process brave pid 3148 thread brave:cs0 pid 3178
[   58.425860] amdgpu 0000:c1:00.0: amdgpu:   in page starting at address 0x000002cdc0c8c000 from client 10
[   58.425861] amdgpu 0000:c1:00.0: amdgpu: GCVM_L2_PROTECTION_FAULT_STATUS:0x00701430
[   58.425862] amdgpu 0000:c1:00.0: amdgpu:      Faulty UTCL2 client ID: SQC (data) (0xa)
[   58.425863] amdgpu 0000:c1:00.0: amdgpu:      MORE_FAULTS: 0x0
[   58.425864] amdgpu 0000:c1:00.0: amdgpu:      WALKER_ERROR: 0x0
[   58.425864] amdgpu 0000:c1:00.0: amdgpu:      PERMISSION_FAULTS: 0x3
[   58.425864] amdgpu 0000:c1:00.0: amdgpu:      MAPPING_ERROR: 0x0
[   58.425865] amdgpu 0000:c1:00.0: amdgpu:      RW: 0x0
[   60.494376] amdgpu 0000:c1:00.0: amdgpu: Dumping IP State
[   60.496276] amdgpu 0000:c1:00.0: amdgpu: Dumping IP State Completed
[   60.496359] amdgpu 0000:c1:00.0: amdgpu: [drm] AMDGPU device coredump file has been created
[   60.496361] amdgpu 0000:c1:00.0: amdgpu: [drm] Check your /sys/class/drm/card1/device/devcoredump/data
[   60.496363] amdgpu 0000:c1:00.0: amdgpu: ring gfx_0.0.0 timeout, signaled seq=16067, emitted seq=16069
[   60.496365] amdgpu 0000:c1:00.0: amdgpu:  Process brave pid 3148 thread brave:cs0 pid 3178
[   60.496367] amdgpu 0000:c1:00.0: amdgpu: Starting gfx_0.0.0 ring reset
[   60.496507] amdgpu 0000:c1:00.0: amdgpu: Ring gfx_0.0.0 reset succeeded
[   60.496508] amdgpu 0000:c1:00.0: [drm] device wedged, but recovered through reset

@gregkl could you take a look at Framework 16 Ryzen AI + KDE/Plasma + Brave = frequent gpu faults [video][reproduction], does it look similarly to what you experience? I guess with the difference that I’m not getting kicked out.

@Lukasz_Siudut - your bug looks similar to what I’m experiencing - it’s very easily triggered by using Google Photos in Chrome with hardware acceleration turned on. I’m not too surprised to hear that you’re not getting logged out when it happens as this behavior only started when I upgraded from Ubuntu 24.04 to 25.10.

I’m sorry to report that I’ve hit the limit of my patience here. I’ve bought myself a new 13" intel mainboard that I’ll install when it arrives; I’m hoping that will solve this problem.

Oh yes I was able to get a freeze in chrome+gphotos. Within a minute of scanning through the batch of 500 pics. No mention of a segfault though plenty of “MES is full” and killed threads because of waiting too long on a mutex. Clearly there’s lots of issues at hand here.

However, I couldn’t reproduce the hang with the kernel build I linked above. After firing up a mpv instance using hw decode and many minutes of gphoto and other browser tab clicking: no hang.

I’m in x11. Maybe it really is a wayland thing. That’s probably worth reporting to them.

The random display freezes on your Framework 13 with Ubuntu 25.10 are caused by the AMD GPU driver hitting page faults. First, make sure your kernel and amdgpu driver are fully updated, as some fixes for gfxhub page faults have been backported. You can also try switching to the AMD proprietary stack (AMDGPU-PRO) if stability is critical. Avoid heavy GPU workloads in Chrome until updated. If the problem persists, file a bug with Ubuntu/AMD with the dmesg logs for a proper driver fix.