Long radeon stalls on recent kernels

Andy Lutomirski luto at amacapital.net
Tue Nov 18 16:50:52 PST 2014


On Tue, Nov 18, 2014 at 4:34 PM, Andy Lutomirski <luto at amacapital.net> wrote:
> On Tue, Nov 18, 2014 at 4:21 PM, Andy Lutomirski <luto at amacapital.net> wrote:
>> On Mon, Nov 17, 2014 at 1:51 AM, Michel Dänzer <michel at daenzer.net> wrote:
>>> On 15.11.2014 07:21, Andy Lutomirski wrote:
>>>>
>>>> I have a Caicos card, like this:
>>>>
>>>> [    3.077260] [drm] radeon kernel modesetting enabled.
>>>> [    3.077338] checking generic (e0000000 600000) vs hw (e0000000
>>>> 10000000)
>>>> [    3.077339] fb: switching to radeondrmfb from EFI VGA
>>>> [    3.077377] Console: switching to colour dummy device 80x25
>>>> [    3.078881] [drm] initializing kernel modesetting (CAICOS
>>>> 0x1002:0x6779 0x174B:0xE164).
>>>> [    3.078903] [drm] register mmio base: 0xF4A20000
>>>> [    3.078904] [drm] register mmio size: 131072
>>>> [    3.078982] ATOM BIOS: C26401
>>>> [    3.079572] radeon 0000:09:00.0: VRAM: 1024M 0x0000000000000000 -
>>>> 0x000000003FFFFFFF (1024M used)
>>>> [    3.079574] radeon 0000:09:00.0: GTT: 1024M 0x0000000040000000 -
>>>> 0x000000007FFFFFFF
>>>> [    3.079576] [drm] Detected VRAM RAM=1024M, BAR=256M
>>>> [    3.079577] [drm] RAM width 64bits DDR
>>>> [    3.079755] [TTM] Zone  kernel: Available graphics memory: 8186568 kiB
>>>> [    3.079757] [TTM] Zone   dma32: Available graphics memory: 2097152 kiB
>>>> [    3.079757] [TTM] Initializing pool allocator
>>>> [    3.079773] [TTM] Initializing DMA pool allocator
>>>> [    3.080011] [drm] radeon: 1024M of VRAM memory ready
>>>> [    3.080012] [drm] radeon: 1024M of GTT memory ready.
>>>> [    3.080049] [drm] Loading CAICOS Microcode
>>>> [    3.080330] [drm] Internal thermal controller without fan control
>>>> [    3.081425] [drm] radeon: power management initialized
>>>> [    3.081551] [drm] GART: num cpu pages 262144, num gpu pages 262144
>>>> [    3.082589] [drm] enabling PCIE gen 2 link speeds, disable with
>>>> radeon.pcie_gen2=0
>>>> [    3.085030] [drm] PCIE GART of 1024M enabled (table at
>>>> 0x0000000000274000).
>>>> [    3.085221] radeon 0000:09:00.0: WB enabled
>>>> [    3.085224] radeon 0000:09:00.0: fence driver on ring 0 use gpu
>>>> addr 0x0000000040000c00 and cpu addr 0xffff88043d914c00
>>>> [    3.085225] radeon 0000:09:00.0: fence driver on ring 3 use gpu
>>>> addr 0x0000000040000c0c and cpu addr 0xffff88043d914c0c
>>>> [    3.097438] radeon 0000:09:00.0: fence driver on ring 5 use gpu
>>>> addr 0x0000000000072118 and cpu addr 0xffffc900128b2118
>>>> [    3.097441] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
>>>> [    3.097442] [drm] Driver supports precise vblank timestamp query.
>>>> [    3.097514] radeon 0000:09:00.0: irq 56 for MSI/MSI-X
>>>> [    3.097544] radeon 0000:09:00.0: radeon: using MSI.
>>>> [    3.097614] [drm] radeon: irq initialized.
>>>>
>>>> On recent kernels (3.16 through 3.18-rc4, perhaps), doing anything
>>>> graphics intensive seems to cause my system to become unusable for
>>>> tens of seconds.  Pointing Firefox at Google Maps is a big offender --
>>>> it can take several minutes for me to move my mouse far enough to
>>>> close the tab and get my computer back.
>>>>
>>>> On bootup, I get this warning:
>>>> [drm:btc_dpm_set_power_state] *ERROR*
>>>> rv770_restrict_performance_levels_before_switch failed
>>>>
>>>> Setting radeon.dpm=0 seems to work around this problem at the cost of
>>>> giving my rather slow graphics.
>>>>
>>>> Are there known issues here?
>>>
>>>
>>> Can you bisect the kernel, or at least isolate which kernel version first
>>> introduced the problem?
>>
>> With whatever userspace I'm running, I'm seeing it 3.13, 3.14, 3.15,
>> 3.16, and 3.18-rc4+.  I haven't tried other versions.
>>
>> With radeon.dpm=0, I can still trigger short stalls (around one
>> second), but I seem unable to trigger long stalls easily.  (I say
>> easily because, just as I was typing this email, my system stalled for
>> about a minute.)
>
> I could be wrong here, but I think that radeon.dpm=0,
> power_profile=default is okay, but radeon.dpm=0, power_profile=high is
> bad.

I'm wrong again.  power_profile=default is also bad.

Grr.

--Andy


More information about the dri-devel mailing list