[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xorg-server: Changes to 'debian-unstable'



 ChangeLog         |   97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Xext/shm.c        |   15 +++-----
 configure.ac      |    4 +-
 debian/changelog  |   11 ++++++
 dix/devices.c     |    2 -
 fb/fbwindow.c     |    2 -
 present/present.c |    6 +--
 7 files changed, 122 insertions(+), 15 deletions(-)

New commits:
commit 42c346820d04ceb115435885d61a8c342e459c03
Author: Julien Cristau <jcristau@debian.org>
Date:   Mon Nov 3 21:36:29 2014 +0100

    Upload to unstable

diff --git a/debian/changelog b/debian/changelog
index 0c17dae..dc92a0b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xorg-server (2:1.16.1.901-1) UNRELEASED; urgency=medium
+xorg-server (2:1.16.1.901-1) unstable; urgency=medium
 
   * New upstream release.
     + Xext/shm: Detach SHM segment after Pixmap is released
@@ -7,7 +7,7 @@ xorg-server (2:1.16.1.901-1) UNRELEASED; urgency=medium
     + xkb: ignore floating slave devices when updating from master
     + fb: Fix invalid bpp for 24bit depth window
 
- -- Julien Cristau <jcristau@debian.org>  Mon, 03 Nov 2014 21:29:43 +0100
+ -- Julien Cristau <jcristau@debian.org>  Mon, 03 Nov 2014 21:36:14 +0100
 
 xorg-server (2:1.16.1-1) unstable; urgency=medium
 

commit c4f5efe0bd16d5aee92156bba435bbd3b17ee951
Author: Julien Cristau <jcristau@debian.org>
Date:   Mon Nov 3 21:30:43 2014 +0100

    Bump changelogs

diff --git a/ChangeLog b/ChangeLog
index 52f3822..cf9123f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,100 @@
+commit 151ec89574c0d1b4566137d0f2d965ef48f04ec5
+Author: Julien Cristau <jcristau@debian.org>
+Date:   Sun Nov 2 11:21:33 2014 +0100
+
+    Bump to 1.16.1.901
+
+commit a4d9637504ea4c97ca22d86c9f2e275f5253470d
+Author: Chris Wilson <chris@chris-wilson.co.uk>
+Date:   Thu Oct 16 14:09:08 2014 +0100
+
+    Xext/shm: Detach SHM segment after Pixmap is released
+    
+    The GPU may still have a reference to the SHM segment which would only
+    be finally released when the Pixmap is destroy. So we can only detach
+    the SHM segment (and thereby making the memory unaccessible) after the
+    backend has had a chance to flush any remaining references.
+    
+    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85058
+    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
+    Reported-and-tested-by: gedgon@gmail.com
+    Reviewed-by: Adam Jackson <ajax@redhat.com>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit 9b29fa957a397664463c7c78fbcc2f34d1993271)
+    Signed-off-by: Julien Cristau <jcristau@debian.org>
+
+commit a7c207cc8e713092c51401baddbb3a30de398a34
+Author: Axel Davy <axel.davy@ens.fr>
+Date:   Wed Oct 29 13:31:42 2014 +0100
+
+    Fix present_notify to return right away when querying current or past msc.
+    
+    When the target msc is past or is the current one, we want to get immediate
+    feedback. This patch fixes this behaviour.
+    
+    Signed-off-by: Axel Davy <axel.davy@ens.fr>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit 882f2d10d99a04a96afc0ce0c8937e16bec3afb5)
+    Signed-off-by: Julien Cristau <jcristau@debian.org>
+
+commit 27600a6b2056b8cf6af8b6b0f078164ef36c0767
+Author: Axel Davy <axel.davy@ens.fr>
+Date:   Sat Sep 27 23:17:13 2014 +0200
+
+    Fix present_pixmap when using present_notify_msc
+    
+    Calling present_notify_msc could cancel a pending pixmap presentation.
+    
+    Signed-off-by: Axel Davy <axel.davy@ens.fr>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit 9bc01dfc7070a40f5948588895b3a11dd1636d0e)
+    Signed-off-by: Julien Cristau <jcristau@debian.org>
+
+commit 0e62f275aa02c5694fd714f3bbd5271836142755
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Mon Aug 4 10:47:03 2014 +1000
+
+    xkb: ignore floating slave devices when updating from master (#81885)
+    
+    Introduced in 45fb3a934dc0db51584aba37c2f9d73deff9191d. When a device is
+    enabled, the master's locked state is pushed to the slave. If the device is
+    floating, no master exists and we triggered a NULL-pointer dereference
+    in XkbPushLockedStateToSlaves.
+    
+    X.Org Bug 81885 <http://bugs.freedesktop.org/show_bug.cgi?id=81885>
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Daniel Stone <daniel@fooishbar.org>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit 1e30fc1b99bda040038e4fd56d1b27c686b44c75)
+    Signed-off-by: Julien Cristau <jcristau@debian.org>
+
+commit f7ca20cacfd4e0304d01f29491ae8363fd482279
+Author: Takashi Iwai <tiwai@suse.de>
+Date:   Tue Aug 19 15:57:22 2014 -0500
+
+    fb: Fix invalid bpp for 24bit depth window
+    
+    We have a hack in fb layer for a 24bpp screen to use 32bpp images, and
+    fbCreateWindow() replaces its drawable.bitsPerPixel field
+    appropriately.  But, the problem is that it always replaces when 32bpp
+    is passed.  If the depth is 32, this results in bpp < depth, which is
+    actually invalid.
+    
+    Meanwhile, fbCreatePixmap() has a more check and it creates with 24bpp
+    only when the passed depth <= 24 for avoiding such a problem.
+    
+    This oneliner patch just adds the similar check in fbCreateWindow().
+    This (hopefully) fixes the long-standing broken graphics mess of
+    cirrus KMS with 24bpp.
+    
+    Signed-off-by: Takashi Iwai <tiwai@suse.de>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit fe5018e0564118a7a8198fa286186fdb9ed818c7)
+    Signed-off-by: Julien Cristau <jcristau@debian.org>
+
 commit 0e0951ce3eb33242934df9b683f8f5ca4fd501af
 Author: Julien Cristau <jcristau@debian.org>
 Date:   Sun Sep 21 10:56:53 2014 +0200
