[ 3.5.y.z extended stable ] Patch "uprobes: Fix return value in error handling path" has been added to staging queue

Luis Henriques luis.henriques at canonical.com
Wed Jul 24 09:11:32 UTC 2013


This is a note to let you know that I have just added a patch titled

    uprobes: Fix return value in error handling path

to the linux-3.5.y-queue branch of the 3.5.y.z extended stable tree 
which can be found at:

 http://kernel.ubuntu.com/git?p=ubuntu/linux.git;a=shortlog;h=refs/heads/linux-3.5.y-queue

If you, or anyone else, feels it should not be added to this tree, please 
reply to this email.

For more information about the 3.5.y.z tree, see
https://wiki.ubuntu.com/Kernel/Dev/ExtendedStable

Thanks.
-Luis

------

>From 607057ef2a1f84d65b0ffc4a6fe76f3a2fd200fb Mon Sep 17 00:00:00 2001
From: "zhangwei(Jovi)" <jovi.zhangwei at huawei.com>
Date: Thu, 13 Jun 2013 14:21:51 +0800
Subject: [PATCH] uprobes: Fix return value in error handling path

commit fa44063f9ef163c3a4c8d8c0465bb8a056b42035 upstream.

When wrong argument is passed into uprobe_events it does not return
an error:

[root at jovi tracing]# echo 'p:myprobe /bin/bash' > uprobe_events
[root at jovi tracing]#

The proper response is:

[root at jovi tracing]# echo 'p:myprobe /bin/bash' > uprobe_events
-bash: echo: write error: Invalid argument

Link: http://lkml.kernel.org/r/51B964FF.5000106@huawei.com

Cc: Frederic Weisbecker <fweisbec at gmail.com>
Cc: <srikar at linux.vnet.ibm.com>
Signed-off-by: zhangwei(Jovi) <jovi.zhangwei at huawei.com>
Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
Signed-off-by: Luis Henriques <luis.henriques at canonical.com>
---
 kernel/trace/trace_uprobe.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/kernel/trace/trace_uprobe.c b/kernel/trace/trace_uprobe.c
index 2b36ac6..5c83613 100644
--- a/kernel/trace/trace_uprobe.c
+++ b/kernel/trace/trace_uprobe.c
@@ -243,8 +243,10 @@ static int create_trace_uprobe(int argc, char **argv)
 		return -EINVAL;
 	}
 	arg = strchr(argv[1], ':');
-	if (!arg)
+	if (!arg) {
+		ret = -EINVAL;
 		goto fail_address_parse;
+	}

 	*arg++ = '\0';
 	filename = argv[1];
--
1.8.1.2





More information about the kernel-team mailing list