ChangeLog                                                |  179 +++++++++++++++
 configure.ac                                             |    4 
 debian/changelog                                         |    7 
 debian/patches/12-Add-libudev-input-hotplug-backend.diff |    4 
 dix/devices.c                                            |    3 
 dix/events.c                                             |    9 
 exa/exa_migration_mixed.c                                |    3 
 exa/exa_offscreen.c                                      |   25 --
 hw/xfree86/common/xf86Config.c                           |    2 
 hw/xfree86/common/xf86xv.c                               |    4 
 xkb/xkbAccessX.c                                         |    2 
 11 files changed, 201 insertions(+), 41 deletions(-)

New commits:
commit 992cfa1dabce8a8e44bb8b1c3bbf46e2070c2ee0
Author: Brice Goglin <bgog...@debian.org>
Date:   Sat Dec 12 17:46:50 2009 +0100

    Prepare Changelog for upload

diff --git a/debian/changelog b/debian/changelog
index 7af9e88..1f303cf 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xorg-server (2:1.7.3.901-1) UNRELEASED; urgency=low
+xorg-server (2:1.7.3.901-1) experimental; urgency=low
 
   [ Julien Cristau ]
   * Enable GLX 1.4 on DRI2 and swrast (from upstream, via F12).
@@ -11,7 +11,7 @@ xorg-server (2:1.7.3.901-1) UNRELEASED; urgency=low
   * New upstream release.
     + Refresh patches.
 
- -- Timo Aaltonen <tjaal...@ubuntu.com>  Fri, 04 Dec 2009 15:08:55 +0200
+ -- Brice Goglin <bgog...@debian.org>  Sat, 12 Dec 2009 17:46:45 +0100
 
 xorg-server (2:1.7.2-2) experimental; urgency=low
 

commit 31ad9153cf9c71b93b5f33bcd3ce18c3d30d1a9d
Author: Brice Goglin <bgog...@debian.org>
Date:   Sat Dec 12 17:46:17 2009 +0100

    Refresh patches

diff --git a/debian/changelog b/debian/changelog
index 29bf010..7af9e88 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -9,6 +9,7 @@ xorg-server (2:1.7.3.901-1) UNRELEASED; urgency=low
 
   [ Brice Goglin ]
   * New upstream release.
+    + Refresh patches.
 
  -- Timo Aaltonen <tjaal...@ubuntu.com>  Fri, 04 Dec 2009 15:08:55 +0200
 
diff --git a/debian/patches/12-Add-libudev-input-hotplug-backend.diff 
b/debian/patches/12-Add-libudev-input-hotplug-backend.diff
index e764f6e..8df99fd 100644
--- a/debian/patches/12-Add-libudev-input-hotplug-backend.diff
+++ b/debian/patches/12-Add-libudev-input-hotplug-backend.diff
@@ -657,8 +657,8 @@ index 40f65bd..12f9d49 100644
 +#endif
 +      xf86Msg(X_INFO, "The server relies on %s to provide the list of "
                        "input devices.\n\tIf no devices become available, "
--                      "reconfigure HAL or disable AllowEmptyInput.\n");
-+                      "reconfigure %s or disable AllowEmptyInput.\n",
+-                      "reconfigure HAL or disable AutoAddDevices.\n");
++                      "reconfigure %s or disable AutoAddDevices.\n",
 +                      config_backend, config_backend);
  #else
 -      xf86Msg(X_INFO, "HAL is disabled and no input devices were 
configured.\n"

commit 1e80410a6793c6f988e63f6d0bbc4c476b92681e
Author: Brice Goglin <bgog...@debian.org>
Date:   Sat Dec 12 17:38:38 2009 +0100

    New upstream release candidate

diff --git a/ChangeLog b/ChangeLog
index 2860488..6aa027f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+commit 601db11ffc49343807cf562175c2fe51eb6ec056
+Author: Peter Hutterer <peter.hutte...@who-t.net>
+Date:   Fri Dec 11 15:34:05 2009 +1000
+
+    xserver 1.7.3.901
+    
+    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
+
+commit 441673906fbe58a877034d478eb04c4b0f9413c3
+Merge: 7ef49cb aea5ace
+Author: Peter Hutterer <peter.hutte...@who-t.net>
+Date:   Tue Dec 8 11:45:51 2009 +1000
+
+    Merge branch 'server-1.7-branch' into server-1.7-nominations
+
 commit aea5ace1ee331fab0b72885ce0d5d3fc235e0708
 Author: Peter Hutterer <peter.hutte...@who-t.net>
 Date:   Thu Dec 3 11:57:16 2009 +1000
@@ -36,6 +51,170 @@ Date:   Sun Nov 29 12:06:26 2009 -0800
     Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
     (cherry picked from commit 155e61a9f0429bf28ce493c0fe7a2d076cb7e137)
 
+commit 7ef49cbe702ab00913cb5c55d35b110cd81481aa
+Author: Luc Verhaegen <l...@skynet.be>
+Date:   Wed Nov 11 15:52:39 2009 +0100
+
+    [PATCH] Xv: Fix AdjustFrame when driver implements ReputImage.
+    
+    Finally fixes fd.o #4653, filed more than 4 years ago.
+    
+    Patch can be happily applied to all modular Xorg versions.
+    
+    Signed-off-by: Luc Verhaegen <l...@skynet.be>
+    Reviewed-by: Keith Packard <kei...@keithp.com>
+    Signed-off-by: Keith Packard <kei...@keithp.com>
+    (cherry picked from commit 0e084d8c71e697a5cf5d5d7c749455ae14bd6eb7)
+
+commit 21bf1de28c7f10bcee1b199cc976d58319dc9ecd
+Author: Peter Hutterer <peter.hutte...@who-t.net>
+Date:   Fri Nov 27 16:01:53 2009 +1000
+
+    dix: fix memory leak, free event list on shutdown. (#25028)
+    
+    X.Org Bug 25028 <http://bugs.freedesktop.org/show_bug.cgi?id=25028>
+    
+    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
+    Reviewed-by: Keith Packard <kei...@keithp.com>
+    (cherry picked from commit c20c8897272427cb3f755a3e28e80a9ad46f08a1)
+
+commit e840999ffc93ecb2d870dfed334e093ca1e5e65b
+Author: Peter Hutterer <peter.hutte...@who-t.net>
+Date:   Fri Nov 27 16:20:13 2009 +1000
+
+    dix: remove core devices when shutting down. (#25028)
+    
+    NewInputDeviceRequest (and RemoveDevice) have checks in place to not allow
+    removal of the VCP/VCK. When shutting down, they need to be cleaned up
+    nonetheless to free the memory associated.
+    
+    X.Org Bug 25028 <http://bugs.freedesktop.org/show_bug.cgi?id=25028>
+    
+    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
+    Reviewed-by: Keith Packard <kei...@keithp.com>
+    (cherry picked from commit 66bb8c6fbdfc0fc0d971aac4ec6f949bb9288c1b)
+
+commit 51aad8bebca938a41837ad73c98a0039665fa22f
+Author: Peter Hutterer <peter.hutte...@who-t.net>
+Date:   Fri Oct 30 12:11:41 2009 +1000
+
+    Set the source and deviceid for key repeat events (#24785)
+    
+    X.Org Bug 24785 <http://bugs.freedesktop.org/show_bug.cgi?id=24785>
+    
+    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
+    Acked-by: Adam Jackson <a...@redhat.com>
+    (cherry picked from commit b584c224a888c9e7f92d7e49021f74232a727c7f)
+
+commit abb0a5c11e25733bcbcbbe4fdd8d54feb7786e63
+Author: Peter Hutterer <peter.hutte...@who-t.net>
+Date:   Tue Dec 1 14:38:19 2009 +1000
+
+    xfree86: tell users to disable AutoAddDevices, not AllowEmptyInput.
+    
+    Technically, disabling AEI is the right suggestion. AEI off forces the
+    server to init the built-in defaults for input devices (or pick the first
+    one from the config file). At the same time, hotplugging is still available
+    with AEI off.
+    
+    Unfortunatly, in the vast majority of cases users want to simply disable
+    hotplugging or have a working server while the local HAL configuration is
+    broken or missing. Disabling AEI will lead to duplicate events, triple
+    keystrokes, etc. once the configuration works again.
+    It's not actually required to remove AEI once hotplugging works again,
+    though it will in many cases lead to a setup that appears broken.
+    
+    Asking users to disable AutoAddDevices instead means those users disable
+    hotplugging, can then fix the HAL setup and they _must_ remove the config
+    line again to test if hotplugging works again. Which doesn't leave them 
with
+    a broken config once everything is working nice and dandy. Less bugreports,
+    everybody wins.
+    
+    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
+    Acked-by: Dan Nicholson <dbn.li...@gmail.com>
+    Acked-by: Daniel Stone <dan...@fooishbar.org>
+    Acked-by: Rémi Cardona <r...@gentoo.org>
+    Acked-by: James Cloos <cl...@jhcloos.com>
+    (cherry picked from commit 761ae22f880bd79550ccf93d321b8a28b3755956)
+
+commit b8623569a3acff31cb18a9f6046e60d0637cc0e0
+Author: Gaetan Nadon <mems...@videotron.ca>
+Date:   Sat Nov 28 21:32:47 2009 -0500
+
+    configure.ac: error while checking for XDMXCONFIG_DEP
+    
+    Introduced in commit 9998105a387e0294054502331a56e1e020cd93e4
+    The replacement third parameters to PKG_CHECK_MODULES([DMXMODULES]
+    was not quoted.
+    
+    Signed-off-by: Gaetan Nadon <mems...@videotron.ca>
+    Reviewed-by: Dan Nicholson <dbn.li...@gmail.com>
+    Tested-by: Julien Cristau <jcris...@debian.org>
+    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
+    (cherry picked from commit 91c1bd78f7240c92702828f8e5a6b6ce944b9e36)
+
+commit dde1f688006e08e26a8a43d0dbb877b8ea169825
+Author: Michel Dänzer <daen...@vmware.com>
+Date:   Mon Nov 30 13:17:52 2009 +0100
+
+    EXA: Don't defragment offscreen memory at allocation time.
+    
+    Fixes http://bugs.freedesktop.org/show_bug.cgi?id=24300 .
+    
+    Offscreen memory allocation can occur from various places, and apparently
+    doing defragmentation from at least some of them can confuse some driver
+    acceleration code.
+    
+    There's still the regular background defragmentation in the WakeupHandler,
+    which should manage to keep fragmentation at a reasonable level.
+    
+    Signed-off-by: Michel Dänzer <daen...@vmware.com>
+    Signed-off-by: Keith Packard <kei...@keithp.com>
+    (cherry picked from commit 8754db77d8169e5ea506a963cebee1a651bcf094)
+
+commit 17a1614c3b7410581d885be5f8f76aa7b3e2c070
+Author: Ben Skeggs <bske...@redhat.com>
+Date:   Sat Oct 24 10:45:49 2009 +1000
+
+    EXA: fix mixed-pixmaps issue where we could do accel with pixmap mapped
+    
+    The problem occurs in the following situation:
+    
+    1. Create Pixmap
+    2. Software fallback on pixmap: pExaPixmap->pDamage created
+    3. Accel to pixmap: driver pixmap created, exaPixmapIsOffscreen() now true
+    4. Software fallback on pixmap
+    4.1: PrepareAccess() from driver succeeds, so no DFS to system memory copy
+    4.2: Software rendering...
+    4.3: (pExaPixmap->pDamage && exaPixmapIsOffscreen()) is true, so we try
+         to (incorrectly) UTS the data back to the driver pixmap, when we
+         should just call the driver's FinishAccess() hook.
+    4.4: fail
+    
+    The patch adds an additional check on pExaPixmap->offscreen, which should
+    (for the cases exaPixmapIsOffscreen() will return true) only be FALSE
+    when we haven't used PrepareAccess() on the pixmap.
+    
+    Signed-off-by: Ben Skeggs <bske...@redhat.com>
+    Acked-By: Michel Dänzer <mic...@daenzer.net>
+    
+    [ Michel Dänzer: This is a 'backport' of commit
+      647b79f87a9891225678dc6fc2fbda3bdef8fa9d from master - actually this 
patch
+      was submitted first but didn't apply to master anymore, so technically 
the
+      other change is a 'forward port' of this one ]
+
+commit 155e61a9f0429bf28ce493c0fe7a2d076cb7e137
+Author: Aaron Plattner <aplatt...@nvidia.com>
+Date:   Sun Nov 29 12:06:26 2009 -0800
+
+    Restore ABI by reintroducing the "is_src" paramter to image_from_pict.
+    
+    Restores old ABI after 196aff9b18381d700fb28027186cce6e68ad587c.
+    
+    Signed-off-by: Aaron Plattner <aplatt...@nvidia.com>
+    Tested-by: Julien Cristau <jcris...@debian.org>
+    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
+
 commit 1fff1b37a91c989c046d96d961862d592a307496
 Author: Peter Hutterer <peter.hutte...@who-t.net>
 Date:   Fri Nov 27 14:58:57 2009 +1000
diff --git a/debian/changelog b/debian/changelog
index 2bfe403..29bf010 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xorg-server (2:1.7.3-1) UNRELEASED; urgency=low
+xorg-server (2:1.7.3.901-1) UNRELEASED; urgency=low
 
   [ Julien Cristau ]
   * Enable GLX 1.4 on DRI2 and swrast (from upstream, via F12).
@@ -7,7 +7,7 @@ xorg-server (2:1.7.3-1) UNRELEASED; urgency=low
   * Update input_id to the version in udev 149.
   * Update xserver-xorg-core bug script to run udevadm info instead of lshal.
 
-  [ Timo Aaltonen ]
+  [ Brice Goglin ]
   * New upstream release.
 
  -- Timo Aaltonen <tjaal...@ubuntu.com>  Fri, 04 Dec 2009 15:08:55 +0200

commit 601db11ffc49343807cf562175c2fe51eb6ec056
Author: Peter Hutterer <peter.hutte...@who-t.net>
Date:   Fri Dec 11 15:34:05 2009 +1000

    xserver 1.7.3.901
    
    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>

diff --git a/configure.ac b/configure.ac
index 0c98bf2..e501a37 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.7.3, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2009-12-3"
+AC_INIT([xorg-server], 1.7.3.901, 
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2009-12-11"
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE

commit 7ef49cbe702ab00913cb5c55d35b110cd81481aa
Author: Luc Verhaegen <l...@skynet.be>
Date:   Wed Nov 11 15:52:39 2009 +0100

    [PATCH] Xv: Fix AdjustFrame when driver implements ReputImage.
    
    Finally fixes fd.o #4653, filed more than 4 years ago.
    
    Patch can be happily applied to all modular Xorg versions.
    
    Signed-off-by: Luc Verhaegen <l...@skynet.be>
    Reviewed-by: Keith Packard <kei...@keithp.com>
    Signed-off-by: Keith Packard <kei...@keithp.com>
    (cherry picked from commit 0e084d8c71e697a5cf5d5d7c749455ae14bd6eb7)

diff --git a/hw/xfree86/common/xf86xv.c b/hw/xfree86/common/xf86xv.c
index abbe033..8221659 100644
--- a/hw/xfree86/common/xf86xv.c
+++ b/hw/xfree86/common/xf86xv.c
@@ -1297,7 +1297,7 @@ xf86XVAdjustFrame(int index, int x, int y, int flags)
       for(i = pa->nPorts; i > 0; i--, pPort++) {
        pPriv = (XvPortRecPrivatePtr)pPort->devPriv.ptr;
 
-       if(!pPriv->type && (pPriv->isOn == XV_ON)) { /* overlaid still/image */
+       if(!pPriv->type && (pPriv->isOn != XV_OFF)) { /* overlaid still/image */
 
          if(pPriv->pCompositeClip && pPriv->FreeCompositeClip)
             REGION_DESTROY(pScreen, pPriv->pCompositeClip);
@@ -1311,7 +1311,7 @@ xf86XVAdjustFrame(int index, int x, int y, int flags)
              (pWin->visibility == VisibilityPartiallyObscured)))
          {
              xf86XVReputImage(pPriv);
-         } else {
+         } else if (pPriv->isOn == XV_ON) {
             (*pPriv->AdaptorRec->StopVideo)(
                                 pPriv->pScrn, pPriv->DevPriv.ptr, FALSE);
             xf86XVRemovePortFromWindow(pWin, pPriv);

commit 21bf1de28c7f10bcee1b199cc976d58319dc9ecd
Author: Peter Hutterer <peter.hutte...@who-t.net>
Date:   Fri Nov 27 16:01:53 2009 +1000

    dix: fix memory leak, free event list on shutdown. (#25028)
    
    X.Org Bug 25028 <http://bugs.freedesktop.org/show_bug.cgi?id=25028>
    
    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
    Reviewed-by: Keith Packard <kei...@keithp.com>
    (cherry picked from commit c20c8897272427cb3f755a3e28e80a9ad46f08a1)

diff --git a/dix/events.c b/dix/events.c
index 3e23262..1d7ceef 100644
--- a/dix/events.c
+++ b/dix/events.c
@@ -5086,12 +5086,9 @@ InitEvents(void)
 void
 CloseDownEvents(void)
 {
-    int len;
-    EventListPtr list;
-
-    len = GetEventList(&list);
-    while(len--)
-        xfree(list[len].event);
+    FreeEventList(InputEventList, InputEventListLen);
+    InputEventListLen = 0;
+    InputEventList = NULL;
 }
 
 /**

commit e840999ffc93ecb2d870dfed334e093ca1e5e65b
Author: Peter Hutterer <peter.hutte...@who-t.net>
Date:   Fri Nov 27 16:20:13 2009 +1000

    dix: remove core devices when shutting down. (#25028)
    
    NewInputDeviceRequest (and RemoveDevice) have checks in place to not allow
    removal of the VCP/VCK. When shutting down, they need to be cleaned up
    nonetheless to free the memory associated.
    
    X.Org Bug 25028 <http://bugs.freedesktop.org/show_bug.cgi?id=25028>
    
    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
    Reviewed-by: Keith Packard <kei...@keithp.com>
    (cherry picked from commit 66bb8c6fbdfc0fc0d971aac4ec6f949bb9288c1b)

diff --git a/dix/devices.c b/dix/devices.c
index 395e19a..e3fd456 100644
--- a/dix/devices.c
+++ b/dix/devices.c
@@ -908,6 +908,9 @@ CloseDownDevices(void)
         DeleteInputDeviceRequest(dev);
     }
 
+    CloseDevice(inputInfo.pointer);
+    CloseDevice(inputInfo.keyboard);
+
     inputInfo.devices = NULL;
     inputInfo.off_devices = NULL;
     inputInfo.keyboard = NULL;

commit 51aad8bebca938a41837ad73c98a0039665fa22f
Author: Peter Hutterer <peter.hutte...@who-t.net>
Date:   Fri Oct 30 12:11:41 2009 +1000

    Set the source and deviceid for key repeat events (#24785)
    
    X.Org Bug 24785 <http://bugs.freedesktop.org/show_bug.cgi?id=24785>
    
    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
    Acked-by: Adam Jackson <a...@redhat.com>
    (cherry picked from commit b584c224a888c9e7f92d7e49021f74232a727c7f)

diff --git a/xkb/xkbAccessX.c b/xkb/xkbAccessX.c
index 2fc7642..0d8e4eb 100644
--- a/xkb/xkbAccessX.c
+++ b/xkb/xkbAccessX.c
@@ -131,6 +131,8 @@ AccessXKeyboardEvent(DeviceIntPtr   keybd,
     event.time = GetTimeInMillis();
     event.length = sizeof(DeviceEvent);
     event.key_repeat = isRepeat;
+    event.sourceid = keybd->id;
+    event.deviceid = keybd->id;
 
     if (xkbDebugFlags&0x8) {
        DebugF("[xkb] AXKE: Key %d %s\n", keyCode,

commit abb0a5c11e25733bcbcbbe4fdd8d54feb7786e63
Author: Peter Hutterer <peter.hutte...@who-t.net>
Date:   Tue Dec 1 14:38:19 2009 +1000

    xfree86: tell users to disable AutoAddDevices, not AllowEmptyInput.
    
    Technically, disabling AEI is the right suggestion. AEI off forces the
    server to init the built-in defaults for input devices (or pick the first
    one from the config file). At the same time, hotplugging is still available
    with AEI off.
    
    Unfortunatly, in the vast majority of cases users want to simply disable
    hotplugging or have a working server while the local HAL configuration is
    broken or missing. Disabling AEI will lead to duplicate events, triple
    keystrokes, etc. once the configuration works again.
    It's not actually required to remove AEI once hotplugging works again,
    though it will in many cases lead to a setup that appears broken.
    
    Asking users to disable AutoAddDevices instead means those users disable
    hotplugging, can then fix the HAL setup and they _must_ remove the config
    line again to test if hotplugging works again. Which doesn't leave them with
    a broken config once everything is working nice and dandy. Less bugreports,
    everybody wins.
    
    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
    Acked-by: Dan Nicholson <dbn.li...@gmail.com>
    Acked-by: Daniel Stone <dan...@fooishbar.org>
    Acked-by: Rémi Cardona <r...@gentoo.org>
    Acked-by: James Cloos <cl...@jhcloos.com>
    (cherry picked from commit 761ae22f880bd79550ccf93d321b8a28b3755956)

diff --git a/hw/xfree86/common/xf86Config.c b/hw/xfree86/common/xf86Config.c
index 40f65bd..e1283f9 100644
--- a/hw/xfree86/common/xf86Config.c
+++ b/hw/xfree86/common/xf86Config.c
@@ -1456,7 +1456,7 @@ checkCoreInputDevices(serverLayoutPtr servlayoutp, Bool 
implicitLayout)
 #ifdef CONFIG_HAL
        xf86Msg(X_INFO, "The server relies on HAL to provide the list of "
                        "input devices.\n\tIf no devices become available, "
-                       "reconfigure HAL or disable AllowEmptyInput.\n");
+                       "reconfigure HAL or disable AutoAddDevices.\n");
 #else
        xf86Msg(X_INFO, "HAL is disabled and no input devices were 
configured.\n"
                        "\tTry disabling AllowEmptyInput.\n");

commit b8623569a3acff31cb18a9f6046e60d0637cc0e0
Author: Gaetan Nadon <mems...@videotron.ca>
Date:   Sat Nov 28 21:32:47 2009 -0500

    configure.ac: error while checking for XDMXCONFIG_DEP
    
    Introduced in commit 9998105a387e0294054502331a56e1e020cd93e4
    The replacement third parameters to PKG_CHECK_MODULES([DMXMODULES]
    was not quoted.
    
    Signed-off-by: Gaetan Nadon <mems...@videotron.ca>
    Reviewed-by: Dan Nicholson <dbn.li...@gmail.com>
    Tested-by: Julien Cristau <jcris...@debian.org>
    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
    (cherry picked from commit 91c1bd78f7240c92702828f8e5a6b6ce944b9e36)

diff --git a/configure.ac b/configure.ac
index 8500db4..1038734 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1808,11 +1808,15 @@ AM_CONDITIONAL(XQUARTZ_SPARKLE, [test 
"x$XQUARTZ_SPARKLE" != "xno"])
 AM_CONDITIONAL(STANDALONE_XPBPROXY, [test "x$STANDALONE_XPBPROXY" = xyes])
 
 dnl DMX DDX
-PKG_CHECK_MODULES([DMXMODULES],
-    [xmuu $LIBXEXT x11 xrender xfixes xfont $LIBXI $DMXPROTO xau 
$XDMCP_MODULES],
-    PKG_CHECK_MODULES([XDMXCONFIG_DEP], [xaw7 xmu xt xpm x11], [have_dmx=yes],
-                      [have_dmx=no]),
-    [have_dmx=no])
+PKG_CHECK_MODULES(
+       [DMXMODULES],
+       [xmuu $LIBXEXT x11 xrender xfixes xfont $LIBXI $DMXPROTO xau 
$XDMCP_MODULES],
+       [PKG_CHECK_MODULES(
+               [XDMXCONFIG_DEP],
+               [xaw7 xmu xt xpm x11],
+               [have_dmx=yes],
+               [have_dmx=no])],
+       [have_dmx=no])
 AC_MSG_CHECKING([whether to build Xdmx DDX])
 if test "x$DMX" = xauto; then
        DMX="$have_dmx"

commit dde1f688006e08e26a8a43d0dbb877b8ea169825
Author: Michel Dänzer <daen...@vmware.com>
Date:   Mon Nov 30 13:17:52 2009 +0100

    EXA: Don't defragment offscreen memory at allocation time.
    
    Fixes http://bugs.freedesktop.org/show_bug.cgi?id=24300 .
    
    Offscreen memory allocation can occur from various places, and apparently
    doing defragmentation from at least some of them can confuse some driver
    acceleration code.
    
    There's still the regular background defragmentation in the WakeupHandler,
    which should manage to keep fragmentation at a reasonable level.
    
    Signed-off-by: Michel Dänzer <daen...@vmware.com>
    Signed-off-by: Keith Packard <kei...@keithp.com>
    (cherry picked from commit 8754db77d8169e5ea506a963cebee1a651bcf094)

diff --git a/exa/exa_offscreen.c b/exa/exa_offscreen.c
index eb53b2a..2ec4174 100644
--- a/exa/exa_offscreen.c
+++ b/exa/exa_offscreen.c
@@ -169,7 +169,7 @@ exaOffscreenAlloc (ScreenPtr pScreen, int size, int align,
 {
     ExaOffscreenArea *area;
     ExaScreenPriv (pScreen);
-    int real_size = 0, free_total = 0, largest_avail = 0;
+    int real_size = 0, largest_avail = 0;
 #if DEBUG_OFFSCREEN
     static int number = 0;
     ErrorF("================= ============ allocating a new pixmap %d\n", 
++number);
@@ -208,33 +208,10 @@ exaOffscreenAlloc (ScreenPtr pScreen, int size, int align,
        if (real_size <= area->size)
            break;
 
-       free_total += area->size;
-
        if (area->size > largest_avail)
            largest_avail = area->size;
     }
 
-    if (!area && free_total >= size) {
-       CARD32 now = GetTimeInMillis();
-
-       /* Don't defragment more than once per second, to avoid adding more
-        * overhead than we're trying to prevent
-        */
-       if (abs((INT32) (now - pExaScr->lastDefragment)) > 1000) {
-           area = ExaOffscreenDefragment(pScreen);
-           pExaScr->lastDefragment = now;
-
-           if (area) {
-               /* adjust size to match alignment requirement */
-               real_size = size + (area->base_offset + area->size - size) % 
align;
-
-               /* does it fit? */
-               if (real_size > area->size)
-                   area = NULL;
-           }
-       }
-    }
-
     if (!area)
     {
        area = exaFindAreaToEvict(pExaScr, size, align);

commit 17a1614c3b7410581d885be5f8f76aa7b3e2c070
Author: Ben Skeggs <bske...@redhat.com>
Date:   Sat Oct 24 10:45:49 2009 +1000

    EXA: fix mixed-pixmaps issue where we could do accel with pixmap mapped
    
    The problem occurs in the following situation:
    
    1. Create Pixmap
    2. Software fallback on pixmap: pExaPixmap->pDamage created
    3. Accel to pixmap: driver pixmap created, exaPixmapIsOffscreen() now true
    4. Software fallback on pixmap
    4.1: PrepareAccess() from driver succeeds, so no DFS to system memory copy
    4.2: Software rendering...
    4.3: (pExaPixmap->pDamage && exaPixmapIsOffscreen()) is true, so we try
         to (incorrectly) UTS the data back to the driver pixmap, when we
         should just call the driver's FinishAccess() hook.
    4.4: fail
    
    The patch adds an additional check on pExaPixmap->offscreen, which should
    (for the cases exaPixmapIsOffscreen() will return true) only be FALSE
    when we haven't used PrepareAccess() on the pixmap.
    
    Signed-off-by: Ben Skeggs <bske...@redhat.com>
    Acked-By: Michel Dänzer <mic...@daenzer.net>
    
    [ Michel Dänzer: This is a 'backport' of commit
      647b79f87a9891225678dc6fc2fbda3bdef8fa9d from master - actually this patch
      was submitted first but didn't apply to master anymore, so technically the
      other change is a 'forward port' of this one ]

diff --git a/exa/exa_migration_mixed.c b/exa/exa_migration_mixed.c
index f42c9c2..52b18b4 100644
--- a/exa/exa_migration_mixed.c
+++ b/exa/exa_migration_mixed.c
@@ -202,7 +202,8 @@ void exaFinishAccess_mixed(PixmapPtr pPixmap, int index)
 {
     ExaPixmapPriv(pPixmap);
 
-    if (pExaPixmap->pDamage && exaPixmapIsOffscreen(pPixmap)) {
+    if (pExaPixmap->pDamage && exaPixmapIsOffscreen(pPixmap) &&
+       !pExaPixmap->offscreen) {
        DamageRegionProcessPending(&pPixmap->drawable);
        exaMoveInPixmap_mixed(pPixmap);
     }

commit 155e61a9f0429bf28ce493c0fe7a2d076cb7e137
Author: Aaron Plattner <aplatt...@nvidia.com>
Date:   Sun Nov 29 12:06:26 2009 -0800

    Restore ABI by reintroducing the "is_src" paramter to image_from_pict.
    
    Restores old ABI after 196aff9b18381d700fb28027186cce6e68ad587c.
    
    Signed-off-by: Aaron Plattner <aplatt...@nvidia.com>
    Tested-by: Julien Cristau <jcris...@debian.org>
    Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>

diff --git a/fb/fb.h b/fb/fb.h
index 6c9f8a1..37de71e 100644
--- a/fb/fb.h
+++ b/fb/fb.h
@@ -2080,7 +2080,8 @@ fbFillRegionSolid (DrawablePtr    pDrawable,
 
 extern _X_EXPORT pixman_image_t *
 image_from_pict (PicturePtr pict,
-                Bool       has_clip);
+                Bool       has_clip,
+                Bool       is_src);
 extern _X_EXPORT void free_pixman_pict (PicturePtr, pixman_image_t *);
 
 #endif /* _FB_H_ */
diff --git a/fb/fbpict.c b/fb/fbpict.c
index 8057e90..8fdaa58 100644
--- a/fb/fbpict.c
+++ b/fb/fbpict.c
@@ -163,9 +163,9 @@ fbComposite (CARD8      op,
     if (pMask)
        miCompositeSourceValidate (pMask, xMask, yMask, width, height);
     
-    src = image_from_pict (pSrc, TRUE);
-    mask = image_from_pict (pMask, TRUE);
-    dest = image_from_pict (pDst, TRUE);
+    src = image_from_pict (pSrc, TRUE, TRUE);
+    mask = image_from_pict (pMask, TRUE, TRUE);
+    dest = image_from_pict (pDst, TRUE, FALSE);
 
     if (src && dest && !(pMask && !mask))
     {
@@ -361,7 +361,7 @@ set_image_properties (pixman_image_t *image, PicturePtr 
pict)
     
     if (pict->alphaMap)
     {
-       pixman_image_t *alpha_map = image_from_pict (pict->alphaMap, TRUE);
+       pixman_image_t *alpha_map = image_from_pict (pict->alphaMap, TRUE, 
TRUE);
        
        pixman_image_set_alpha_map (
            image, alpha_map, pict->alphaOrigin.x, pict->alphaOrigin.y);
@@ -395,7 +395,8 @@ set_image_properties (pixman_image_t *image, PicturePtr 
pict)
 
 pixman_image_t *
 image_from_pict (PicturePtr pict,
-                Bool has_clip)
+                Bool has_clip,
+                Bool is_src)
 {
     pixman_image_t *image = NULL;
 
diff --git a/fb/fbtrap.c b/fb/fbtrap.c
index 830603a..b1e1eff 100644
--- a/fb/fbtrap.c
+++ b/fb/fbtrap.c
@@ -40,7 +40,7 @@ fbAddTraps (PicturePtr        pPicture,
            int         ntrap,
            xTrap       *traps)
 {
-    pixman_image_t *image = image_from_pict (pPicture, FALSE);
+    pixman_image_t *image = image_from_pict (pPicture, FALSE, FALSE);
 
     if (!image)
        return;
@@ -56,7 +56,7 @@ fbRasterizeTrapezoid (PicturePtr    pPicture,
                      int           x_off,
                      int           y_off)
 {
-    pixman_image_t *image = image_from_pict (pPicture, FALSE);
+    pixman_image_t *image = image_from_pict (pPicture, FALSE, FALSE);
 
     if (!image)
        return;


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to