From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher James Halse Rogers Subject: Re: [PATCH 1/3] drm: Send pending vblank events before disabling vblank. Date: Wed, 27 Apr 2011 19:17:42 +1000 Message-ID: <1303895862.15750.18.camel@Ed> References: <1303884659-739-1-git-send-email-christopher.halse.rogers@canonical.com> <1303893156.5633.126.camel@thor.local> <1303894719.15750.13.camel@Ed> <1303895309.5633.137.camel@thor.local> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0683942209==" Return-path: Received: from adelie.canonical.com (adelie.canonical.com [91.189.90.139]) by gabe.freedesktop.org (Postfix) with ESMTP id 87E4F9E794 for ; Wed, 27 Apr 2011 02:17:50 -0700 (PDT) In-Reply-To: <1303895309.5633.137.camel@thor.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: Michel =?ISO-8859-1?Q?D=E4nzer?= Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0683942209== Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-kQ6uCV4mjj42HXjgCmux" --=-kQ6uCV4mjj42HXjgCmux Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, 2011-04-27 at 11:08 +0200, Michel D=C3=A4nzer wrote: > On Mit, 2011-04-27 at 18:58 +1000, Christopher James Halse Rogers > wrote:=20 > > On Wed, 2011-04-27 at 10:32 +0200, Michel D=C3=A4nzer wrote: > > > On Mit, 2011-04-27 at 16:10 +1000, christopher.halse.rogers@canonical= .com wrote: > > > > From: Christopher James Halse Rogers > > > >=20 > > > > This is the least-bad behaviour. It means that we signal the > > > > vblank event before it actually happens, but since we're disabling > > > > vblanks there's no guarantee that it will *ever* happen otherwise. > > >=20 > > > This may indeed be the best we can do for events that are pending whe= n > > > the CRTC is disabled[0], but I can't see anything that would prevent = new > > > events from getting scheduled (or synchronous vblank waits from timin= g > > > out) while the CRTC is disabled? > > >=20 > > > [0] Though it might unnecessarily send events prematurely when the CR= TC > > > is just disabled temporarily, e.g. as part of a modeset. > > >=20 > > >=20 > > > Also, this patch won't seem to help at all for other drivers which do= n't > > > call drm_vblank_off() directly when disabling a CRTC. > >=20 > > This is true. On the other hand, the other drivers don't wedge the > > vblank code into a state where vblanks cannot be re-enabled. So it's > > only a problem when disabling one of 2+ monitors on those drivers, >=20 > And with DPMS? >=20 Possibly. Since vblanks aren't wedged off in this case it's more likely that the user turning the monitors back on will result in a vblank irq, which will kick everything back into correct operation. I've not managed to trigger this on my radeon system in the same way as my intel systems, but I haven't stressed it as hard either. --=-kQ6uCV4mjj42HXjgCmux Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQEcBAABCAAGBQJNt982AAoJEBUHnPSAqAyg4Z0H/jMxZX44XPDwREqODz+M7yvf LEtgVjZwIi8BhMqKkWKB+V6g7SnRZrn3Wk/rCMW+sM5ct51G3JBVZVv7LPdMMUBY 3U5BprqJ8oAan6L2dIC0VKUCXz75dmRAo8nSjpCC60sbVuSBasj40Zc1NTb/gJ0O /GLwL1MM4jX+cquEuYCAZRAPvnQPDgkIdc/dgtnn5MzKYvsR4miT/lHIDD2utb9h Tb4nk7ZydhovBmwj4hUqLGvzjrZpIbnycAXs7CVOO+xpOo6QBO96V2DXo2C9GkYk BBIbHt8/Jgk4nKpFOAuFqBCik65A2uSikmK7T0MgpqUHOGCe08ZYOMtmHOzwJtY= =SH8B -----END PGP SIGNATURE----- --=-kQ6uCV4mjj42HXjgCmux-- --===============0683942209== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel --===============0683942209==--