debian/changelog         |    7 +++++++
 intel/intel_bufmgr_gem.c |    8 ++++----
 2 files changed, 11 insertions(+), 4 deletions(-)

New commits:
commit bdecb10d8715d2ef31972801d24f3797f14dbaf7
Author: Andreas Boll <andreas.boll....@gmail.com>
Date:   Tue Mar 21 18:29:27 2017 +0100

    Upload to experimental.

diff --git a/debian/changelog b/debian/changelog
index 7a3157b..9a24258 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,9 @@
-libdrm (2.4.75-2) UNRELEASED; urgency=medium
+libdrm (2.4.75-2) experimental; urgency=medium
 
   * Cherry-pick 19c4cfc (intel: Add handle to hashtable before freeing
     along an error path) from upstream (LP: #1671377).
 
- -- Andreas Boll <andreas.boll....@gmail.com>  Tue, 21 Mar 2017 18:18:31 +0100
+ -- Andreas Boll <andreas.boll....@gmail.com>  Tue, 21 Mar 2017 18:29:17 +0100
 
 libdrm (2.4.75-1) experimental; urgency=medium
 

commit c5b078451cc016e236ae7899b660710fdfc7b0a5
Author: Andreas Boll <andreas.boll....@gmail.com>
Date:   Tue Mar 21 18:19:19 2017 +0100

    Document the cherry-pick in debian/changelog

diff --git a/debian/changelog b/debian/changelog
index 07f871e..7a3157b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+libdrm (2.4.75-2) UNRELEASED; urgency=medium
+
+  * Cherry-pick 19c4cfc (intel: Add handle to hashtable before freeing
+    along an error path) from upstream (LP: #1671377).
+
+ -- Andreas Boll <andreas.boll....@gmail.com>  Tue, 21 Mar 2017 18:18:31 +0100
+
 libdrm (2.4.75-1) experimental; urgency=medium
 
   * New upstream release.

commit 7de1dfe3906bddabda1519c98f1c37900a34b41e
Author: Chris Wilson <ch...@chris-wilson.co.uk>
Date:   Wed Mar 8 21:00:59 2017 +0000

    intel: Add handle to hashtable before freeing along an error path
    
    drm_intel_gem_bo_free() unconditionally attempts to remove the handle
    from the hashtable. This goes horribly wrong if we haven't already added
    the bo to the hashtable.
    
    Reported-by: Michael Thayer <michael.tha...@oracle.com>
    Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
    (cherry picked from commit 19c4cfc54918d361f2535aec16650e9f0be667cd)

diff --git a/intel/intel_bufmgr_gem.c b/intel/intel_bufmgr_gem.c
index a665600..459cc4f 100644
--- a/intel/intel_bufmgr_gem.c
+++ b/intel/intel_bufmgr_gem.c
@@ -832,6 +832,10 @@ retry:
                }
 
                bo_gem->gem_handle = create.handle;
+               HASH_ADD(handle_hh, bufmgr_gem->handle_table,
+                        gem_handle, sizeof(bo_gem->gem_handle),
+                        bo_gem);
+
                bo_gem->bo.handle = bo_gem->gem_handle;
                bo_gem->bo.bufmgr = bufmgr;
                bo_gem->bo.align = alignment;
@@ -844,10 +848,6 @@ retry:
                                                         tiling_mode,
                                                         stride))
                        goto err_free;
-
-               HASH_ADD(handle_hh, bufmgr_gem->handle_table,
-                        gem_handle, sizeof(bo_gem->gem_handle),
-                        bo_gem);
        }
 
        bo_gem->name = name;

Reply via email to