Accepting request 42059 from X11:XOrg
Copy from X11:XOrg/libdrm based on submit request 42059 from user sndirsch OBS-URL: https://build.opensuse.org/request/show/42059 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libdrm?expand=0&rev=31
This commit is contained in:
commit
6898ba87f9
@ -1,54 +0,0 @@
|
||||
commit 3506173ba7e726a9d0a17ec42734a925a885b01e
|
||||
Author: Chris Wilson <chris@chris-wilson.co.uk>
|
||||
Date: Sun Apr 11 18:40:38 2010 +0100
|
||||
|
||||
intel: Use the correct size when allocating reloc_target_info array
|
||||
|
||||
Thomas tracked down this error with kdm and commit b509640:
|
||||
|
||||
==4320== Invalid write of size 8
|
||||
==4320== at 0x9A97998: do_bo_emit_reloc (in /usr/lib/libdrm_intel.so.1.0.0)
|
||||
==4320== by 0x9A97B9C: drm_intel_gem_bo_emit_reloc (in /usr/lib/libdrm_intel.so.1.0.0)
|
||||
==4320== by 0xAED3234: intel_batchbuffer_emit_reloc (in /usr/lib/xorg/modules/dri/i965_dri.so)
|
||||
==4320== by 0xAF13827: brw_emit_vertices (in /usr/lib/xorg/modules/dri/i965_dri.so)
|
||||
==4320== by 0xAF1F14D: brw_upload_state (in /usr/lib/xorg/modules/dri/i965_dri.so)
|
||||
==4320== by 0xAF12122: brw_draw_prims (in /usr/lib/xorg/modules/dri/i965_dri.so)
|
||||
==4320== by 0xB256824: vbo_exec_vtx_flush (in /usr/lib/xorg/modules/dri/libdricore.so)
|
||||
==4320== by 0xB2523BB: vbo_exec_FlushVertices_internal (in /usr/lib/xorg/modules/dri/libdricore.so)
|
||||
==4320== by 0xB252411: vbo_exec_FlushVertices (in /usr/lib/xorg/modules/dri/libdricore.so)
|
||||
==4320== by 0xB195A3D: _mesa_PopAttrib (in /usr/lib/xorg/modules/dri/libdricore.so)
|
||||
==4320== by 0x8DF0F02: __glXDisp_Render (in /usr/lib/xorg/modules/extensions/libglx.xorg)
|
||||
==4320== by 0x8DF517F: __glXDispatch (in /usr/lib/xorg/modules/extensions/libglx.xorg)
|
||||
==4320== Address 0x126a8b80 is 0 bytes after a block of size 16,368 alloc'd
|
||||
==4320== at 0x4C23E03: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
|
||||
==4320== by 0x9A97A64: do_bo_emit_reloc (in /usr/lib/libdrm_intel.so.1.0.0)
|
||||
==4320== by 0x9A97B9C: drm_intel_gem_bo_emit_reloc (in /usr/lib/libdrm_intel.so.1.0.0)
|
||||
==4320== by 0xAED3234: intel_batchbuffer_emit_reloc (in /usr/lib/xorg/modules/dri/i965_dri.so)
|
||||
==4320== by 0xAF191DB: upload_binding_table_pointers (in /usr/lib/xorg/modules/dri/i965_dri.so)
|
||||
==4320== by 0xAF1F14D: brw_upload_state (in /usr/lib/xorg/modules/dri/i965_dri.so)
|
||||
==4320== by 0xAF12122: brw_draw_prims (in /usr/lib/xorg/modules/dri/i965_dri.so)
|
||||
==4320== by 0xB255EF6: vbo_exec_DrawArrays (in /usr/lib/xorg/modules/dri/libdricore.so)
|
||||
==4320== by 0x8DF67A3: __glXDisp_DrawArrays (in /usr/lib/xorg/modules/extensions/libglx.xorg)
|
||||
==4320== by 0x8DF0F02: __glXDisp_Render (in /usr/lib/xorg/modules/extensions/libglx.xorg)
|
||||
==4320== by 0x8DF517F: __glXDispatch (in /usr/lib/xorg/modules/extensions/libglx.xorg)
|
||||
==4320== by 0x446293: ??? (in /usr/bin/Xorg)
|
||||
|
||||
which is simply due to only allocating space for the pointers and not
|
||||
the structs themselves. D'oh.
|
||||
|
||||
Reported-by: Thomas Bächler <thomas@archlinux.org>
|
||||
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
||||
|
||||
diff --git a/intel/intel_bufmgr_gem.c b/intel/intel_bufmgr_gem.c
|
||||
index 8e46e37..a2cf6e6 100644
|
||||
--- a/intel/intel_bufmgr_gem.c
|
||||
+++ b/intel/intel_bufmgr_gem.c
|
||||
@@ -470,7 +470,7 @@ drm_intel_setup_reloc_list(drm_intel_bo *bo)
|
||||
bo_gem->relocs = malloc(max_relocs *
|
||||
sizeof(struct drm_i915_gem_relocation_entry));
|
||||
bo_gem->reloc_target_info = malloc(max_relocs *
|
||||
- sizeof(drm_intel_reloc_target *));
|
||||
+ sizeof(drm_intel_reloc_target));
|
||||
if (bo_gem->relocs == NULL || bo_gem->reloc_target_info == NULL) {
|
||||
bo_gem->has_error = 1;
|
||||
|
@ -1,11 +1,12 @@
|
||||
diff -u -r -p tests.orig//Makefile.am tests/Makefile.am
|
||||
--- tests.orig//Makefile.am 2009-12-01 22:49:53.000000000 +0100
|
||||
+++ tests/Makefile.am 2009-12-01 22:50:07.000000000 +0100
|
||||
@@ -6,7 +6,7 @@ AM_CPPFLAGS = \
|
||||
@@ -6,7 +6,8 @@ AM_CPPFLAGS = \
|
||||
|
||||
LDADD = $(top_builddir)/libdrm.la
|
||||
|
||||
-noinst_PROGRAMS = \
|
||||
-check_PROGRAMS = \
|
||||
+check_PROGRAMS =
|
||||
+bin_PROGRAMS = \
|
||||
dristat \
|
||||
drmstat
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:24b5316839c1d459066eaee160132d45931462e301740a660932907350415cb9
|
||||
size 400812
|
3
libdrm-2.4.21-726210f.tar.bz2
Normal file
3
libdrm-2.4.21-726210f.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7b610d620f149ad78242b80ee588817a130ed09e911393d4cc172254c8a9e40c
|
||||
size 388119
|
9047
libdrm-204c76c.diff
Normal file
9047
libdrm-204c76c.diff
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,19 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 24 16:57:19 CEST 2010 - sndirsch@suse.de
|
||||
|
||||
- updated to git master commit #726210f
|
||||
* various tiling related fixes for intel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 15 12:10:49 CEST 2010 - sndirsch@suse.de
|
||||
|
||||
- libdrm 2.4.21
|
||||
- obsoletes commit-3506173.diff
|
||||
- adjusted enable_test_tools.diff
|
||||
- libdrm-204c76c.diff (reverse applied)
|
||||
* old nouveau gallium driver in Mesa still requires
|
||||
nouveau_class.h in libdrm
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 31 22:08:35 CEST 2010 - sndirsch@suse.de
|
||||
|
||||
|
12
libdrm.spec
12
libdrm.spec
@ -1,5 +1,5 @@
|
||||
#
|
||||
# spec file for package libdrm (Version 2.4.20)
|
||||
# spec file for package libdrm (Version 2.4.21)
|
||||
#
|
||||
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
@ -31,13 +31,13 @@ Obsoletes: libdrm23
|
||||
Obsoletes: libdrm-64bit
|
||||
%endif
|
||||
#
|
||||
Version: 2.4.20
|
||||
Release: 2
|
||||
Version: 2.4.21
|
||||
Release: 1
|
||||
Summary: Userspace Interface for Kernel DRM Services
|
||||
Source: %{name}-%{version}.tar.bz2
|
||||
Source: %{name}-%{version}-726210f.tar.bz2
|
||||
Source2: baselibs.conf
|
||||
Patch: enable_test_tools.diff
|
||||
Patch1: commit-3506173.diff
|
||||
Patch1: libdrm-204c76c.diff
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
%description
|
||||
@ -63,7 +63,7 @@ services.
|
||||
%prep
|
||||
%setup -q
|
||||
%patch
|
||||
%patch1 -p1
|
||||
%patch1 -p1 -R
|
||||
|
||||
%build
|
||||
autoreconf -fi
|
||||
|
Loading…
x
Reference in New Issue
Block a user