Bug 95017 - [drm:radeon_ib_ring_tests] *ERROR* radeon: failed testing IB on GFX ring (-35).
Summary: [drm:radeon_ib_ring_tests] *ERROR* radeon: failed testing IB on GFX ring (-35).
Status: NEW
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Radeon (show other bugs)
Version: unspecified
Hardware: All Linux (All)
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
: 95177 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-04-19 11:28 UTC by Mathieu Malaterre
Modified: 2018-12-02 23:48 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
default to PCI for PowerPC (601 bytes, patch)
2016-05-02 14:31 UTC, Mathieu Malaterre
no flags Details | Splinter Review
dmesg (64.95 KB, text/plain)
2018-12-02 23:03 UTC, Simon
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mathieu Malaterre 2016-04-19 11:28:15 UTC
I am installing a Debian Jessie on a Mac Mini PowerPC G4 system.

After a couple of seconds of using the system, it generally freeze, looking at dmesg from another ssh connection I can see:

[   21.314765] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   21.459715] b43-phy0: Loading firmware version 666.2 (2011-02-23 01:15:07)
[   21.531076] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   23.719199] gem 0002:20:0f.0 eth0: Link is up at 100 Mbps, full-duplex
[   23.719318] gem 0002:20:0f.0 eth0: Pause is disabled
[   23.719357] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[  180.631048] radeon 0000:00:10.0: ring 0 stalled for more than 16096msec
[  180.631062] radeon 0000:00:10.0: GPU lockup (waiting for
0x000000000000031b last fence id 0x0000000000000301 on ring 0)
[  180.768184] radeon: wait for empty RBBM fifo failed ! Bad things
might happen.
[  180.905284] Failed to wait GUI idle while programming pipes. Bad
things might happen.
[  180.908156] radeon 0000:00:10.0: Saved 827 dwords of commands on ring 0.
[  180.908176] radeon 0000:00:10.0: (r100_asic_reset:2551)
RBBM_STATUS=0x8002C139
[  181.405690] radeon 0000:00:10.0: (r100_asic_reset:2572)
RBBM_STATUS=0x8002C139
[  181.899237] radeon 0000:00:10.0: (r100_asic_reset:2580)
RBBM_STATUS=0x8002C139
[  181.899264] radeon 0000:00:10.0: GPU reset succeed
[  181.899269] radeon 0000:00:10.0: GPU reset succeeded, trying to resume
[  181.899281] radeon 0000:00:10.0: (r100_asic_reset:2551)
RBBM_STATUS=0x8002C139
[  182.396784] radeon 0000:00:10.0: (r100_asic_reset:2572)
RBBM_STATUS=0x8002C139
[  182.890328] radeon 0000:00:10.0: (r100_asic_reset:2580)
RBBM_STATUS=0x8002C139
[  182.890351] radeon 0000:00:10.0: GPU reset succeed
[  182.890376] radeon 0000:00:10.0: WB disabled
[  182.890384] radeon 0000:00:10.0: fence driver on ring 0 use gpu
addr 0x0000000000000000 and cpu addr 0xe2819000
[  183.027494] radeon: wait for empty RBBM fifo failed ! Bad things
might happen.
[  183.164599] Failed to wait GUI idle while programming pipes. Bad
things might happen.
[  183.164643] [drm] radeon: ring at 0x0000000000001000
[  183.171448] [drm] ring test succeeded in 0 usecs
[  193.171046] radeon 0000:00:10.0: ring 0 stalled for more than 10000msec
[  193.171061] radeon 0000:00:10.0: GPU lockup (waiting for
0x000000000000031c last fence id 0x0000000000000301 on ring 0)
[  193.171068] [drm:r100_ib_test] *ERROR* radeon: fence wait failed (-35).
[  193.171079] [drm:radeon_ib_ring_tests] *ERROR* radeon: failed
testing IB on GFX ring (-35).
[  193.171084] radeon 0000:00:10.0: ib ring test failed (-35).
[  193.308210] radeon: wait for empty RBBM fifo failed ! Bad things
might happen.
[  193.445310] Failed to wait GUI idle while programming pipes. Bad
things might happen.
[  193.446307] radeon 0000:00:10.0: (r100_asic_reset:2551)
RBBM_STATUS=0x8002C136
[  193.943817] radeon 0000:00:10.0: (r100_asic_reset:2572)
RBBM_STATUS=0x8002C136
[  194.437363] radeon 0000:00:10.0: (r100_asic_reset:2580)
RBBM_STATUS=0x8002C136
[  194.437390] radeon 0000:00:10.0: GPU reset succeed
[  194.437395] radeon 0000:00:10.0: GPU reset succeeded, trying to resume
[  194.437407] radeon 0000:00:10.0: (r100_asic_reset:2551)
RBBM_STATUS=0x8002C136
[  194.934911] radeon 0000:00:10.0: (r100_asic_reset:2572)
RBBM_STATUS=0x8002C136
[  195.428455] radeon 0000:00:10.0: (r100_asic_reset:2580)
RBBM_STATUS=0x8002C136
[  195.428476] radeon 0000:00:10.0: GPU reset succeed
[  195.428501] radeon 0000:00:10.0: WB disabled
[  195.428509] radeon 0000:00:10.0: fence driver on ring 0 use gpu
addr 0x0000000000000000 and cpu addr 0xe2819000
[  195.565605] radeon: wait for empty RBBM fifo failed ! Bad things
might happen.
[  195.702705] Failed to wait GUI idle while programming pipes. Bad
things might happen.
[  195.702749] [drm] radeon: ring at 0x0000000000001000
[  195.710956] [drm] ring test succeeded in 0 usecs
[  205.707048] radeon 0000:00:10.0: ring 0 stalled for more than 10000msec
[  205.707063] radeon 0000:00:10.0: GPU lockup (waiting for
0x000000000000031d last fence id 0x0000000000000301 on ring 0)
[  205.707070] [drm:r100_ib_test] *ERROR* radeon: fence wait failed (-35).
[  205.707081] [drm:radeon_ib_ring_tests] *ERROR* radeon: failed
testing IB on GFX ring (-35).
[  205.707086] radeon 0000:00:10.0: ib ring test failed (-35).
[  205.758647] radeon 0000:00:10.0: GPU reset failed

