On Wed, 2009-05-20 at 08:20 +0200, Michel Dänzer wrote: > On Tue, 2009-05-19 at 10:09 -0700, Eric Anholt wrote: > > commit 34660fd2df5d61b77ed7041d32ac29053fc94f5a > > Author: Eric Anholt <e...@anholt.net> > > Date: Fri May 15 23:21:05 2009 -0700 > > > > Only sync XV to vblank when drawing to the frontbuffer. > > > > This fixes emitting syncs to random pipes with boxes bigger than that > > pipe's vertical, leading to GPU hangs. > > > > Bug #21738 > > > > diff --git a/src/i830_video.c b/src/i830_video.c > > index 1c3a5b7..6fec8ff 100644 > > --- a/src/i830_video.c > > +++ b/src/i830_video.c > > @@ -2495,13 +2495,15 @@ I830PutImage(ScrnInfoPtr pScrn, > > if (sync) { > > BoxPtr box; > > int y1, y2; > > - int pipe, event, load_scan_lines_pipe; > > - > > - if (pI830->use_drm_mode) > > - pipe = drmmode_get_pipe_from_crtc_id(pI830->bufmgr, crtc); > > - else { > > - I830CrtcPrivatePtr intel_crtc = crtc->driver_private; > > - pipe = intel_crtc->pipe; > > + int pipe = -1, event, load_scan_lines_pipe; > > + > > + if (pPixmap != pScreen->GetScreenPixmap(pScreen)) { > > + if (pI830->use_drm_mode) > > + pipe = drmmode_get_pipe_from_crtc_id(pI830->bufmgr, crtc); > > + else { > > + I830CrtcPrivatePtr intel_crtc = crtc->driver_private; > > + pipe = intel_crtc->pipe; > > + } > > This seems to do the opposite of what the commit message says, i.e. only > sync when not drawing to the front buffer.
Thanks. Somehow both keithp and I missed it. -- Eric Anholt e...@anholt.net eric.anh...@intel.com
signature.asc
Description: This is a digitally signed message part
_______________________________________________ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg