Messages in this thread | ![/](/images/icornerl.gif) | | Date | Fri, 7 May 2010 23:18:01 +0200 | From | Bruno Prémont <> | Subject | Re: s2ram slow resume - radeon versus no_console_suspend? |
| |
On Sun, 02 May 2010 Bruno Prémont <bonbons@linux-vserver.org> wrote: > On a IEI Kino 690S1 I'm having a hard time to get s2ram running. > > When the system is able to suspend it takes an eternity (more than 3 > minutes to wake-up, the radeon apparently being responsible for quite > a big share of that slowness. > > > During resume early it looks like every PCI access needs about a second, > and there are a few cases where during lots of seconds nothing seems to > happen and the first event following is related to radeon.
This slowness only happens when I run the kernel with no_console_suspend parameter (e.g. to debug some suspend/resume issue). This probably means that in this case radeon's PCI config recorded during suspend and restored during early resume is all but appropriate...
Currently drm/radeon does not suspend when no_console_suspend is provided, even so when the kernel logging does not happen on tty0 & co.
e.g. I would expect that a kernel run with no_console_suspend console=ttyS0 would just skip suspending serial port ttyS0 and not also skip suspending KMS framebuffer as it currently does.
In most framebuffer devices I see usage of acquire_console_sem() and release_console_sem() but except for kernel/printk.c and drivers/serial/ code nothing is considering console_suspend_enabled.
Currently I'm not sure what code path prevents suspend of KMS (at least for radeon) when no_console_suspend has been passed, this code path should probably have a conditional just as serial to take no_console_suspend only if it's running kernel's console itself.
Thanks, Bruno -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| ![\](/images/icornerr.gif) |