2008-01-08 10:51:39

by Metzger, Markus T

[permalink] [raw]
Subject: [patch 1/2] 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 <[email protected]>
---

Index: linux-2.6-x86/arch/x86/kernel/ptrace.c
===================================================================
--- linux-2.6-x86.orig/arch/x86/kernel/ptrace.c 2008-01-07 12:42:39.%N +0100
+++ linux-2.6-x86/arch/x86/kernel/ptrace.c 2008-01-08 11:18:35.%N +0100
@@ -787,6 +787,8 @@
cfg.flags |= PTRACE_BTS_O_SCHED;
}

+ cfg.bts_size = sizeof(struct bts_struct);
+
if (copy_to_user(ucfg, &cfg, sizeof(cfg)))
return -EFAULT;

Index: linux-2.6-x86/include/asm-x86/ptrace-abi.h
===================================================================
--- linux-2.6-x86.orig/include/asm-x86/ptrace-abi.h 2008-01-07 12:42:39.%N +0100
+++ linux-2.6-x86/include/asm-x86/ptrace-abi.h 2008-01-08 11:42:55.%N +0100
@@ -81,16 +81,21 @@
#define PTRACE_SINGLEBLOCK 33 /* resume execution until next branch */

#ifndef __ASSEMBLY__
+
+#include <asm/types.h>
+
/* configuration/status structure used in PTRACE_BTS_CONFIG and
PTRACE_BTS_STATUS commands.
*/
struct ptrace_bts_config {
/* requested or actual size of BTS buffer in bytes */
- unsigned int size;
+ u32 size;
/* bitmask of below flags */
- unsigned int flags;
+ u32 flags;
/* buffer overflow signal */
- unsigned int signal;
+ u32 signal;
+ /* actual size of bts_struct in bytes */
+ u32 bts_size;
};
#endif

---------------------------------------------------------------------
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen Germany
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Douglas Lusk, Peter Gleissner, Hannes Schwaderer
Registergericht: Muenchen HRB 47456 Ust.-IdNr.
VAT Registration No.: DE129385895
Citibank Frankfurt (BLZ 502 109 00) 600119052

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.