diff --git a/debian/changelog b/debian/changelog
index 7200bd8..0c17dae 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+xorg-server (2:1.16.1.901-1) UNRELEASED; urgency=medium
+
+  * New upstream release.
+    + Xext/shm: Detach SHM segment after Pixmap is released
+    + Fix present_notify to return right away when querying current or past msc
+    + Fix present_pixmap when using present_notify_msc
+    + xkb: ignore floating slave devices when updating from master
+    + fb: Fix invalid bpp for 24bit depth window
+
+ -- Julien Cristau <jcristau@debian.org>  Mon, 03 Nov 2014 21:29:43 +0100
+
 xorg-server (2:1.16.1-1) unstable; urgency=medium
 
   * Add my key to debian/upstream/signing-key.asc.

commit 151ec89574c0d1b4566137d0f2d965ef48f04ec5
Author: Julien Cristau <jcristau@debian.org>
Date:   Sun Nov 2 11:21:33 2014 +0100

    Bump to 1.16.1.901

diff --git a/configure.ac b/configure.ac
index c556721..3a9a961 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.60)
-AC_INIT([xorg-server], 1.16.1, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2014-09-21"
+AC_INIT([xorg-server], 1.16.1.901, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2014-11-02"
 RELEASE_NAME="Marionberry Pie"
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])

commit a4d9637504ea4c97ca22d86c9f2e275f5253470d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Thu Oct 16 14:09:08 2014 +0100

    Xext/shm: Detach SHM segment after Pixmap is released
    
    The GPU may still have a reference to the SHM segment which would only
    be finally released when the Pixmap is destroy. So we can only detach
    the SHM segment (and thereby making the memory unaccessible) after the
    backend has had a chance to flush any remaining references.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85058
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Reported-and-tested-by: gedgon@gmail.com
    Reviewed-by: Adam Jackson <ajax@redhat.com>
    Signed-off-by: Keith Packard <keithp@keithp.com>
    (cherry picked from commit 9b29fa957a397664463c7c78fbcc2f34d1993271)
    Signed-off-by: Julien Cristau <jcristau@debian.org>

