All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jesse Barnes <jbarnes@virtuousgeek.org>
To: Chris Wilson <chris@chris-wilson.co.uk>
Cc: intel-gfx@lists.freedesktop.org, Daniel Vetter <daniel.vetter@ffwll.ch>
Subject: Re: [PATCH 3/4] drm/i915: enable VT switchless resume v3
Date: Tue, 20 May 2014 12:53:29 -0700	[thread overview]
Message-ID: <20140520125329.23e9db9a@jbarnes-desktop> (raw)
In-Reply-To: <20140516224223.GB11656@nuc-i3427.alporthouse.com>

On Fri, 16 May 2014 23:42:23 +0100
Chris Wilson <chris@chris-wilson.co.uk> wrote:

> On Fri, May 16, 2014 at 11:38:07PM +0100, Chris Wilson wrote:
> > On Fri, May 16, 2014 at 03:20:47PM -0700, Jesse Barnes wrote:
> > > On Mon, 21 Apr 2014 18:37:31 +0200
> > > Knut Petersen <Knut_Petersen@t-online.de> wrote:
> > > > > +	/* This driver doesn't need a VT switch to restore the mode on resume */
> > > > > +	info->skip_vt_switch = true;
> > > > > +
> > > > >   	drm_fb_helper_fill_fix(info, fb->pitches[0], fb->depth);
> > > > >   	drm_fb_helper_fill_var(info, &ifbdev->helper, sizes->fb_width, sizes->fb_height);
> > > 
> > > Is it sufficient to just revert this part?  Or are the other bits
> > > needed too?
> > > 
> > > Sorry for the delay on this, I've been traveling a lot the past month
> > > and buried in other stuff so out of touch with much of my email.
> > 
> > The key step here is that X is restarted after resume. The slow down was
> > due to X not finding any connected outputs and so disabling them all,
> > setting up a dummy 1024x768 fb which really confused KDE. (KDE queries
> > the config causing a forced reprobe of all outputs, setups the display
> > for the native 1280x1024, but screws up KDE's own bookkeeping.)
> > 
> > The impact has been fixed by handling the connector->status more
> > robusting during initial output probing in X. What remains is the
> > question whether connector->status can be set appropriately upon resume?
> > It requires a detection cycle to be sure that the outputs are still
> > there, which is arguably better deferred to userspace. To be consistent
> > the BIOS take over code should mark connector->status as unknown for the
> > CRTCs it takes over without doing a detection cycle (where we just
> > presume that the CRTC/output being enabled means something is on the
> > other end of the pipe and is still valid).
> 
> Hmm. Why didn't fbcon respond to the hotplug event on resume and perform
> a detection cycle before Knut was able to type startx on the console?
> That I think is the bug.

Well, fbcon resume is delayed, but we do perform an fb re-probe via
intel_resume_hotplug() that should have done this.  Not sure why that's
sufficient... but I agree userspace should probably re-probe on
resume.  We're supposed to generate a uevent on resume, but the fb
layer may suppress that if it detects that no change has occurred.

Maybe X is racing with our resume_hotplug somehow?  It doesn't look
like that should happen...

-- 
Jesse Barnes, Intel Open Source Technology Center

  reply	other threads:[~2014-05-20 19:53 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-26 16:25 [PATCH 1/4] drm/i915: add sprite restore function v3 Jesse Barnes
2013-03-26 16:25 ` [PATCH 2/4] drm/i915: restore cursor and sprite state when forcing a config restore Jesse Barnes
2013-03-26 16:40   ` Rodrigo Vivi
2013-03-26 16:52   ` Daniel Vetter
2013-03-26 17:07   ` [PATCH 1/2] drm/i915: enable VT switchless resume v3 Jesse Barnes
2013-03-26 17:07     ` [PATCH 2/2] drm/i915: emit a hotplug event on resume Jesse Barnes
2013-03-26 20:25   ` drm/i915: restore cursor and sprite state when forcing a config restore v2 Jesse Barnes
2013-03-26 20:46     ` Daniel Vetter
2013-03-26 20:57       ` Jesse Barnes
2013-03-26 16:25 ` [PATCH 3/4] drm/i915: enable VT switchless resume v3 Jesse Barnes
2013-03-26 16:42   ` Rodrigo Vivi
2013-04-03  9:15   ` Daniel Vetter
2013-04-03 10:54     ` Chris Wilson
2013-04-03 15:13       ` Jesse Barnes
2014-04-21 16:37   ` Knut Petersen
2014-05-16 22:20     ` Jesse Barnes
2014-05-16 22:28       ` Daniel Vetter
2014-05-16 22:38       ` Chris Wilson
2014-05-16 22:42         ` Chris Wilson
2014-05-20 19:53           ` Jesse Barnes [this message]
2014-05-20 19:58             ` Jesse Barnes
2014-05-20 20:15               ` Daniel Vetter
2014-05-20 21:10                 ` Jesse Barnes
2014-05-20 21:18                   ` Jesse Barnes
2014-05-20 21:27                     ` Jesse Barnes
2013-03-26 16:25 ` [PATCH 4/4] drm/i915: emit a hotplug event on resume Jesse Barnes
2013-03-26 16:43   ` Rodrigo Vivi
2013-03-26 16:38 ` [PATCH 1/4] drm/i915: add sprite restore function v3 Rodrigo Vivi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140520125329.23e9db9a@jbarnes-desktop \
    --to=jbarnes@virtuousgeek.org \
    --cc=chris@chris-wilson.co.uk \
    --cc=daniel.vetter@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.