From: "Vivi, Rodrigo" <rodrigo.vivi@intel.com>
To: "przanoni@gmail.com" <przanoni@gmail.com>
Cc: "daniel.vetter@ffwll.ch" <daniel.vetter@ffwll.ch>,
"intel-gfx@lists.freedesktop.org"
<intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH] drm/i915: fbdev_set_par reliably invalidating frontbuffer
Date: Thu, 9 Jul 2015 16:47:21 +0000 [thread overview]
Message-ID: <1436460782.2893.1.camel@intel.com> (raw)
In-Reply-To: <CA+gsUGQJ5tkDfA-J7iY5v3mSyFcVmkhOccTmnaCmcZtbSAGrBA@mail.gmail.com>
On Thu, 2015-07-09 at 10:10 -0300, Paulo Zanoni wrote:
> 2015-07-08 20:24 GMT-03:00 Rodrigo Vivi <rodrigo.vivi@intel.com>:
> > fbdev_set_par is called when fbcon is taking over control.
> > In the past frontbuffer was being invalidated on
> > set_to_gtt_domain, but it moved to set_domain fixing that case,
> > but left this behind.
> >
> > Commit that changed this fixing set_domain case was:
> >
> > commit 031b698a77a70a6c394568034437b5486a44e868
> > Author: Daniel Vetter <daniel.vetter@ffwll.ch>
> > Date: Fri Jun 26 19:35:16 2015 +0200
> >
> > drm/i915: Unconditionally do fb tracking invalidate in set_domain
> >
> > Since we are also invalidating in other fbdev cases this one
> > was masked here. At least until now that I found this corner
> > case: On boot with plymouth doing a splash screen
> > when returning to the console frontbuffer wans't being invalidated
> > causing missed screen updates with PSR enabled.
> >
> > So this patch fixes this issue.
> >
> > v2: Make invalidate directly and unconditionally and
> > fix commit message indicating the set_domain fix
> > as pointed out by Daniel.
> >
> > Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
> > Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > ---
> > drivers/gpu/drm/i915/intel_fbdev.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c
> > index 2a1724e..44c9ccc 100644
> > --- a/drivers/gpu/drm/i915/intel_fbdev.c
> > +++ b/drivers/gpu/drm/i915/intel_fbdev.c
> > @@ -63,8 +63,8 @@ static int intel_fbdev_set_par(struct fb_info *info)
> > * now until we solve this for real.
> > */
> > mutex_lock(&fb_helper->dev->struct_mutex);
> > - ret = i915_gem_object_set_to_gtt_domain(ifbdev->fb->obj,
> > - true);
> > + if (ifbdev->fb->obj)
>
> I'm confused. Why are we doing this check now? If this is actually
> needed, then the current set_to_gtt_domain() call will blow up too. So
> this would be 2 different patches: one preventing the explosion, the
> other doing obj_invalidate. Unless we don't need the obj check.
I'm confused as well. I could swear I was just putting back an "if" that
was already here. No idea where this came from and don't see a need for
it... v++ on the way...
>
> > + intel_fb_obj_invalidate(ifbdev->fb->obj, ORIGIN_GTT);
> > mutex_unlock(&fb_helper->dev->struct_mutex);
> > }
> >
> > --
> > 2.1.0
> >
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
>
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-07-09 16:47 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-07 23:28 [PATCH 1/7] drm/i915: Add origin to frontbuffer tracking flush Rodrigo Vivi
2015-07-07 23:28 ` [PATCH 2/7] drm/i915: PSR: Flush means invalidate + flush Rodrigo Vivi
2015-07-08 13:58 ` Paulo Zanoni
2015-07-08 23:21 ` [PATCH] " Rodrigo Vivi
2015-07-09 12:58 ` Paulo Zanoni
2015-07-07 23:28 ` [PATCH 3/7] drm/i915: PSR: dirty fb operation flushsing frontbuffer Rodrigo Vivi
2015-07-08 9:47 ` Daniel Vetter
2015-07-08 14:15 ` Paulo Zanoni
2015-07-08 23:22 ` [PATCH] drm/i915: " Rodrigo Vivi
2015-07-09 13:04 ` Paulo Zanoni
2015-07-09 15:25 ` Daniel Vetter
2015-07-07 23:28 ` [PATCH 4/7] drm/i915: PSR: Remove Low Power HW tracking mask Rodrigo Vivi
2015-07-08 14:26 ` Paulo Zanoni
2015-07-07 23:28 ` [PATCH 5/7] drm/i915: PSR: Increase idle_frames Rodrigo Vivi
2015-07-08 14:32 ` Paulo Zanoni
2015-07-07 23:28 ` [PATCH 6/7] drm/i915: fbdev_set_par reliably invalidating frontbuffer Rodrigo Vivi
2015-07-08 9:44 ` Daniel Vetter
2015-07-08 23:24 ` [PATCH] " Rodrigo Vivi
2015-07-09 13:10 ` Paulo Zanoni
2015-07-09 16:47 ` Vivi, Rodrigo [this message]
2015-07-09 16:56 ` Rodrigo Vivi
2015-07-09 18:46 ` Paulo Zanoni
2015-07-09 19:56 ` Daniel Vetter
2015-07-09 20:40 ` Vivi, Rodrigo
2015-07-07 23:28 ` [PATCH 7/7] drm/i915: fbdev restore mode needs to invalidate frontbuffer Rodrigo Vivi
2015-07-08 15:04 ` shuang.he
2015-07-08 18:05 ` Paulo Zanoni
2015-07-08 23:25 ` [PATCH] " Rodrigo Vivi
2015-07-09 13:19 ` shuang.he
2015-07-09 18:54 ` Paulo Zanoni
2015-07-09 19:00 ` Vivi, Rodrigo
2015-07-09 19:51 ` Daniel Vetter
2015-07-09 15:26 ` [PATCH 7/7] " Daniel Vetter
2015-07-09 17:08 ` [PATCH igt] tests: add kms_fbcon_fbt Paulo Zanoni
2015-07-08 13:41 ` [PATCH 1/7] drm/i915: Add origin to frontbuffer tracking flush Paulo Zanoni
2015-07-08 15:29 ` Daniel Vetter
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=1436460782.2893.1.camel@intel.com \
--to=rodrigo.vivi@intel.com \
--cc=daniel.vetter@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=przanoni@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox