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
|
diff -u -r -p tests.orig//Makefile.am tests/Makefile.am
|
||||||
--- tests.orig//Makefile.am 2009-12-01 22:49:53.000000000 +0100
|
--- tests.orig//Makefile.am 2009-12-01 22:49:53.000000000 +0100
|
||||||
+++ tests/Makefile.am 2009-12-01 22:50:07.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
|
LDADD = $(top_builddir)/libdrm.la
|
||||||
|
|
||||||
-noinst_PROGRAMS = \
|
-check_PROGRAMS = \
|
||||||
|
+check_PROGRAMS =
|
||||||
+bin_PROGRAMS = \
|
+bin_PROGRAMS = \
|
||||||
dristat \
|
dristat \
|
||||||
drmstat
|
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
|
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.
|
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
#
|
#
|
||||||
@ -31,13 +31,13 @@ Obsoletes: libdrm23
|
|||||||
Obsoletes: libdrm-64bit
|
Obsoletes: libdrm-64bit
|
||||||
%endif
|
%endif
|
||||||
#
|
#
|
||||||
Version: 2.4.20
|
Version: 2.4.21
|
||||||
Release: 2
|
Release: 1
|
||||||
Summary: Userspace Interface for Kernel DRM Services
|
Summary: Userspace Interface for Kernel DRM Services
|
||||||
Source: %{name}-%{version}.tar.bz2
|
Source: %{name}-%{version}-726210f.tar.bz2
|
||||||
Source2: baselibs.conf
|
Source2: baselibs.conf
|
||||||
Patch: enable_test_tools.diff
|
Patch: enable_test_tools.diff
|
||||||
Patch1: commit-3506173.diff
|
Patch1: libdrm-204c76c.diff
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -63,7 +63,7 @@ services.
|
|||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch
|
%patch
|
||||||
%patch1 -p1
|
%patch1 -p1 -R
|
||||||
|
|
||||||
%build
|
%build
|
||||||
autoreconf -fi
|
autoreconf -fi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user