aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Metzger <markus.t.metzger@intel.com>2008-01-30 07:32:54 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:32:54 -0500
commit87e8407f9ad2a2df901c4b690ab0a2bf0fb168c5 (patch)
tree38062bd2812090da5cb0b5dc2fb85373efb7c221
parent58f6f6ea1d5031f998b5e7d640d7bc45ed86d0c8 (diff)
x86, ptrace: add bts_struct size to status command
Return the size of bts_struct in the PTRACE_BTS_STATUS command. Change types to u32. Signed-off-by: Markus Metzger <markus.t.metzger@intel.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/ptrace.c2
-rw-r--r--include/asm-x86/ptrace-abi.h11
2 files changed, 10 insertions, 3 deletions
diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c
index e19a91db9b35..96286df1bb81 100644
--- a/arch/x86/kernel/ptrace.c
+++ b/arch/x86/kernel/ptrace.c
@@ -787,6 +787,8 @@ static int ptrace_bts_status(struct task_struct *child,
787 cfg.flags |= PTRACE_BTS_O_SCHED; 787 cfg.flags |= PTRACE_BTS_O_SCHED;
788 } 788 }
789 789
790 cfg.bts_size = sizeof(struct bts_struct);
791
790 if (copy_to_user(ucfg, &cfg, sizeof(cfg))) 792 if (copy_to_user(ucfg, &cfg, sizeof(cfg)))
791 return -EFAULT; 793 return -EFAULT;
792 794
diff --git a/include/asm-x86/ptrace-abi.h b/include/asm-x86/ptrace-abi.h
index 08a12b790a77..81a8ee4c55fc 100644
--- a/include/asm-x86/ptrace-abi.h
+++ b/include/asm-x86/ptrace-abi.h
@@ -81,16 +81,21 @@
81#define PTRACE_SINGLEBLOCK 33 /* resume execution until next branch */ 81#define PTRACE_SINGLEBLOCK 33 /* resume execution until next branch */
82 82
83#ifndef __ASSEMBLY__ 83#ifndef __ASSEMBLY__
84
85#include <asm/types.h>
86
84/* configuration/status structure used in PTRACE_BTS_CONFIG and 87/* configuration/status structure used in PTRACE_BTS_CONFIG and
85 PTRACE_BTS_STATUS commands. 88 PTRACE_BTS_STATUS commands.
86*/ 89*/
87struct ptrace_bts_config { 90struct ptrace_bts_config {
88 /* requested or actual size of BTS buffer in bytes */ 91 /* requested or actual size of BTS buffer in bytes */
89 unsigned int size; 92 u32 size;
90 /* bitmask of below flags */ 93 /* bitmask of below flags */
91 unsigned int flags; 94 u32 flags;
92 /* buffer overflow signal */ 95 /* buffer overflow signal */
93 unsigned int signal; 96 u32 signal;
97 /* actual size of bts_struct in bytes */
98 u32 bts_size;
94}; 99};
95#endif 100#endif
96 101