mesa: Changes to 'ubuntu-trusty'
debian/changelog | 8 +++-
debian/patches/fix-svga-ioctl.patch | 64 ++++++++++++++++++++++++++++++++++++
debian/patches/series | 1
3 files changed, 71 insertions(+), 2 deletions(-)
New commits:
commit 9111b8fb9747266d2bd37195d092d8a1d2a1c076
Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Date: Tue Sep 30 09:50:25 2014 +0200
release to trusty
diff --git a/debian/changelog b/debian/changelog
index 25b0bc3..fec4ee1 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-mesa (10.1.3-0ubuntu0.2) UNRELEASED; urgency=medium
+mesa (10.1.3-0ubuntu0.2) trusty; urgency=medium
[ Timo Aaltonen ]
* Drop fix-kwin.diff hack, as 10.1.3 has 0380ec467d78f40 which
@@ -7,7 +7,7 @@ mesa (10.1.3-0ubuntu0.2) UNRELEASED; urgency=medium
[ Maarten Lankhorst ]
* Add fix-svga-ioctl.patch (LP: #1365490)
- -- Timo Aaltonen <tjaalton@ubuntu.com> Tue, 08 Jul 2014 15:16:22 +0300
+ -- Maarten Lankhorst <maarten.lankhorst@ubuntu.com> Tue, 30 Sep 2014 09:50:04 +0200
mesa (10.1.3-0ubuntu0.1) trusty; urgency=medium
commit 19af4f066620a1ce1c287d21b1eac23fb701323b
Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Date: Tue Sep 30 09:49:59 2014 +0200
Add fix-svga-ioctl.patch (LP: #1365490)
diff --git a/debian/changelog b/debian/changelog
index e0e0b28..25b0bc3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,12 @@
mesa (10.1.3-0ubuntu0.2) UNRELEASED; urgency=medium
+ [ Timo Aaltonen ]
* Drop fix-kwin.diff hack, as 10.1.3 has 0380ec467d78f40 which
fixes the issue properly.
+ [ Maarten Lankhorst ]
+ * Add fix-svga-ioctl.patch (LP: #1365490)
+
-- Timo Aaltonen <tjaalton@ubuntu.com> Tue, 08 Jul 2014 15:16:22 +0300
mesa (10.1.3-0ubuntu0.1) trusty; urgency=medium
diff --git a/debian/patches/fix-svga-ioctl.patch b/debian/patches/fix-svga-ioctl.patch
new file mode 100644
index 0000000..7a63322
--- /dev/null
+++ b/debian/patches/fix-svga-ioctl.patch
@@ -0,0 +1,64 @@
+commit 2d6206140afe9ecb551822ea00c36eeeef7edfbf
+Author: Thomas Hellstrom <thellstrom@vmware.com>
+Date: Wed Sep 3 11:14:51 2014 +0200
+
+ winsys/svga: Fix incorrect type usage in IOCTL v2
+
+ While similar in layout, the size of the SVGA3dSize type may be smaller than
+ the struct drm_vmw_size type that is part of the ioctl interface. The kernel
+ driver could accordingly overwrite a memory area following the size variable
+ on the stack. Typically that would be another local variable, causing
+ breakage in, for example, ubuntu 12.04.5 where the handle local variable
+ becomes overwritten.
+
+ v2: Fix whitespace errors
+
+ Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+ Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
+ Cc: "10.1 10.2 10.3" <mesa-stable@lists.freedesktop.org>
+
+diff --git a/src/gallium/winsys/svga/drm/vmw_screen_dri.c b/src/gallium/winsys/svga/drm/vmw_screen_dri.c
+index 79a1b3e..9f33590 100644
+--- a/src/gallium/winsys/svga/drm/vmw_screen_dri.c
++++ b/src/gallium/winsys/svga/drm/vmw_screen_dri.c
+@@ -238,7 +238,7 @@ out_mip:
+
+ static struct svga_winsys_surface *
+ vmw_drm_surface_from_handle(struct svga_winsys_screen *sws,
+- struct winsys_handle *whandle,
++ struct winsys_handle *whandle,
+ SVGA3dSurfaceFormat *format)
+ {
+ struct vmw_svga_winsys_surface *vsrf;
+@@ -248,7 +248,8 @@ vmw_drm_surface_from_handle(struct svga_winsys_screen *sws,
+ struct drm_vmw_surface_arg *req = &arg.req;
+ struct drm_vmw_surface_create_req *rep = &arg.rep;
+ uint32_t handle = 0;
+- SVGA3dSize size;
++ struct drm_vmw_size size;
++ SVGA3dSize base_size;
+ int ret;
+ int i;
+
+@@ -274,7 +275,7 @@ vmw_drm_surface_from_handle(struct svga_winsys_screen *sws,
+
+ memset(&arg, 0, sizeof(arg));
+ req->sid = handle;
+- rep->size_addr = (size_t)&size;
++ rep->size_addr = (unsigned long)&size;
+
+ ret = drmCommandWriteRead(vws->ioctl.drm_fd, DRM_VMW_REF_SURFACE,
+ &arg, sizeof(arg));
+@@ -324,7 +325,11 @@ vmw_drm_surface_from_handle(struct svga_winsys_screen *sws,
+ *format = rep->format;
+
+ /* Estimate usage, for early flushing. */
+- vsrf->size = svga3dsurface_get_serialized_size(rep->format, size,
++
++ base_size.width = size.width;
++ base_size.height = size.height;
++ base_size.depth = size.depth;
++ vsrf->size = svga3dsurface_get_serialized_size(rep->format, base_size,
+ rep->mip_levels[0],
+ FALSE);
+
diff --git a/debian/patches/series b/debian/patches/series
index e939400..0b36287 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -15,3 +15,4 @@ i965-dont-call-abort-on-unknown-dev.diff
enable-bdw.diff
fix-unity-on-bdw.diff
fix-gpu-hangs-on-bdw.diff
+fix-svga-ioctl.patch
Reply to: