[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <cover.1268749695.git.jbaron@redhat.com>
Date: Tue, 16 Mar 2010 13:46:08 -0400
From: Jason Baron <jbaron@...hat.com>
To: fweisbec@...il.com, mingo@...e.hu, rostedt@...dmis.org
Cc: linux-kernel@...r.kernel.org, laijs@...fujitsu.com,
lizf@...fujitsu.com, hpa@...or.com, tglx@...utronix.de,
mhiramat@...hat.com, heiko.carstens@...ibm.com,
benh@...nel.crashing.org, davem@...emloft.net, lethal@...ux-sh.org,
schwidefsky@...ibm.com, brueckner@...ux.vnet.ibm.com,
tony.luck@...el.com
Subject: [PATCH 00/14] tracing: add compat syscall support v3
Hi,
Re-post to add infrastructure for compat syscall event tracing support. This
patch series also adds x86_64 arch specific support as an example consumer
of the new infrastructure.
Arches can request compat syscall tracing by setting:
__HAVE_ARCH_FTRACE_COMPAT_SYSCALLS, if CONFIG_COMPAT and CONFIG_FTRACE_SYSCALLS
are set. Arches then need to implement the following interfaces:
1) int is_compat_task(void);
- most arches seem to have this already
2) unsigned long arch_compat_syscall_addr(int nr);
- returns a pointer to the compat syscall entry corresponding to syscall 'nr'
3) int NR_syscalls_compat;
- number of entries in the compat syscall table.
thanks,
-Jason
Changes in v3:
- create a separate "compat_syscalls" event subsystem
- ARCH_COMPAT_SYSCALL_DEFINE#N() tacks "sys32" to start of syscall name
- COMPAT_SYSCALL_DEFINE#N() tacks "compat_sys" to start of syscall name
- both above macros create perf events as: [enter|exit]_compat_sys_blah
- non-compat syscall naming changes to: [enter|exit]_sys_blah
- removes any unreferenced compat syscalls from debugfs
Heiko Carstens (1):
compat: have generic is_compat_task for !CONFIG_COMPAT
Jason Baron (13):
x86: add NR_syscalls_compat, make ia32 syscall table visible
x86: add arch_compat_syscall_addr()
tracing: remove syscall bitmaps in preparation for compat support
tracing: move __start_ftrace_events and __stop_ftrace_events to
header file
tracing: add tracing support for compat syscalls
syscalls: add ARCH_COMPAT_SYSCALL_DEFINE()
x86, compat: convert ia32 layer to use
syscalls: add new COMPAT_SYSCALL_DEFINE#N() macro
compat: convert to use COMPAT_SYSCALL_DEFINE#N()
compat: convert fs compat to use COMPAT_SYSCALL_DEFINE#N() macros
tags: recognize compat syscalls
cleanup: remove arg from TRACE_SYS_ENTER_PROFILE_INIT() macro
tracing: make a "compat_syscalls" tracing subsys
arch/s390/include/asm/compat.h | 7 --
arch/s390/kernel/ptrace.c | 2 +-
arch/s390/kernel/setup.c | 2 +-
arch/s390/mm/mmap.c | 2 +-
arch/x86/ia32/ia32entry.S | 3 +
arch/x86/ia32/sys_ia32.c | 106 ++++++++++++++--------------
arch/x86/include/asm/compat.h | 2 +
arch/x86/include/asm/syscall.h | 5 ++
arch/x86/kernel/ftrace.c | 8 ++
drivers/s390/block/dasd_eckd.c | 2 +-
drivers/s390/block/dasd_ioctl.c | 1 +
drivers/s390/char/fs3270.c | 1 +
drivers/s390/char/vmcp.c | 1 +
drivers/s390/cio/chsc_sch.c | 1 +
drivers/s390/scsi/zfcp_cfdc.c | 1 +
fs/compat.c | 147 +++++++++++++++++++--------------------
include/linux/compat.h | 9 +++
include/linux/ftrace_event.h | 3 +
include/linux/syscalls.h | 91 +++++++++++++++++-------
include/trace/syscall.h | 8 ++
kernel/compat.c | 106 ++++++++++++++---------------
kernel/trace/trace.h | 2 +
kernel/trace/trace_events.c | 3 -
kernel/trace/trace_syscalls.c | 124 +++++++++++++++++++++++++--------
scripts/tags.sh | 8 ++-
25 files changed, 392 insertions(+), 253 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists