Re: [PATCH] PM / i915: Skip kernel VT switch during suspend/resumeif KMS is used

From: Pavel Machek
Date: Tue Jan 26 2010 - 14:17:24 EST


On Tue 2010-01-26 19:47:45, Rafael J. Wysocki wrote:
> On Tuesday 26 January 2010, Pavel Machek wrote:
> > On Mon 2010-01-25 22:54:37, Rafael J. Wysocki wrote:
> > > On Monday 25 January 2010, Alan Cox wrote:
> > > > > > But in that case we should be able to disable the VT switch disable
> > > > > > path; we just have to check each driver as it's loaded.
> > > > >
> > > > > OK, what the right sequence of checks would be in that case and where to place
> > > > > them?
> > > >
> > > > Why are we even driving a vt switch direct from the suspend/resume
> > > > logic ? The problem starts there. If it was being handled off the device
> > > > suspend/resume method then there wouldn't be a mess to start with ?
> > > >
> > > > Start at the beginning
> > > >
> > > > - Why do we switch to arbitarily chosen 'last vt'
> > > > - Why isn't vt related suspend/resume handled by the device
> > >
> > > Well, that was added long ago as a workaround for some problems people
> > > reported (presumably). I've never looked at that before, so I can't really
> > > tell why someone did it this particular way.
> >
> > As X drives hardware, it is/was neccessary to get control out of X and
> > console switch was convenient.
> >
> > Note that it needs to happen with userland still active -- before
> > freezer.
>
> Well, that's a bit cumbersome.

(which was one of reasons it got special casing).

> > And yes, it should be per-driver these days.
>
> That would have to be done using suspend notifiers and should depend on what
> driver actually controls the screen at the moment. And I guess the only case
> in which we actually _need_ to do the kernel VT switch is when the hardware
> is controlled by X and without KMS.

We need vt switch when display is controlled by userland app directly
accessing hw. It may or may not be X (svgalib anyone?,
gtk-on-framebuffer? qtopia?).

Ideally, userspace should explicitely tell us. KD_KERNEL_GRAPHICS
console mode?

Plus the switch is needed for any graphics app using fbcon -- I do not
think we actually save the framebuffer over suspend. (This one should
probably be fixed).
Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
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/