On Thursday 05 February 2009, Maarten Maathuis wrote: > --- > exa/exa_accel.c | 4 +- > fb/fb.h | 37 ------ > fb/fbcopy.c | 331 > +-------------------------------------------------- fb/fboverlay.c | > 2 +- > fb/fboverlay.h | 2 +- > fb/fbwindow.c | 2 +- > mi/Makefile.am | 1 + > mi/mi.h | 42 +++++++ > mi/micopy.c | 354 > +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 9 files changed, > 406 insertions(+), 369 deletions(-) > create mode 100644 mi/micopy.c >
Removing fbDoCopy and fbCopyRegion from xserver (git commit 2e76958d304a3c4080d62f32449724eeb9b95d93) breaks uxa acceleration in the intel driver. The server crashes as soon as uxa_copy_area or uxa_copy_window are called. At least the equivalent of the exa_accel patch needs to be applied to the intel driver to restore working uxa acceleration with git HEAD of xserver. However, since the intel driver presumably is supposed to work with older versions, too, some version checking might be required as well. A simplistic patch just calling the new mi copy functions is attached. diff --git a/uxa/uxa-accel.c b/uxa/uxa-accel.c index f42e0e2..7053067 100644 --- a/uxa/uxa-accel.c +++ b/uxa/uxa-accel.c @@ -492,7 +492,7 @@ uxa_copy_area(DrawablePtr pSrcDrawable, DrawablePtr pDstDrawable, GCPtr pGC, srcx, srcy, width, height, dstx, dsty); } - return fbDoCopy (pSrcDrawable, pDstDrawable, pGC, + return miDoCopy (pSrcDrawable, pDstDrawable, pGC, srcx, srcy, width, height, dstx, dsty, uxa_copy_n_to_n, 0, NULL); } @@ -840,7 +840,7 @@ uxa_copy_window(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc) -pPixmap->screen_x, -pPixmap->screen_y); #endif - fbCopyRegion (&pPixmap->drawable, &pPixmap->drawable, + miCopyRegion (&pPixmap->drawable, &pPixmap->drawable, NULL, &rgnDst, dx, dy, uxa_copy_n_to_n, 0, NULL); Regards, Magnus Kessler _______________________________________________ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg