Re: [bisected] nouveau: "Failed to idle channel x" after resume

From: Sven Joachim
Date: Mon Aug 13 2012 - 12:23:00 EST


On 2012-08-08 08:18 +0200, Sven Joachim wrote:

> On 2012-08-08 08:08 +0200, Ben Skeggs wrote:
>
>> On Wed, Aug 08, 2012 at 08:00:21AM +0200, Sven Joachim wrote:
>>> Not for me on my GeForce 8500 GT, and I still cannot suspend more than
>>> once, subsequent attempts fail:
>>>
>>> ,----
>>> | Aug 8 07:49:16 turtle kernel: [ 91.697068] nouveau W[
>>> | PGRAPH][0000:01:00.0][0x0200502d][ffff880037be1d40] parent failed
>>> | suspend, -16
>>> | Aug 8 07:49:16 turtle kernel: [ 91.697078] nouveau [ DRM][0000:01:00.0] resuming display...
>>> `----
>> Interesting. Were there any messages prior to that?
>
> Nothing interesting:
>
> ,----
> | Aug 8 07:49:16 turtle kernel: [ 89.655362] nouveau [ DRM][0000:01:00.0] suspending fbcon...
> | Aug 8 07:49:16 turtle kernel: [ 89.655367] nouveau [ DRM][0000:01:00.0] suspending display...
> | Aug 8 07:49:16 turtle kernel: [ 89.696888] nouveau [ DRM][0000:01:00.0] unpinning framebuffer(s)...
> | Aug 8 07:49:16 turtle kernel: [ 89.696909] nouveau [ DRM][0000:01:00.0] evicting buffers...
> | Aug 8 07:49:16 turtle kernel: [ 89.696913] nouveau [ DRM][0000:01:00.0] suspending client object trees...
> `----
>
>> I guess the the fifo
>> code detected a timeout when trying to save the graphics context, I have
>> I have other patches in my tree (I'll push them soon, tied up with other
>> work atm) that might help here.
>
> Thanks, I'll try them when they are available.

With current nouveau master ("drm/nouveau: fix find/replace bug in
license header") suspending works again, thanks! However, it is a bit
slow, taking between two and five seconds:

,----
| Aug 13 18:17:56 turtle kernel: [ 678.524814] PM: Syncing filesystems ... done.
| Aug 13 18:18:09 turtle kernel: [ 678.639202] Freezing user space processes ... (elapsed 0.01 seconds) done.
| Aug 13 18:18:09 turtle kernel: [ 678.649954] Freezing remaining freezable tasks ... (elapsed 0.01 seconds) done.
| Aug 13 18:18:09 turtle kernel: [ 678.663298] Suspending console(s) (use no_console_suspend to debug)
| Aug 13 18:18:09 turtle kernel: [ 678.680884] sd 0:0:0:0: [sda] Synchronizing SCSI cache
| Aug 13 18:18:09 turtle kernel: [ 678.681000] sd 0:0:0:0: [sda] Stopping disk
| Aug 13 18:18:09 turtle kernel: [ 678.695141] parport_pc 00:07: disabled
| Aug 13 18:18:09 turtle kernel: [ 678.695204] serial 00:06: disabled
| Aug 13 18:18:09 turtle kernel: [ 678.695209] serial 00:06: wake-up capability disabled by ACPI
| Aug 13 18:18:09 turtle kernel: [ 678.695235] nouveau [ DRM][0000:01:00.0] suspending fbcon...
| Aug 13 18:18:09 turtle kernel: [ 678.695239] nouveau [ DRM][0000:01:00.0] suspending display...
| Aug 13 18:18:09 turtle kernel: [ 678.742111] nouveau [ DRM][0000:01:00.0] unpinning framebuffer(s)...
| Aug 13 18:18:09 turtle kernel: [ 678.742189] nouveau [ DRM][0000:01:00.0] evicting buffers...
| Aug 13 18:18:09 turtle kernel: [ 682.357319] nouveau [ DRM][0000:01:00.0] suspending client object trees...
| Aug 13 18:18:09 turtle kernel: [ 683.526646] PM: suspend of devices complete after 4863.181 msecs
`----

With the 3.4.8 kernel, suspending takes little more than one second.

Cheers,
Sven
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/