diff --git a/Xext/shm.c b/Xext/shm.c
index 4dad8b6..b787918 100644
--- a/Xext/shm.c
+++ b/Xext/shm.c
@@ -248,21 +248,20 @@ ShmDestroyPixmap(PixmapPtr pPixmap)
 {
     ScreenPtr pScreen = pPixmap->drawable.pScreen;
     ShmScrPrivateRec *screen_priv = ShmGetScreenPriv(pScreen);
+    void *shmdesc = NULL;
     Bool ret;
 
-    if (pPixmap->refcnt == 1) {
-        ShmDescPtr shmdesc;
-
-        shmdesc = (ShmDescPtr) dixLookupPrivate(&pPixmap->devPrivates,
-                                                shmPixmapPrivateKey);
-        if (shmdesc)
-            ShmDetachSegment((void *) shmdesc, pPixmap->drawable.id);
-    }
+    if (pPixmap->refcnt == 1)
+        shmdesc = dixLookupPrivate(&pPixmap->devPrivates, shmPixmapPrivateKey);
 
     pScreen->DestroyPixmap = screen_priv->destroyPixmap;
     ret = (*pScreen->DestroyPixmap) (pPixmap);
     screen_priv->destroyPixmap = pScreen->DestroyPixmap;
     pScreen->DestroyPixmap = ShmDestroyPixmap;
+
+    if (shmdesc)
+	ShmDetachSegment(shmdesc, pPixmap->drawable.id);
+
     return ret;
 }
 

commit a7c207cc8e713092c51401baddbb3a30de398a34
Author: Axel Davy <axel.davy@ens.fr>
Date:   Wed Oct 29 13:31:42 2014 +0100

    Fix present_notify to return right away when querying current or past msc.
    
    When the target msc is past or is the current one, we want to get immediate
    feedback. This patch fixes this behaviour.
    
    Signed-off-by: Axel Davy <axel.davy@ens.fr>
    Reviewed-by: Keith Packard <keithp@keithp.com>
    Signed-off-by: Keith Packard <keithp@keithp.com>
    (cherry picked from commit 882f2d10d99a04a96afc0ce0c8937e16bec3afb5)
    Signed-off-by: Julien Cristau <jcristau@debian.org>

