[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freedesktop-xorg-devel
Subject:    Re: xf86-video-intel: 2 commits - src/i830_dri.c src/i830.h
From:       Chris Wilson <ickle () kemper ! freedesktop ! org>
Date:       2010-05-29 12:47:05
Message-ID: 89kc63$h14bra () fmsmga002 ! fm ! intel ! com
[Download RAW message or body]

On Sat, 29 May 2010 13:03:40 +0200, Michel Dänzer <michel@daenzer.net> wrote:
> On Sam, 2010-05-29 at 11:47 +0100, Chris Wilson wrote: 
> > On Sat, 29 May 2010 12:20:30 +0200, Michel Dänzer <michel@daenzer.net> wrote:
> > > On Sam, 2010-05-29 at 02:42 -0700, Chris Wilson wrote: 
> > > > 
> > > > commit 44d45d3fa56f121ce89ffe5b28beb48be01a95df
> > > > Author: Chris Wilson <chris@chris-wilson.co.uk>
> > > > Date:   Sat May 29 10:39:28 2010 +0100
> > > > 
> > > > dri: Use size from backing pixmap when creating buffers.
> > > > 
> > > > This avoid using the garbage values stored in the Screen drawable,
> > > 
> > > What 'screen drawable' is this referring to, and why does it have
> > > 'garbage' dimensions? Sounds like this works around a problem that
> > > should rather be fixed.
> > 
> > The drawable associated with the Screen.
> 
> That makes me think of the screen pixmap or the root window. Or, as you
> mentioned a compositing window manager, maybe the Composite Overlay
> Window. Which one is it?

I couldn't find a way to inspect whether the drawable was the screen
Composite Overlay Window from within the driver, but going back to the
beginning and adding some debugging:

creating buffer[0] for drawable 0x8beaa58 [100x100x24/1024x600x24]: isRootWindow? 0, \
isScreenPixmap? 1, canFlip? 0 creating buffer[7] for drawable 0x8beaa58 \
[100x100x24/1024x600x24]: isRootWindow? 0, isScreenPixmap? 1, canFlip? 0 creating \
buffer[1] for drawable 0x8d42588 [1x1x24/1024x600x24]: isRootWindow? 0, \
isScreenPixmap? 1, canFlip? 0 creating buffer[9] for drawable 0x8d42588 \
[1x1x24/1024x600x24]: isRootWindow? 0, isScreenPixmap? 1, canFlip? 0 creating \
buffer[0] for drawable 0x8d42588 [1x1x24/1024x600x24]: isRootWindow? 0, \
isScreenPixmap? 1, canFlip? 0 creating buffer[1] for drawable 0x8d80448 \
[1x1x24/1024x600x24]: isRootWindow? 0, isScreenPixmap? 1, canFlip? 0 creating \
buffer[9] for drawable 0x8d80448 [1x1x24/1024x600x24]: isRootWindow? 0, \
isScreenPixmap? 1, canFlip? 0 creating buffer[0] for drawable 0x8d80448 \
[1x1x24/1024x600x24]: isRootWindow? 0, isScreenPixmap? 1, canFlip? 0 swap buffers for \
drawable 0x8d80448 [1025x600x24], front [1024x600x24], back [1x1x32], CanFlip? 1 (EE) \
intel(0): [DRI2] DRI2SwapBuffers: driver failed to schedule swap creating buffer[1] \
for drawable 0x8d80448 [1025x600x24/1024x600x24]: isRootWindow? 0, isScreenPixmap? 1, \
canFlip? 1 creating buffer[9] for drawable 0x8d80448 [1025x600x24/1024x600x24]: \
isRootWindow? 0, isScreenPixmap? 1, canFlip? 1 creating buffer[0] for drawable \
0x8d80448 [1025x600x24/1024x600x24]: isRootWindow? 0, isScreenPixmap? 1, canFlip? 1 \
swap buffers for drawable 0x8d80448 [1025x600x24], front [1024x600x24], back \
[1025x600x32], CanFlip? 1 (EE) intel(0): [DRI2] DRI2SwapBuffers: driver failed to \
schedule swap swap buffers for drawable 0x8d80448 [1025x600x24], front [1024x600x24], \
back [1025x600x32], CanFlip? 1 (EE) intel(0): [DRI2] DRI2SwapBuffers: driver failed \
to schedule swap swap buffers for drawable 0x8d80448 [1025x600x24], front \
[1024x600x24], back [1025x600x32], CanFlip? 0 (EE) intel(0): [DRI2] DRI2SwapBuffers: \
                driver failed to schedule swap
... last swap repeats ...

So as you pointed out my reasoning was completely wrong, and I just
happened upon a hack to make it work.

-- 
Chris Wilson, Intel Open Source Technology Centre



_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic