]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Support PTRACE_GET/SET_THREAD_AREA on x86.
authorMark Wielaard <mark@klomp.org>
Wed, 22 May 2013 10:21:08 +0000 (10:21 +0000)
committerMark Wielaard <mark@klomp.org>
Wed, 22 May 2013 10:21:08 +0000 (10:21 +0000)
BZ#320063.  (Josh Stone, jistone@redhat.com)

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13403

coregrind/m_syswrap/syswrap-x86-linux.c
include/vki/vki-x86-linux.h

index 7e7589930f20e2dc35fad593739b0f5fe5d92f2a..ed60a151debcc3721176d96c3b7ef3c293ecc51e 100644 (file)
@@ -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;
index 7c072d6617484eaa1af18829f7e02415f52e8c17..adfcb08cccee988603457c3c3e06dc8f4d6adb61 100644 (file)
@@ -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