Using

# apt-cache policy xserver-xorg-video-r128
xserver-xorg-video-r128:
  Installé : 6.9.2-1+b2
  Candidat : 6.9.2-1+b2
 Table de version :
 *** 6.9.2-1+b2 0
        500 http://ftp.fr.debian.org/debian/ jessie/main powerpc Packages
        100 /var/lib/dpkg/status
Comment 1 Mathieu Malaterre 2016-04-19 11:44:55 UTC
If I update to debian jessie/backports here is what I get:

[   23.665906] b43-phy0: Loading firmware version 666.2 (2011-02-23 01:15:07)
[   25.930036] gem 0002:20:0f.0 eth0: Link is up at 100 Mbps, full-duplex
[   25.930164] gem 0002:20:0f.0 eth0: Pause is disabled
[   67.501888] radeon 0000:00:10.0: ring 0 stalled for more than 10212msec
[   67.501904] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000164 on ring 0)
[   67.640696] radeon: wait for empty RBBM fifo failed ! Bad things might happen.
[   67.776370] Failed to wait GUI idle while programming pipes. Bad things might happen.
[   67.781185] radeon 0000:00:10.0: Saved 1019 dwords of commands on ring 0.
[   67.781206] radeon 0000:00:10.0: (r100_asic_reset:2567) RBBM_STATUS=0x8002C139
[   68.278804] radeon 0000:00:10.0: (r100_asic_reset:2588) RBBM_STATUS=0x8002C139
[   68.772351] radeon 0000:00:10.0: (r100_asic_reset:2596) RBBM_STATUS=0x8002C139
[   68.772379] radeon 0000:00:10.0: GPU reset succeed
[   68.772384] radeon 0000:00:10.0: GPU reset succeeded, trying to resume
[   68.772396] radeon 0000:00:10.0: (r100_asic_reset:2567) RBBM_STATUS=0x8002C139
[   69.269899] radeon 0000:00:10.0: (r100_asic_reset:2588) RBBM_STATUS=0x8002C139
[   69.763445] radeon 0000:00:10.0: (r100_asic_reset:2596) RBBM_STATUS=0x8002C139
[   69.763466] radeon 0000:00:10.0: GPU reset succeed
[   69.763520] radeon 0000:00:10.0: WB disabled
[   69.763529] radeon 0000:00:10.0: fence driver on ring 0 use gpu addr 0x0000000000000000 and cpu addr 0xe2905000
[   69.898991] radeon: wait for empty RBBM fifo failed ! Bad things might happen.
[   70.034453] Failed to wait GUI idle while programming pipes. Bad things might happen.
[   70.034497] [drm] radeon: ring at 0x0000000000001000
[   70.043419] [drm] ring test succeeded in 0 usecs
[   80.537888] radeon 0000:00:10.0: ring 0 stalled for more than 10496msec
[   80.537903] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000165 on ring 0)
[   80.538132] [drm:r100_ib_test [radeon]] *ERROR* radeon: fence wait failed (-35).
[   80.538206] [drm:radeon_ib_ring_tests [radeon]] *ERROR* radeon: failed testing IB on GFX ring (-35).
[   80.674747] radeon: wait for empty RBBM fifo failed ! Bad things might happen.
[   80.810215] Failed to wait GUI idle while programming pipes. Bad things might happen.
[   80.828174] radeon 0000:00:10.0: Saved 252827 dwords of commands on ring 0.
[   80.829341] radeon 0000:00:10.0: (r100_asic_reset:2567) RBBM_STATUS=0x8002C135
[   81.326863] radeon 0000:00:10.0: (r100_asic_reset:2588) RBBM_STATUS=0x8002C135
[   81.820409] radeon 0000:00:10.0: (r100_asic_reset:2596) RBBM_STATUS=0x8002C135
[   81.820436] radeon 0000:00:10.0: GPU reset succeed
[   81.820441] radeon 0000:00:10.0: GPU reset succeeded, trying to resume
[   81.820452] radeon 0000:00:10.0: (r100_asic_reset:2567) RBBM_STATUS=0x8002C135
[   82.317955] radeon 0000:00:10.0: (r100_asic_reset:2588) RBBM_STATUS=0x8002C135
[   82.811520] radeon 0000:00:10.0: (r100_asic_reset:2596) RBBM_STATUS=0x8002C135
[   82.811541] radeon 0000:00:10.0: GPU reset succeed
[   82.811594] radeon 0000:00:10.0: WB disabled
[   82.811604] radeon 0000:00:10.0: fence driver on ring 0 use gpu addr 0x0000000000000000 and cpu addr 0xe2905000
[   82.947070] radeon: wait for empty RBBM fifo failed ! Bad things might happen.
[   83.082533] Failed to wait GUI idle while programming pipes. Bad things might happen.
[   83.082578] [drm] radeon: ring at 0x0000000000001000
[   83.092664] [drm] ring test succeeded in 0 usecs
[   93.585889] radeon 0000:00:10.0: ring 0 stalled for more than 10496msec
[   93.585905] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000166 on ring 0)
[   93.586134] [drm:r100_ib_test [radeon]] *ERROR* radeon: fence wait failed (-35).
[   93.586209] [drm:radeon_ib_ring_tests [radeon]] *ERROR* radeon: failed testing IB on GFX ring (-35).
[   93.721752] radeon: wait for empty RBBM fifo failed ! Bad things might happen.
[   93.857322] Failed to wait GUI idle while programming pipes. Bad things might happen.
[   93.876189] radeon 0000:00:10.0: Saved 242491 dwords of commands on ring 0.
[   93.876218] radeon 0000:00:10.0: (r100_asic_reset:2567) RBBM_STATUS=0x8002C131
[   94.373729] radeon 0000:00:10.0: (r100_asic_reset:2588) RBBM_STATUS=0x8002C131
[   94.867282] radeon 0000:00:10.0: (r100_asic_reset:2596) RBBM_STATUS=0x8002C131
[   94.867308] radeon 0000:00:10.0: GPU reset succeed
[   94.867313] radeon 0000:00:10.0: GPU reset succeeded, trying to resume
[   94.867325] radeon 0000:00:10.0: (r100_asic_reset:2567) RBBM_STATUS=0x8002C131
[   95.364833] radeon 0000:00:10.0: (r100_asic_reset:2588) RBBM_STATUS=0x8002C131
[   95.858380] radeon 0000:00:10.0: (r100_asic_reset:2596) RBBM_STATUS=0x8002C131
[   95.858403] radeon 0000:00:10.0: GPU reset succeed
[   95.858458] radeon 0000:00:10.0: WB disabled
[   95.858468] radeon 0000:00:10.0: fence driver on ring 0 use gpu addr 0x0000000000000000 and cpu addr 0xe2905000
[   95.993931] radeon: wait for empty RBBM fifo failed ! Bad things might happen.
[   96.129396] Failed to wait GUI idle while programming pipes. Bad things might happen.
[   96.129441] [drm] radeon: ring at 0x0000000000001000
[   96.137828] [drm] ring test succeeded in 0 usecs
[  106.133887] radeon 0000:00:10.0: ring 0 stalled for more than 10000msec
[  106.133902] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000167 on ring 0)
[  106.134128] [drm:r100_ib_test [radeon]] *ERROR* radeon: fence wait failed (-35).
[  106.134202] [drm:radeon_ib_ring_tests [radeon]] *ERROR* radeon: failed testing IB on GFX ring (-35).
[  106.269751] radeon: wait for empty RBBM fifo failed ! Bad things might happen.
[  106.405217] Failed to wait GUI idle while programming pipes. Bad things might happen.
[  106.422974] radeon 0000:00:10.0: Saved 232155 dwords of commands on ring 0.
[  106.423800] radeon 0000:00:10.0: (r100_asic_reset:2567) RBBM_STATUS=0x8002C12D
[  106.921317] radeon 0000:00:10.0: (r100_asic_reset:2588) RBBM_STATUS=0x8002C12D
[  107.414864] radeon 0000:00:10.0: (r100_asic_reset:2596) RBBM_STATUS=0x8002C12D
[  107.414890] radeon 0000:00:10.0: GPU reset succeed
[  107.414896] radeon 0000:00:10.0: GPU reset succeeded, trying to resume
[  107.414908] radeon 0000:00:10.0: (r100_asic_reset:2567) RBBM_STATUS=0x8002C12D
[  107.912414] radeon 0000:00:10.0: (r100_asic_reset:2588) RBBM_STATUS=0x8002C12D
[  108.405959] radeon 0000:00:10.0: (r100_asic_reset:2596) RBBM_STATUS=0x8002C12D
[  108.405980] radeon 0000:00:10.0: GPU reset succeed
[  108.406033] radeon 0000:00:10.0: WB disabled
[  108.406043] radeon 0000:00:10.0: fence driver on ring 0 use gpu addr 0x0000000000000000 and cpu addr 0xe2905000
[  108.541505] radeon: wait for empty RBBM fifo failed ! Bad things might happen.
[  108.676967] Failed to wait GUI idle while programming pipes. Bad things might happen.
[  108.677012] [drm] radeon: ring at 0x0000000000001000
[  108.685109] [drm] ring test succeeded in 0 usecs
[  118.681889] radeon 0000:00:10.0: ring 0 stalled for more than 10000msec
[  118.681905] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  118.682132] [drm:r100_ib_test [radeon]] *ERROR* radeon: fence wait failed (-35).
[  118.682206] [drm:radeon_ib_ring_tests [radeon]] *ERROR* radeon: failed testing IB on GFX ring (-35).
[  119.189892] radeon 0000:00:10.0: ring 0 stalled for more than 10508msec
[  119.189909] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  119.690658] radeon 0000:00:10.0: ring 0 stalled for more than 11008msec
[  119.690672] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  120.189888] radeon 0000:00:10.0: ring 0 stalled for more than 11508msec
[  120.189900] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  120.690769] radeon 0000:00:10.0: ring 0 stalled for more than 12008msec
[  120.690781] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  121.190404] radeon 0000:00:10.0: ring 0 stalled for more than 12508msec
[  121.190419] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  121.690192] radeon 0000:00:10.0: ring 0 stalled for more than 13008msec
[  121.690207] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  122.189895] radeon 0000:00:10.0: ring 0 stalled for more than 13508msec
[  122.189913] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  122.689887] radeon 0000:00:10.0: ring 0 stalled for more than 14008msec
[  122.689902] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  123.189890] radeon 0000:00:10.0: ring 0 stalled for more than 14508msec
[  123.189905] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  123.689889] radeon 0000:00:10.0: ring 0 stalled for more than 15008msec
[  123.689902] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  124.189891] radeon 0000:00:10.0: ring 0 stalled for more than 15508msec
[  124.189907] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  124.689887] radeon 0000:00:10.0: ring 0 stalled for more than 16008msec
[  124.689900] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  125.189890] radeon 0000:00:10.0: ring 0 stalled for more than 16508msec
[  125.189905] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  125.689888] radeon 0000:00:10.0: ring 0 stalled for more than 17008msec
[  125.689901] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  126.189909] radeon 0000:00:10.0: ring 0 stalled for more than 17508msec
[  126.189926] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  126.689918] radeon 0000:00:10.0: ring 0 stalled for more than 18008msec
[  126.689936] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  127.189903] radeon 0000:00:10.0: ring 0 stalled for more than 18508msec
[  127.189921] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  127.689892] radeon 0000:00:10.0: ring 0 stalled for more than 19008msec
[  127.689910] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  128.189888] radeon 0000:00:10.0: ring 0 stalled for more than 19508msec
[  128.189903] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  128.689881] radeon 0000:00:10.0: ring 0 stalled for more than 20008msec
[  128.689892] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  129.189887] radeon 0000:00:10.0: ring 0 stalled for more than 20508msec
[  129.189900] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  129.689890] radeon 0000:00:10.0: ring 0 stalled for more than 21008msec
[  129.689906] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  130.189895] radeon 0000:00:10.0: ring 0 stalled for more than 21508msec
[  130.189913] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  130.689886] radeon 0000:00:10.0: ring 0 stalled for more than 22008msec
[  130.689900] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  131.189888] radeon 0000:00:10.0: ring 0 stalled for more than 22508msec
[  131.189903] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  131.689885] radeon 0000:00:10.0: ring 0 stalled for more than 23008msec
[  131.689898] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  132.189885] radeon 0000:00:10.0: ring 0 stalled for more than 23508msec
[  132.189897] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  132.689882] radeon 0000:00:10.0: ring 0 stalled for more than 24008msec
[  132.689895] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  133.189891] radeon 0000:00:10.0: ring 0 stalled for more than 24508msec
[  133.189905] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  133.689894] radeon 0000:00:10.0: ring 0 stalled for more than 25008msec
[  133.689911] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  134.189888] radeon 0000:00:10.0: ring 0 stalled for more than 25508msec
[  134.189902] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  134.689887] radeon 0000:00:10.0: ring 0 stalled for more than 26008msec
[  134.689900] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  135.189884] radeon 0000:00:10.0: ring 0 stalled for more than 26508msec
[  135.189896] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  135.689885] radeon 0000:00:10.0: ring 0 stalled for more than 27008msec
[  135.689897] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  136.189883] radeon 0000:00:10.0: ring 0 stalled for more than 27508msec
[  136.189894] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  136.689884] radeon 0000:00:10.0: ring 0 stalled for more than 28008msec
[  136.689895] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  137.189882] radeon 0000:00:10.0: ring 0 stalled for more than 28508msec
[  137.189895] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  137.689884] radeon 0000:00:10.0: ring 0 stalled for more than 29008msec
[  137.689895] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  138.189883] radeon 0000:00:10.0: ring 0 stalled for more than 29508msec
[  138.189894] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  138.689885] radeon 0000:00:10.0: ring 0 stalled for more than 30008msec
[  138.689897] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  139.189887] radeon 0000:00:10.0: ring 0 stalled for more than 30508msec
[  139.189901] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  139.689886] radeon 0000:00:10.0: ring 0 stalled for more than 31008msec
[  139.689898] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  140.189887] radeon 0000:00:10.0: ring 0 stalled for more than 31508msec
[  140.189902] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  140.689883] radeon 0000:00:10.0: ring 0 stalled for more than 32008msec
[  140.689895] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  141.189883] radeon 0000:00:10.0: ring 0 stalled for more than 32508msec
[  141.189894] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  141.689895] radeon 0000:00:10.0: ring 0 stalled for more than 33008msec
[  141.689909] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)
[  142.189897] radeon 0000:00:10.0: ring 0 stalled for more than 33508msec
[  142.189928] radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000000144 last fence id 0x0000000000000168 on ring 0)

