All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tracing/syscalls: fix perf syscall tracing when syscall_nr == -1
@ 2012-08-16 17:14 Will Deacon
  2012-08-21 16:28 ` [tip:perf/urgent] tracing/syscalls: Fix " tip-bot for Will Deacon
  0 siblings, 1 reply; 2+ messages in thread
From: Will Deacon @ 2012-08-16 17:14 UTC (permalink / raw)
  To: linux-kernel
  Cc: Will Deacon, Jason Baron, Wade Farnsworth, Steven Rostedt,
	Frederic Weisbecker

syscall_get_nr can return -1 in the case that the task is not executing
a system call.

This patch fixes perf_syscall_{enter,exit} to check that the syscall
number is valid before using it as an index into a bitmap.

Cc: Jason Baron <jbaron@redhat.com>
Cc: Wade Farnsworth <wade_farnsworth@mentor.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
---
 kernel/trace/trace_syscalls.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/kernel/trace/trace_syscalls.c b/kernel/trace/trace_syscalls.c
index 96fc733..4bc7d92 100644
--- a/kernel/trace/trace_syscalls.c
+++ b/kernel/trace/trace_syscalls.c
@@ -506,6 +506,8 @@ static void perf_syscall_enter(void *ignore, struct pt_regs *regs, long id)
 	int size;
 
 	syscall_nr = syscall_get_nr(current, regs);
+	if (syscall_nr < 0)
+		return;
 	if (!test_bit(syscall_nr, enabled_perf_enter_syscalls))
 		return;
 
@@ -580,6 +582,8 @@ static void perf_syscall_exit(void *ignore, struct pt_regs *regs, long ret)
 	int size;
 
 	syscall_nr = syscall_get_nr(current, regs);
+	if (syscall_nr < 0)
+		return;
 	if (!test_bit(syscall_nr, enabled_perf_exit_syscalls))
 		return;
 
-- 
1.7.4.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [tip:perf/urgent] tracing/syscalls: Fix perf syscall tracing when syscall_nr == -1
  2012-08-16 17:14 [PATCH] tracing/syscalls: fix perf syscall tracing when syscall_nr == -1 Will Deacon
@ 2012-08-21 16:28 ` tip-bot for Will Deacon
  0 siblings, 0 replies; 2+ messages in thread
From: tip-bot for Will Deacon @ 2012-08-21 16:28 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: linux-kernel, hpa, mingo, will.deacon, wade_farnsworth, fweisbec,
	rostedt, tglx, jbaron

Commit-ID:  60916a9382e88fbf5e54fd36a3e658efd7ab7bed
Gitweb:     http://git.kernel.org/tip/60916a9382e88fbf5e54fd36a3e658efd7ab7bed
Author:     Will Deacon <will.deacon@arm.com>
AuthorDate: Thu, 16 Aug 2012 18:14:14 +0100
Committer:  Steven Rostedt <rostedt@goodmis.org>
CommitDate: Fri, 17 Aug 2012 15:19:46 -0400

tracing/syscalls: Fix perf syscall tracing when syscall_nr == -1

syscall_get_nr can return -1 in the case that the task is not executing
a system call.

This patch fixes perf_syscall_{enter,exit} to check that the syscall
number is valid before using it as an index into a bitmap.

Link: http://lkml.kernel.org/r/1345137254-7377-1-git-send-email-will.deacon@arm.com

Cc: Jason Baron <jbaron@redhat.com>
Cc: Wade Farnsworth <wade_farnsworth@mentor.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 kernel/trace/trace_syscalls.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/kernel/trace/trace_syscalls.c b/kernel/trace/trace_syscalls.c
index 60e4d78..6b245f64 100644
--- a/kernel/trace/trace_syscalls.c
+++ b/kernel/trace/trace_syscalls.c
@@ -506,6 +506,8 @@ static void perf_syscall_enter(void *ignore, struct pt_regs *regs, long id)
 	int size;
 
 	syscall_nr = syscall_get_nr(current, regs);
+	if (syscall_nr < 0)
+		return;
 	if (!test_bit(syscall_nr, enabled_perf_enter_syscalls))
 		return;
 
@@ -580,6 +582,8 @@ static void perf_syscall_exit(void *ignore, struct pt_regs *regs, long ret)
 	int size;
 
 	syscall_nr = syscall_get_nr(current, regs);
+	if (syscall_nr < 0)
+		return;
 	if (!test_bit(syscall_nr, enabled_perf_exit_syscalls))
 		return;
 

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-08-21 16:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-16 17:14 [PATCH] tracing/syscalls: fix perf syscall tracing when syscall_nr == -1 Will Deacon
2012-08-21 16:28 ` [tip:perf/urgent] tracing/syscalls: Fix " tip-bot for Will Deacon

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.