On Fri, 2007-09-03 at 21:13 +0000, Pavel Machek wrote: > Hi! > > > > > So... if current console is graphical, we leave X accessing the > > > > console... That's bad, because video state is not going to be > > > > restored...? > > > > > > A graphical console is not necessarily X. Is there any requirement for > > > there to be a single VT that isn't in text mode? The vt switching is > > > a hack, we shouldn't make life difficult for people who have their own > > > userspace code that's entirely capable of restoring video state on its > > > own. > > > > The problem actually comes about when using Qtopia Phone Edition (QPE) > > on a PXA270. QPE puts the console into VT_AUTO+KD_GRAPHICS mode and > > writes directly to the framebuffer from then on. In this mode the > > kernel correctly disallows a console change, as QPE is not getting > > notification of a console change and thus does not know when to repaint > > the screen. > > Fix qpe to use vt_process, instead?
The real issue seems to be the assumption in pm_prepare_console() that set_console() will succeed. set_console() may fail (resulting in vt_waitactive waiting for a console switch that can never happen or a break) for two currently unchecked reasons: - console is in VT_AUTO+KD_GRAPHICS mode - vt_dont_switch is set > ...how does qpe know when to repaint the screen, anyway? QPE doesn't need to repaint the screen after wake-up - the framebuffer memory is retained so the PXA270 lcd controller simply displays what was last on the screen when it is re-enabled. -- Andrew - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/