with:

# uname -a
Linux debian 4.4.0-0.bpo.1-powerpc #1 Debian 4.4.6-1~bpo8+1 (2016-03-20) ppc GNU/Linux
Comment 2 Alex Deucher 2016-04-19 13:57:05 UTC
Does disabling AGP help?  Load the radeon module with agpmode=-1
Comment 3 Mathieu Malaterre 2016-04-19 13:59:40 UTC
Indeed that solve the symptoms. I discover this was also documented here:

https://wiki.debian.org/PowerPC/FAQ#How_do_I_get_graphics_working.3F

[...]
image=/boot/vmlinux
        label=Linux
        read-only
        initrd=/boot/initrd.img
        append="radeon.agpmode=-1 modprobe.blacklist=ams"
[...]

I am not sure what the 'ams' thingy is doing, but I am using it over here.

The funny thing is that dragging window and moving them around makes the pointer and the window out-of-sync. Still usable though after a while.

If AGP is simply not supported on PowerPC, it would be nice to have a clearer message (or at least a warning).

Thanks
Comment 4 Michel Dänzer 2016-04-20 03:40:05 UTC
(In reply to Mathieu Malaterre from comment #3)
> If AGP is simply not supported on PowerPC, it would be nice to have a
> clearer message (or at least a warning).

It is supported, it's just unstable on many PowerMacs.

A patch disabling AGP by default on PowerMacs or even PPC in general probably wouldn't be rejected. :)
Comment 5 Mathieu Malaterre 2016-05-02 14:31:30 UTC
Created attachment 123411 [details] [review]
default to PCI for PowerPC
Comment 6 Mathieu Malaterre 2016-05-02 14:32:06 UTC
(In reply to Michel Dänzer from comment #4)
> (In reply to Mathieu Malaterre from comment #3)
> > If AGP is simply not supported on PowerPC, it would be nice to have a
> > clearer message (or at least a warning).
> 
> It is supported, it's just unstable on many PowerMacs.
> 
> A patch disabling AGP by default on PowerMacs or even PPC in general
> probably wouldn't be rejected. :)

Something like the patch: defaulttopci_powerpc.patch ? Should I submit it first on mesa-dev ?
Comment 7 Ilia Mirkin 2016-05-02 14:48:31 UTC
FWIW on nouveau we just default agpmode=0 in a #ifdef __powerpc__. Perhaps the same thing can work for radeon.
Comment 8 Mathieu Malaterre 2016-05-02 14:55:27 UTC
(In reply to Ilia Mirkin from comment #7)
> FWIW on nouveau we just default agpmode=0 in a #ifdef __powerpc__. Perhaps
> the same thing can work for radeon.

Well radeon_agpmode is already set to 0 already[*]. My patch force to PCI(-1) when user did not specify any value.

[*]https://github.com/torvalds/linux/blob/master/drivers/gpu/drm/radeon/radeon_drv.c#L173
Comment 9 Ilia Mirkin 2016-05-02 15:00:12 UTC
(In reply to Mathieu Malaterre from comment #8)
> (In reply to Ilia Mirkin from comment #7)
> > FWIW on nouveau we just default agpmode=0 in a #ifdef __powerpc__. Perhaps
> > the same thing can work for radeon.
> 
> Well radeon_agpmode is already set to 0 already[*]. My patch force to
> PCI(-1) when user did not specify any value.
> 
> [*]https://github.com/torvalds/linux/blob/master/drivers/gpu/drm/radeon/
> radeon_drv.c#L173

Oh, the logic is flipped from nouveau... on nouveau, -1 == autodetect and 0 == no agp. So in your case, just set it to -1 instead of 0 for powerpc. i.e.

#ifdef __powerpc__
int radeon_agpmode = -1;
#else
int radeon_agpmode = 0;
#endif

or something similar.
Comment 10 Rui Salvaterra 2016-05-03 07:55:14 UTC
(In reply to Michel Dänzer from comment #4)
> (In reply to Mathieu Malaterre from comment #3)
> > If AGP is simply not supported on PowerPC, it would be nice to have a
> > clearer message (or at least a warning).
> 
> It is supported, it's just unstable on many PowerMacs.
> 
> A patch disabling AGP by default on PowerMacs or even PPC in general
> probably wouldn't be rejected. :)

Hi, Michel


I don't understand. I know about the coherency issues on some UniNorth bridges (DMA writes through the GART going directly to RAM, IIRC), but how did OS X cope with them? Did it also disable AGP transfers? If not, what can be done to fix this bug for real, instead of working around it? (I have a very vague memory that these hangs didn't happen before KMS, but I may be completely wrong.)
Also, on a somewhat related note, there are still issues with the Radeon (R600, not SI) DRM on big endian, as for https://bugs.freedesktop.org/show_bug.cgi?id=95015.


Thanks,

Rui
Comment 11 erhard_f 2016-05-03 08:03:39 UTC
Also been hit by this bug on 2 of my 3 machines: PowerMac 7,3 (A1047) w. Radeon 9600 Pro and PowerBook 5,6 (A1106).

My PowerBook 5,8 (A1138) magically works with AGP! Which is interesting because both the 5,6 and the 5,8 use a Mobility Radeon 9700.
Comment 12 Mathieu Malaterre 2016-05-26 08:54:28 UTC
Patch has been submitted to mesa-dev:

https://lists.freedesktop.org/archives/mesa-dev/2016-May/115453.html

and Reviewed-By Christian König
Comment 13 Mathieu Malaterre 2016-05-26 08:54:49 UTC
Patch has also been submitted to dri-devel:

https://lists.freedesktop.org/archives/dri-devel/2016-May/107479.html
Comment 14 erhard_f 2016-10-10 23:29:02 UTC
It seems the patches to force Radeon cards into PCI-mode (or force it via radeon.agpmode=-1) are no definitive solution. My G4 and G5 Macs hold out longer running X but sooner or later a hard lock is unavoidable. Tested this on a recent software stack: 4.8.1-kernel, xorg-server-1.18.4, xf86-video-ati-7.7.1 and mesa-12.0.3.

See my comment at Bug 94877.
Comment 15 erhard_f 2016-10-22 11:30:26 UTC
Played around a bit with xorg and kernel options on my G5 and worked out that I can drive the Radeon 9650 at AGP x8 if I disable DRI completely via Option "NoAccel" "true" in /etc/xorg.conf.

I had no GPU-lockups since then and xorg is much more responsive despite lacking DRI hardware acceleration (radeon.agpmode=-1 with DRI enabled).
Comment 16 erhard_f 2016-10-22 11:34:00 UTC
linux-4.8.3-gentoo # dmesg | grep -i agp
[    0.000000] Found U3-AGP PCI host bridge.  Firmware bus number: 240->255
[   79.271669] Linux agpgart interface v0.103
[   79.286888] agpgart-uninorth 0000:f0:0b.0: Apple U3H chipset
[   79.300467] agpgart-uninorth 0000:f0:0b.0: configuring for size idx: 64
[   79.308235] agpgart-uninorth 0000:f0:0b.0: AGP aperture is 256M @ 0x0
[   82.883029] agpgart-uninorth 0000:f0:0b.0: putting AGP V3 device into 8x mode
[   82.883040] radeon 0000:f0:10.0: putting AGP V3 device into 8x mode
Comment 17 Michel Dänzer 2016-10-24 02:35:53 UTC
(In reply to erhard_f from comment #15)
> Played around a bit with xorg and kernel options on my G5 and worked out
> that I can drive the Radeon 9650 at AGP x8 if I disable DRI completely via
> Option "NoAccel" "true" in /etc/xorg.conf.
> 
> I had no GPU-lockups since then

Sure, because you're not actually using the problematic AGP functionality. :)


> and xorg is much more responsive despite lacking DRI hardware acceleration
> (radeon.agpmode=-1 with DRI enabled).

FWIW, the value of the radeon.agpmode parameter shouldn't matter if you disable DRI (which BTW means no GPU hardware acceleration can be used at all).
Comment 18 erhard_f 2016-10-24 07:26:54 UTC
> FWIW, the value of the radeon.agpmode parameter shouldn't matter if you disable
> DRI (which BTW means no GPU hardware acceleration can be used at all).

Yep. And I was astonished to see the desktop running faster actually. ;)
Comment 19 Simon 2018-12-02 23:01:49 UTC
*** Bug 95177 has been marked as a duplicate of this bug. ***
Comment 20 Simon 2018-12-02 23:03:56 UTC
Created attachment 142691 [details]
dmesg

I think I have the same error with my Radeon HD 4670 on x64_64 arch with linux, I attached my dmesg with the error in the end.
Comment 21 Simon 2018-12-02 23:48:52 UTC
nothing seems to help, I tried agpmode=-1, disabling glamor that didnt help and Option "NoAccel" "true" wont let me login on the grafical user interface at all.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.