[3.14 regression] kernel oops with dpm enabled on TURKS

Giancarlo Formicuccia giancarlo.formicuccia at gmail.com
Thu Apr 17 00:14:43 PDT 2014


mmm further tests shown the oops was casual, maybe related to the real 
problem, I can't say. I'm unable to reproduce it.

But the gpu stall is 100% reproducible with dpm enabled. Attached is the log 
that usually shows up. Other than that, I also observe the lspci "Unknown 
header type 7f" problem similar to ko bug #73041
https://bugzilla.kernel.org/show_bug.cgi?id=73041

A few notes:

- I can confirm that the problem was first introduced by 
6c7bccea390853bdec5b76fe31fc50f3b36f75d5. Until 
e14cd2bbcb98541e199b7223f38d61527dfe45c9 the gpu works.

- The "Unknown header type 7f" thing is not new to me. I experienced this 
problem a year ago, trying the Catalyst driver. I spent some time filing a bug 
report for amd, which remained unanswered:
http://ati.cchtml.com/show_bug.cgi?id=743

Alex, do you have any clue? Maybe your commit changed something into the 
initialization order which is confusing this gpu?

Thanks,

Giancarlo


In data lunedì, aprile 14, 2014 12:57:55, Giancarlo Formicuccia ha scritto:
> Greetings,
> 
> I'm facing a dpm regression in 3.14 on my radeon TURKS (pci id 1002:6840).
> Upon loading the radeon module with dpm enabled, the screen goes black and
> the computer locks up.
> 
> The problem first appeared at 6c7bccea390853bdec5b76fe31fc50f3b36f75d5
> drm/radeon/pm: move pm handling into the asic specific code
> 
> and is still present in 3.15-rc1.
> 
> Loading the radeon module with dpm disabled works.
> 
> I captured the relevant kernel messages using a netconsole (attached); there
> is an oops in radeon_ring_write presumibly during the test of ring #5.
> 
> Thanks,
> 
> Giancarlo
-------------- next part --------------
[  107.950509] [drm] radeon kernel modesetting enabled.
[  107.974044] checking generic (b0000000 300000) vs hw (b0000000 10000000)
[  107.996501] fb: switching to radeondrmfb from VESA VGA
[  108.017616] Console: switching to colour dummy device 80x25
[  108.018358] [drm] initializing kernel modesetting (TURKS 0x1002:0x6840 0x1179:0xFB81).
[  108.018401] [drm] register mmio base: 0xC0000000
[  108.018406] [drm] register mmio size: 131072
[  108.018523] ATOM BIOS: Toshiba/Quanta
[  108.018615] radeon 0000:01:00.0: VRAM: 2048M 0x0000000000000000 - 0x000000007FFFFFFF (2048M used)
[  108.018622] radeon 0000:01:00.0: GTT: 1024M 0x0000000080000000 - 0x00000000BFFFFFFF
[  108.018628] [drm] Detected VRAM RAM=2048M, BAR=256M
[  108.018632] [drm] RAM width 128bits DDR
[  108.018774] [TTM] Zone  kernel: Available graphics memory: 4075258 kiB
[  108.018780] [TTM] Zone   dma32: Available graphics memory: 2097152 kiB
[  108.018785] [TTM] Initializing pool allocator
[  108.018794] [TTM] Initializing DMA pool allocator
[  108.018822] [drm] radeon: 2048M of VRAM memory ready
[  108.018827] [drm] radeon: 1024M of GTT memory ready.
[  108.018848] [drm] Loading TURKS Microcode
[  108.090679] [drm] Internal thermal controller with fan control
[  108.090825] == power state 0 ==
[  108.090834]  ui class: none
[  108.090841]  internal class: boot 
[  108.090849]  caps: 
[  108.090855]  uvd    vclk: 0 dclk: 0
[  108.090860]          power level 0    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  108.090866]          power level 1    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  108.090873]          power level 2    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  108.090878]  status: c r b 
[  108.090890] == power state 1 ==
[  108.090894]  ui class: performance
[  108.090900]  internal class: none
[  108.090908]  caps: 
[  108.090913]  uvd    vclk: 0 dclk: 0
[  108.090918]          power level 0    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  108.090924]          power level 1    sclk: 50000 mclk: 90000 vddc: 1000 vddci: 0
[  108.090929]          power level 2    sclk: 60000 mclk: 90000 vddc: 1000 vddci: 0
[  108.090934]  status: 
[  108.090940] == power state 2 ==
[  108.090944]  ui class: none
[  108.090950]  internal class: uvd 
[  108.090957]  caps: video 
[  108.090966]  uvd    vclk: 70000 dclk: 56000
[  108.090971]          power level 0    sclk: 50000 mclk: 90000 vddc: 1000 vddci: 0
[  108.090977]          power level 1    sclk: 50000 mclk: 90000 vddc: 1000 vddci: 0
[  108.090982]          power level 2    sclk: 60000 mclk: 90000 vddc: 1000 vddci: 0
[  108.090987]  status: 
[  108.090992] == power state 3 ==
[  108.090996]  ui class: battery
[  108.091002]  internal class: none
[  108.091010]  caps: 
[  108.091015]  uvd    vclk: 0 dclk: 0
[  108.091020]          power level 0    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  108.091025]          power level 1    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  108.091031]          power level 2    sclk: 40000 mclk: 40000 vddc: 900 vddci: 0
[  108.091036]  status: 
[  108.091041] == power state 4 ==
[  108.091045]  ui class: battery
[  108.091050]  internal class: uvd_hd 
[  108.091057]  caps: video 
[  108.091065]  uvd    vclk: 40000 dclk: 30000
[  108.091070]          power level 0    sclk: 40000 mclk: 40000 vddc: 900 vddci: 0
[  108.091076]          power level 1    sclk: 40000 mclk: 40000 vddc: 900 vddci: 0
[  108.091081]          power level 2    sclk: 40000 mclk: 40000 vddc: 900 vddci: 0
[  108.091086]  status: 
[  108.091091] == power state 5 ==
[  108.091095]  ui class: none
[  108.091100]  internal class: ulv 
[  108.091107]  caps: 
[  108.091113]  uvd    vclk: 0 dclk: 0
[  108.091117]          power level 0    sclk: 30000 mclk: 15000 vddc: 875 vddci: 0
[  108.091123]          power level 1    sclk: 30000 mclk: 15000 vddc: 875 vddci: 0
[  108.091129]          power level 2    sclk: 30000 mclk: 15000 vddc: 875 vddci: 0
[  108.091134]  status: 
[  108.095303] [drm] radeon: dpm initialized
[  108.108181] [drm] GART: num cpu pages 262144, num gpu pages 262144
[  108.109605] [drm] enabling PCIE gen 2 link speeds, disable with radeon.pcie_gen2=0
[  108.142078] [drm] PCIE GART of 1024M enabled (table at 0x0000000000273000).
[  108.142211] radeon 0000:01:00.0: WB enabled
[  108.142220] radeon 0000:01:00.0: fence driver on ring 0 use gpu addr 0x0000000080000c00 and cpu addr 0xffff88023f14ac00
[  108.142229] radeon 0000:01:00.0: fence driver on ring 3 use gpu addr 0x0000000080000c0c and cpu addr 0xffff88023f14ac0c
[  108.142648] radeon 0000:01:00.0: fence driver on ring 5 use gpu addr 0x0000000000072118 and cpu addr 0xffffc90011f32118
[  108.142657] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[  108.142662] [drm] Driver supports precise vblank timestamp query.
[  108.142692] radeon 0000:01:00.0: irq 44 for MSI/MSI-X
[  108.142712] radeon 0000:01:00.0: radeon: using MSI.
[  108.142747] [drm] radeon: irq initialized.
[  108.271894] [drm:r600_ring_test] *ERROR* radeon: ring 0 test failed (scratch(0x8504)=0xFFFFFFFF)
[  108.271900] radeon 0000:01:00.0: disabling GPU acceleration
[  113.276575] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 5secs aborting
[  113.276583] [drm:atom_execute_table_locked] *ERROR* atombios stuck executing E582 (len 3163, WS 4, PS 4) @ 0xEC4D
[  113.276593] [drm] radeon atom DIG backlight initialized
[  113.276597] [drm] Radeon Display Connectors
[  113.276599] [drm] Connector 0:
[  113.276602] [drm]   LVDS-1
[  113.276605] [drm]   DDC: 0x6440 0x6440 0x6444 0x6444 0x6448 0x6448 0x644c 0x644c
[  113.276608] [drm]   Encoders:
[  113.276610] [drm]     LCD1: INTERNAL_UNIPHY
[  113.276613] [drm] Connector 1:
[  113.276615] [drm]   HDMI-A-1
[  113.276617] [drm]   HPD1
[  113.276620] [drm]   DDC: 0x6430 0x6430 0x6434 0x6434 0x6438 0x6438 0x643c 0x643c
[  113.276623] [drm]   Encoders:
[  113.276625] [drm]     DFP1: INTERNAL_UNIPHY1
[  113.276628] [drm] Connector 2:
[  113.276630] [drm]   VGA-1
[  113.276633] [drm]   DDC: 0x6450 0x6450 0x6454 0x6454 0x6458 0x6458 0x645c 0x645c
[  113.276637] [drm]   Encoders:
[  113.276644] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
[  118.282704] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 5secs aborting
[  118.282713] [drm:atom_execute_table_locked] *ERROR* atombios stuck executing C8D2 (len 1136, WS 0, PS 0) @ 0xC8FC
[  123.302175] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 5secs aborting
[  123.302189] [drm:atom_execute_table_locked] *ERROR* atombios stuck executing D228 (len 62, WS 0, PS 0) @ 0xD244
[  123.302197] switching from power state:
[  123.302200]  ui class: none
[  123.302204]  internal class: boot 
[  123.302208]  caps: 
[  123.302211]  uvd    vclk: 0 dclk: 0
[  123.302214]          power level 0    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  123.302218]          power level 1    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  123.302221]          power level 2    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  123.302223]  status: c b 
[  123.302228] switching to power state:
[  123.302231]  ui class: performance
[  123.302234]  internal class: none
[  123.302238]  caps: 
[  123.302240]  uvd    vclk: 0 dclk: 0
[  123.302244]          power level 0    sclk: 30000 mclk: 15000 vddc: 900 vddci: 0
[  123.302251]          power level 1    sclk: 50000 mclk: 90000 vddc: 1000 vddci: 0
[  123.302257]          power level 2    sclk: 60000 mclk: 90000 vddc: 1000 vddci: 0
[  123.302260]  status: r 
[  123.302282] [drm:btc_dpm_set_power_state] *ERROR* rv770_restrict_performance_levels_before_switch failed
[  128.308303] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 5secs aborting
[  128.308310] [drm:atom_execute_table_locked] *ERROR* atombios stuck executing D228 (len 62, WS 0, PS 0) @ 0xD244
[  133.314432] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 5secs aborting
[  133.314439] [drm:atom_execute_table_locked] *ERROR* atombios stuck executing D228 (len 62, WS 0, PS 0) @ 0xD244
[  138.320561] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 5secs aborting
[  138.320568] [drm:atom_execute_table_locked] *ERROR* atombios stuck executing D228 (len 62, WS 0, PS 0) @ 0xD244
[  143.326690] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 5secs aborting
[  143.326697] [drm:atom_execute_table_locked] *ERROR* atombios stuck executing D228 (len 62, WS 0, PS 0) @ 0xD244



More information about the dri-devel mailing list