Mesa 8.0.3

- 0001-intel-fix-null-dereference-processing-HiZ-buffer.patch: Drop, merged.
This commit is contained in:
Adam Jackson 2012-05-23 11:22:35 -04:00
parent 8f827b4173
commit 0f9a254fdc
5 changed files with 21 additions and 70 deletions

1
.gitignore vendored
View file

@ -34,3 +34,4 @@ mesa-20100720.tar.bz2
/MesaLib-8.0.tar.bz2
/MesaLib-8.0.1.tar.bz2
/MesaLib-8.0.2.tar.bz2
/MesaLib-8.0.3.tar.bz2

View file

@ -1,52 +0,0 @@
From 89e796aef5ca1b35ca4ff6fce9231b4125e07037 Mon Sep 17 00:00:00 2001
From: Dylan Noblesmith <nobled@dreamwidth.org>
Date: Fri, 16 Mar 2012 18:38:49 +0000
Subject: [PATCH] intel: fix null dereference processing HiZ buffer
Or technically, a near-null dereference.
https://bugs.freedesktop.org/show_bug.cgi?id=46303
https://bugs.freedesktop.org/show_bug.cgi?id=46739
NOTE: This is a candidate for the 8.0 branch.
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
(cherry picked from commit 8d9decb75f0df564abaf9888d9fc5c77de8059cd)
---
src/mesa/drivers/dri/intel/intel_context.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c
index d3c0d70..9cdd804 100644
--- a/src/mesa/drivers/dri/intel/intel_context.c
+++ b/src/mesa/drivers/dri/intel/intel_context.c
@@ -1225,6 +1225,10 @@ intel_process_dri2_buffer_with_separate_stencil(struct intel_context *intel,
if (!rb)
return;
+ /* Check if we failed to allocate the depth miptree earlier. */
+ if (buffer->attachment == __DRI_BUFFER_HIZ && rb->mt == NULL)
+ return;
+
/* If the renderbuffer's and DRIbuffer's regions match, then continue. */
if ((buffer->attachment != __DRI_BUFFER_HIZ &&
rb->mt &&
@@ -1266,6 +1270,7 @@ intel_process_dri2_buffer_with_separate_stencil(struct intel_context *intel,
* due to failure to allocate new storage.
*/
if (buffer->attachment == __DRI_BUFFER_HIZ) {
+ assert(rb->mt);
intel_miptree_release(&rb->mt->hiz_mt);
} else {
intel_miptree_release(&rb->mt);
@@ -1291,6 +1296,7 @@ intel_process_dri2_buffer_with_separate_stencil(struct intel_context *intel,
/* Associate buffer with new storage. */
if (buffer->attachment == __DRI_BUFFER_HIZ) {
+ assert(rb->mt);
rb->mt->hiz_mt = mt;
} else {
rb->mt = mt;
--
1.7.7.6

View file

@ -1,21 +1,21 @@
diff -up Mesa-8.0.1/src/gallium/state_trackers/dri/sw/drisw.c.shmget Mesa-8.0.1/src/gallium/state_trackers/dri/sw/drisw.c
--- Mesa-8.0.1/src/gallium/state_trackers/dri/sw/drisw.c.shmget 2012-02-14 18:44:00.000000000 -0500
+++ Mesa-8.0.1/src/gallium/state_trackers/dri/sw/drisw.c 2012-03-15 06:35:44.989221196 -0400
@@ -252,7 +252,6 @@ drisw_update_tex_buffer(struct dri_drawa
diff -up mesa-20120424/src/gallium/state_trackers/dri/sw/drisw.c.jx mesa-20120424/src/gallium/state_trackers/dri/sw/drisw.c
--- mesa-20120424/src/gallium/state_trackers/dri/sw/drisw.c.jx 2012-04-24 07:37:03.000000000 -0400
+++ mesa-20120424/src/gallium/state_trackers/dri/sw/drisw.c 2012-05-16 13:30:36.596312047 -0400
@@ -252,8 +252,6 @@ drisw_update_tex_buffer(struct dri_drawa
struct pipe_transfer *transfer;
char *map;
int x, y, w, h;
- int ximage_stride, line;
- int cpp = util_format_get_blocksize(res->format);
get_drawable_info(dPriv, &x, &y, &w, &h);
@@ -265,15 +264,6 @@ drisw_update_tex_buffer(struct dri_drawa
@@ -266,14 +264,6 @@ drisw_update_tex_buffer(struct dri_drawa
/* Copy the Drawable content to the mapped texture buffer */
get_image(dPriv, x, y, w, h, map);
- /* The pipe transfer has a pitch rounded up to the nearest 64 pixels.
- We assume 32 bit pixels. */
- ximage_stride = w * 4;
- /* The pipe transfer has a pitch rounded up to the nearest 64 pixels. */
- ximage_stride = w * cpp;
- for (line = h-1; line; --line) {
- memmove(&map[line * transfer->stride],
- &map[line * ximage_stride],
@ -25,9 +25,9 @@ diff -up Mesa-8.0.1/src/gallium/state_trackers/dri/sw/drisw.c.shmget Mesa-8.0.1/
pipe_transfer_unmap(pipe, transfer);
pipe_transfer_destroy(pipe, transfer);
}
diff -up Mesa-8.0.1/src/glx/drisw_glx.c.shmget Mesa-8.0.1/src/glx/drisw_glx.c
--- Mesa-8.0.1/src/glx/drisw_glx.c.shmget 2012-02-14 18:44:00.000000000 -0500
+++ Mesa-8.0.1/src/glx/drisw_glx.c 2012-03-14 11:25:04.708341441 -0400
diff -up mesa-20120424/src/glx/drisw_glx.c.jx mesa-20120424/src/glx/drisw_glx.c
--- mesa-20120424/src/glx/drisw_glx.c.jx 2012-04-24 07:37:03.000000000 -0400
+++ mesa-20120424/src/glx/drisw_glx.c 2012-05-16 13:29:25.087965268 -0400
@@ -24,6 +24,9 @@
#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
@ -38,7 +38,7 @@ diff -up Mesa-8.0.1/src/glx/drisw_glx.c.shmget Mesa-8.0.1/src/glx/drisw_glx.c
#include "glxclient.h"
#include <dlfcn.h>
#include "dri_common.h"
@@ -203,6 +206,96 @@ swrastPutImage(__DRIdrawable * draw, int
@@ -206,6 +209,96 @@ swrastPutImage(__DRIdrawable * draw, int
ximage->data = NULL;
}
@ -135,7 +135,7 @@ diff -up Mesa-8.0.1/src/glx/drisw_glx.c.shmget Mesa-8.0.1/src/glx/drisw_glx.c
static void
swrastGetImage(__DRIdrawable * read,
int x, int y, int w, int h,
@@ -217,11 +310,17 @@ swrastGetImage(__DRIdrawable * read,
@@ -220,11 +313,17 @@ swrastGetImage(__DRIdrawable * read,
readable = pread->xDrawable;
ximage = prp->ximage;

View file

@ -35,8 +35,8 @@
Summary: Mesa graphics libraries
Name: mesa
Version: 8.0.2
Release: 8%{?dist}
Version: 8.0.3
Release: 1%{?dist}
License: MIT
Group: System Environment/Libraries
URL: http://www.mesa3d.org
@ -51,7 +51,6 @@ Source3: make-git-snapshot.sh
#Patch7: mesa-7.1-link-shared.patch
Patch8: mesa-7.10-llvmcore.patch
Patch9: mesa-8.0-llvmpipe-shmget.patch
Patch10: 0001-intel-fix-null-dereference-processing-HiZ-buffer.patch
Patch12: mesa-8.0.1-fix-16bpp.patch
Patch13: mesa-8.0-nouveau-vieux-nvfx-lowmem.patch
Patch14: mesa-8.0-nouveau-vieux-finish.patch
@ -291,7 +290,6 @@ Mesa shared glapi
#patch7 -p1 -b .dricore
%patch8 -p1 -b .llvmcore
%patch9 -p1 -b .shmget
%patch10 -p1 -b .intel-hiz-fix
%patch12 -p1 -b .16bpp
%patch13 -p1 -b .nouveau-lowmem
%patch14 -p1 -b .nouveau-finish
@ -570,6 +568,10 @@ rm -rf $RPM_BUILD_ROOT
%endif
%changelog
* Wed May 23 2012 Adam Jackson <ajax@redhat.com> 8.0.3-1
- Mesa 8.0.3
- 0001-intel-fix-null-dereference-processing-HiZ-buffer.patch: Drop, merged.
* Fri May 15 2012 Ben Skeggs <bskeggs@redhat.com> 8.0.2-8
- nouveau: add back a missing hunk from a previous patch

View file

@ -1,2 +1,2 @@
6ae05158e678f4594343f32c2ca50515 gl-manpages-1.0.1.tar.bz2
a368104e5700707048dc3e8691a9a7a1 MesaLib-8.0.2.tar.bz2
cc5ee15e306b8c15da6a478923797171 MesaLib-8.0.3.tar.bz2