diff --git a/present/present.c b/present/present.c
index 4596c4a..cf283f4 100644
--- a/present/present.c
+++ b/present/present.c
@@ -858,7 +858,7 @@ present_pixmap(WindowPtr window,
 
     xorg_list_add(&vblank->event_queue, &present_exec_queue);
     vblank->queued = TRUE;
-    if (target_msc >= crtc_msc) {
+    if ((pixmap && target_msc >= crtc_msc) || (!pixmap && target_msc > crtc_msc)) {
         ret = present_queue_vblank(screen, target_crtc, vblank->event_id, target_msc);
         if (ret != Success) {
             xorg_list_del(&vblank->event_queue);
@@ -921,7 +921,7 @@ present_notify_msc(WindowPtr window,
                           0, 0,
                           NULL,
                           NULL, NULL,
-                          0,
+                          PresentOptionAsync,
                           target_msc, divisor, remainder, NULL, 0);
 }
 

commit 27600a6b2056b8cf6af8b6b0f078164ef36c0767
Author: Axel Davy <axel.davy@ens.fr>
Date:   Sat Sep 27 23:17:13 2014 +0200

    Fix present_pixmap when using present_notify_msc
    
    Calling present_notify_msc could cancel a pending pixmap presentation.
    
    Signed-off-by: Axel Davy <axel.davy@ens.fr>
    Reviewed-by: Keith Packard <keithp@keithp.com>
    Signed-off-by: Keith Packard <keithp@keithp.com>
    (cherry picked from commit 9bc01dfc7070a40f5948588895b3a11dd1636d0e)
    Signed-off-by: Julien Cristau <jcristau@debian.org>

diff --git a/present/present.c b/present/present.c
index 3aea0d7..4596c4a 100644
--- a/present/present.c
+++ b/present/present.c
@@ -762,7 +762,7 @@ present_pixmap(WindowPtr window,
      * in the same frame
      */
 
-    if (!update) {
+    if (!update && pixmap) {
         xorg_list_for_each_entry_safe(vblank, tmp, &window_priv->vblank, window_list) {
 
             if (!vblank->pixmap)

commit 0e62f275aa02c5694fd714f3bbd5271836142755
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Mon Aug 4 10:47:03 2014 +1000

    xkb: ignore floating slave devices when updating from master (#81885)
    
    Introduced in 45fb3a934dc0db51584aba37c2f9d73deff9191d. When a device is
    enabled, the master's locked state is pushed to the slave. If the device is
    floating, no master exists and we triggered a NULL-pointer dereference
    in XkbPushLockedStateToSlaves.
    
    X.Org Bug 81885 <http://bugs.freedesktop.org/show_bug.cgi?id=81885>
    
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    Reviewed-by: Daniel Stone <daniel@fooishbar.org>
    Signed-off-by: Keith Packard <keithp@keithp.com>
    (cherry picked from commit 1e30fc1b99bda040038e4fd56d1b27c686b44c75)
    Signed-off-by: Julien Cristau <jcristau@debian.org>

diff --git a/dix/devices.c b/dix/devices.c
index 7f079ff..9e1c546 100644
--- a/dix/devices.c
+++ b/dix/devices.c
@@ -416,7 +416,7 @@ EnableDevice(DeviceIntPtr dev, BOOL sendevent)
         XISendDeviceHierarchyEvent(flags);
     }
 
-    if (!IsMaster(dev))
+    if (!IsMaster(dev) && !IsFloating(dev))
         XkbPushLockedStateToSlaves(GetMaster(dev, MASTER_KEYBOARD), 0, 0);
     RecalculateMasterButtons(dev);
 

commit f7ca20cacfd4e0304d01f29491ae8363fd482279
Author: Takashi Iwai <tiwai@suse.de>
Date:   Tue Aug 19 15:57:22 2014 -0500

    fb: Fix invalid bpp for 24bit depth window
    
    We have a hack in fb layer for a 24bpp screen to use 32bpp images, and
    fbCreateWindow() replaces its drawable.bitsPerPixel field
    appropriately.  But, the problem is that it always replaces when 32bpp
    is passed.  If the depth is 32, this results in bpp < depth, which is
    actually invalid.
    
    Meanwhile, fbCreatePixmap() has a more check and it creates with 24bpp
    only when the passed depth <= 24 for avoiding such a problem.
    
    This oneliner patch just adds the similar check in fbCreateWindow().
    This (hopefully) fixes the long-standing broken graphics mess of
    cirrus KMS with 24bpp.
    
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Reviewed-by: Keith Packard <keithp@keithp.com>
    (cherry picked from commit fe5018e0564118a7a8198fa286186fdb9ed818c7)
    Signed-off-by: Julien Cristau <jcristau@debian.org>

diff --git a/fb/fbwindow.c b/fb/fbwindow.c
index 368c4b8..c90175f 100644
--- a/fb/fbwindow.c
+++ b/fb/fbwindow.c
@@ -33,7 +33,7 @@ fbCreateWindow(WindowPtr pWin)
 {
     dixSetPrivate(&pWin->devPrivates, fbGetWinPrivateKey(pWin),
                   fbGetScreenPixmap(pWin->drawable.pScreen));
-    if (pWin->drawable.bitsPerPixel == 32)
+    if (pWin->drawable.bitsPerPixel == 32 && pWin->drawable.depth <= 24)
         pWin->drawable.bitsPerPixel =
             fbGetScreenPrivate(pWin->drawable.pScreen)->win32bpp;
     return TRUE;


Reply to: