mirror of
https://src.fedoraproject.org/rpms/mesa.git
synced 2024-11-25 01:45:29 +00:00
mesa-intel-fix-gs-rendering-regression.patch, attempt to fix gnome shell
rendering.
This commit is contained in:
parent
9f7b14f2f9
commit
5ea1084221
2 changed files with 106 additions and 1 deletions
99
mesa-intel-fix-gs-rendering-regression.patch
Normal file
99
mesa-intel-fix-gs-rendering-regression.patch
Normal file
|
@ -0,0 +1,99 @@
|
||||||
|
|
||||||
|
This reverts upstream
|
||||||
|
f627d429bda8196fd20f2023374ad6d34e4becb6,
|
||||||
|
de7678ef521f4fb34459e407a66ab8bf8be733e1,
|
||||||
|
6547253bd138db815173c00ca2dc220e8ad20ab1
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/src/mesa/drivers/dri/intel/intel_regions.c b/src/mesa/drivers/dri/intel/intel_regions.c
|
||||||
|
index a4da1ce..0857fa8 100644
|
||||||
|
--- a/src/mesa/drivers/dri/intel/intel_regions.c
|
||||||
|
+++ b/src/mesa/drivers/dri/intel/intel_regions.c
|
||||||
|
@@ -149,6 +149,11 @@ intel_region_alloc_internal(struct intel_screen *screen,
|
||||||
|
{
|
||||||
|
struct intel_region *region;
|
||||||
|
|
||||||
|
+ if (buffer == NULL) {
|
||||||
|
+ _DBG("%s <-- NULL\n", __FUNCTION__);
|
||||||
|
+ return NULL;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
region = calloc(sizeof(*region), 1);
|
||||||
|
if (region == NULL)
|
||||||
|
return region;
|
||||||
|
@@ -175,7 +180,6 @@ intel_region_alloc(struct intel_screen *screen,
|
||||||
|
drm_intel_bo *buffer;
|
||||||
|
unsigned long flags = 0;
|
||||||
|
unsigned long aligned_pitch;
|
||||||
|
- struct intel_region *region;
|
||||||
|
|
||||||
|
if (expect_accelerated_upload)
|
||||||
|
flags |= BO_ALLOC_FOR_RENDER;
|
||||||
|
@@ -183,17 +187,9 @@ intel_region_alloc(struct intel_screen *screen,
|
||||||
|
buffer = drm_intel_bo_alloc_tiled(screen->bufmgr, "region",
|
||||||
|
width, height, cpp,
|
||||||
|
&tiling, &aligned_pitch, flags);
|
||||||
|
- if (buffer == NULL)
|
||||||
|
- return NULL;
|
||||||
|
|
||||||
|
- region = intel_region_alloc_internal(screen, cpp, width, height,
|
||||||
|
- aligned_pitch / cpp, tiling, buffer);
|
||||||
|
- if (region == NULL) {
|
||||||
|
- drm_intel_bo_unreference(buffer);
|
||||||
|
- return NULL;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return region;
|
||||||
|
+ return intel_region_alloc_internal(screen, cpp, width, height,
|
||||||
|
+ aligned_pitch / cpp, tiling, buffer);
|
||||||
|
}
|
||||||
|
|
||||||
|
GLboolean
|
||||||
|
diff --git a/src/mesa/drivers/dri/intel/intel_tex_subimage.c b/src/mesa/drivers/dri/intel/intel_tex_subimage.c
|
||||||
|
index d0f8294..6b7f13f 100644
|
||||||
|
--- a/src/mesa/drivers/dri/intel/intel_tex_subimage.c
|
||||||
|
+++ b/src/mesa/drivers/dri/intel/intel_tex_subimage.c
|
||||||
|
@@ -90,19 +90,19 @@ intelTexSubimage(struct gl_context * ctx,
|
||||||
|
intel->gen < 6 && target == GL_TEXTURE_2D &&
|
||||||
|
drm_intel_bo_busy(dst_bo))
|
||||||
|
{
|
||||||
|
- dstRowStride = width * intelImage->mt->cpp;
|
||||||
|
- temp_bo = drm_intel_bo_alloc(intel->bufmgr, "subimage blit bo",
|
||||||
|
- dstRowStride * height, 0);
|
||||||
|
- if (!temp_bo)
|
||||||
|
- return;
|
||||||
|
-
|
||||||
|
- if (drm_intel_gem_bo_map_gtt(temp_bo)) {
|
||||||
|
- drm_intel_bo_unreference(temp_bo);
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
+ unsigned long pitch;
|
||||||
|
+ uint32_t tiling_mode = I915_TILING_NONE;
|
||||||
|
+ temp_bo = drm_intel_bo_alloc_tiled(intel->bufmgr,
|
||||||
|
+ "subimage blit bo",
|
||||||
|
+ width, height,
|
||||||
|
+ intelImage->mt->cpp,
|
||||||
|
+ &tiling_mode,
|
||||||
|
+ &pitch,
|
||||||
|
+ 0);
|
||||||
|
+ drm_intel_gem_bo_map_gtt(temp_bo);
|
||||||
|
texImage->Data = temp_bo->virtual;
|
||||||
|
texImage->ImageOffsets[0] = 0;
|
||||||
|
+ dstRowStride = pitch;
|
||||||
|
|
||||||
|
intel_miptree_get_image_offset(intelImage->mt, level,
|
||||||
|
intelImage->face, 0,
|
||||||
|
diff --git a/src/mesa/drivers/dri/intel/intel_tex_validate.c b/src/mesa/drivers/dri/intel/intel_tex_validate.c
|
||||||
|
index a11b07e..8537e7f 100644
|
||||||
|
--- a/src/mesa/drivers/dri/intel/intel_tex_validate.c
|
||||||
|
+++ b/src/mesa/drivers/dri/intel/intel_tex_validate.c
|
||||||
|
@@ -140,8 +140,6 @@ intel_finalize_mipmap_tree(struct intel_context *intel, GLuint unit)
|
||||||
|
cpp,
|
||||||
|
comp_byte,
|
||||||
|
GL_TRUE);
|
||||||
|
- if (!intelObj->mt)
|
||||||
|
- return GL_FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Pull in any images not in the object's tree:
|
|
@ -18,7 +18,7 @@
|
||||||
Summary: Mesa graphics libraries
|
Summary: Mesa graphics libraries
|
||||||
Name: mesa
|
Name: mesa
|
||||||
Version: 7.11
|
Version: 7.11
|
||||||
Release: 0.2.%{gitdate}.0%{?dist}
|
Release: 0.3.%{gitdate}.0%{?dist}
|
||||||
License: MIT
|
License: MIT
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
URL: http://www.mesa3d.org
|
URL: http://www.mesa3d.org
|
||||||
|
@ -31,6 +31,7 @@ Source2: %{manpages}.tar.bz2
|
||||||
Source3: make-git-snapshot.sh
|
Source3: make-git-snapshot.sh
|
||||||
Source4: llvmcore.mk
|
Source4: llvmcore.mk
|
||||||
|
|
||||||
|
Patch1: mesa-intel-fix-gs-rendering-regression.patch
|
||||||
Patch2: mesa-7.1-nukeglthread-debug.patch
|
Patch2: mesa-7.1-nukeglthread-debug.patch
|
||||||
Patch3: mesa-no-mach64.patch
|
Patch3: mesa-no-mach64.patch
|
||||||
Patch4: legacy-drivers.patch
|
Patch4: legacy-drivers.patch
|
||||||
|
@ -214,6 +215,7 @@ Requires: Xorg %(xserver-sdk-abi-requires ansic) %(xserver-sdk-abi-requires vide
|
||||||
%prep
|
%prep
|
||||||
#setup -q -n Mesa-%{version}%{?snapshot} -b0 -b2
|
#setup -q -n Mesa-%{version}%{?snapshot} -b0 -b2
|
||||||
%setup -q -n mesa-%{gitdate} -b2
|
%setup -q -n mesa-%{gitdate} -b2
|
||||||
|
%patch1 -p1 -b .upstreamrevert
|
||||||
%patch2 -p1 -b .intel-glthread
|
%patch2 -p1 -b .intel-glthread
|
||||||
%patch3 -p1 -b .no-mach64
|
%patch3 -p1 -b .no-mach64
|
||||||
%patch4 -p1 -b .classic
|
%patch4 -p1 -b .classic
|
||||||
|
@ -485,6 +487,10 @@ rm -rf $RPM_BUILD_ROOT
|
||||||
%{_libdir}/libOSMesa.so
|
%{_libdir}/libOSMesa.so
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Mar 30 2011 Dave Airlie <airlied@redhat.com> 7.11-0.3.20110330.0
|
||||||
|
- mesa-intel-fix-gs-rendering-regression.patch, attempt to fix gnome shell
|
||||||
|
rendering.
|
||||||
|
|
||||||
* Wed Mar 30 2011 Dave Airlie <airlied@redhat.com> 7.11-0.2.20110330.0
|
* Wed Mar 30 2011 Dave Airlie <airlied@redhat.com> 7.11-0.2.20110330.0
|
||||||
- snapshot upstream again to hopefully fix ILK bug
|
- snapshot upstream again to hopefully fix ILK bug
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue