- libdrm 2.4.21

- obsoletes commit-3506173.diff
- adjusted enable_test_tools.diff

OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/libdrm?expand=0&rev=52
This commit is contained in:
Stefan Dirsch 2010-06-15 10:47:07 +00:00 committed by Git OBS Bridge
parent 90f0cf8df6
commit 9c28e49fa0
6 changed files with 16 additions and 64 deletions

View File

@ -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;

View File

@ -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

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:24b5316839c1d459066eaee160132d45931462e301740a660932907350415cb9
size 400812

3
libdrm-2.4.21.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4e1b612ba3b6b1deae4a8c14946099283e7a00e48a5ab002eaf4312f5a8ba14b
size 397490

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Tue Jun 15 12:10:49 CEST 2010 - sndirsch@suse.de
- libdrm 2.4.21
- obsoletes commit-3506173.diff
- adjusted enable_test_tools.diff
-------------------------------------------------------------------
Mon May 31 22:08:35 CEST 2010 - sndirsch@suse.de

View File

@ -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,12 @@ 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
Source2: baselibs.conf
Patch: enable_test_tools.diff
Patch1: commit-3506173.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@ -63,7 +62,6 @@ services.
%prep
%setup -q
%patch
%patch1 -p1
%build
autoreconf -fi