diff --git a/valgrind-3.8.1-ptrace-thread-area.patch b/valgrind-3.8.1-ptrace-thread-area.patch new file mode 100644 index 0000000..c8cba1b --- /dev/null +++ b/valgrind-3.8.1-ptrace-thread-area.patch @@ -0,0 +1,58 @@ +commit f666d20249ff381dfc9bf5a621c544560527af40 +Author: mjw +Date: Wed May 22 10:21:08 2013 +0000 + + Support PTRACE_GET/SET_THREAD_AREA on x86. + BZ#320063. (Josh Stone, jistone@redhat.com) + + git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13403 a5019735-40e9-0310-863c-91ae7b9d1cf9 + +diff --git a/coregrind/m_syswrap/syswrap-x86-linux.c b/coregrind/m_syswrap/syswrap-x86-linux.c +index 7e75899..ed60a15 100644 +--- a/coregrind/m_syswrap/syswrap-x86-linux.c ++++ b/coregrind/m_syswrap/syswrap-x86-linux.c +@@ -1118,6 +1118,10 @@ PRE(sys_ptrace) + PRE_MEM_WRITE( "ptrace(getfpxregs)", ARG4, + sizeof(struct vki_user_fxsr_struct) ); + break; ++ case VKI_PTRACE_GET_THREAD_AREA: ++ PRE_MEM_WRITE( "ptrace(get_thread_area)", ARG4, ++ sizeof(struct vki_user_desc) ); ++ break; + case VKI_PTRACE_SETREGS: + PRE_MEM_READ( "ptrace(setregs)", ARG4, + sizeof (struct vki_user_regs_struct)); +@@ -1130,6 +1134,10 @@ PRE(sys_ptrace) + PRE_MEM_READ( "ptrace(setfpxregs)", ARG4, + sizeof(struct vki_user_fxsr_struct) ); + break; ++ case VKI_PTRACE_SET_THREAD_AREA: ++ PRE_MEM_READ( "ptrace(set_thread_area)", ARG4, ++ sizeof(struct vki_user_desc) ); ++ break; + case VKI_PTRACE_GETEVENTMSG: + PRE_MEM_WRITE( "ptrace(geteventmsg)", ARG4, sizeof(unsigned long)); + break; +@@ -1167,6 +1175,9 @@ POST(sys_ptrace) + case VKI_PTRACE_GETFPXREGS: + POST_MEM_WRITE( ARG4, sizeof(struct vki_user_fxsr_struct) ); + break; ++ case VKI_PTRACE_GET_THREAD_AREA: ++ POST_MEM_WRITE( ARG4, sizeof(struct vki_user_desc) ); ++ break; + case VKI_PTRACE_GETEVENTMSG: + POST_MEM_WRITE( ARG4, sizeof(unsigned long)); + break; +diff --git a/include/vki/vki-x86-linux.h b/include/vki/vki-x86-linux.h +index 7c072d6..adfcb08 100644 +--- a/include/vki/vki-x86-linux.h ++++ b/include/vki/vki-x86-linux.h +@@ -812,6 +812,8 @@ struct vki_shminfo64 { + #define VKI_PTRACE_SETFPREGS 15 + #define VKI_PTRACE_GETFPXREGS 18 + #define VKI_PTRACE_SETFPXREGS 19 ++#define VKI_PTRACE_GET_THREAD_AREA 25 ++#define VKI_PTRACE_SET_THREAD_AREA 26 + + //---------------------------------------------------------------------- + // From linux-2.6.15.4/include/asm-i386/vm86.h diff --git a/valgrind.spec b/valgrind.spec index 4dc3b4e..1e26ceb 100644 --- a/valgrind.spec +++ b/valgrind.spec @@ -169,6 +169,9 @@ Patch42: valgrind-3.8.1-ppc-setxattr.patch # KDE#321738 Add manpages for vgdb and valgrind-listener Patch43: valgrind-3.8.1-new-manpages.patch +# KDE#320063 Support PTRACE_GET/SET_THREAD_AREA on x86. +Patch44: valgrind-3.8.1-ptrace-thread-area.patch + %ifarch x86_64 ppc64 # Ensure glibc{,-devel} is installed for both multilib arches BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so @@ -311,6 +314,7 @@ touch ./memcheck/tests/linux/getregset.stderr.exp %patch41 -p1 %patch42 -p1 %patch43 -p1 +%patch44 -p1 # These tests go into an endless loop on ARM # There is a __sync_add_and_fetch in the testcase. @@ -477,6 +481,7 @@ echo ===============END TESTING=============== - Cleanup valgrind-3.8.1-sigill_diag.patch .orig file changes (#949687). - Add valgrind-3.8.1-ppc-setxattr.patch - Add valgrind-3.8.1-new-manpages.patch +- Add valgrind-3.8.1-ptrace-thread-area.patch * Tue May 28 2013 Michael Schwendt - 1:3.8.1-16 - Provide virtual -static package in -devel subpackage (#609624).