From 5f110c02f1e966e68c6389dbfe2b5aee7fd59835 Mon Sep 17 00:00:00 2001 From: Jovi Zhang Date: Wed, 18 Jul 2012 18:16:44 +0800 Subject: [PATCH] --- yaml --- r: 349845 b: refs/heads/master c: d24d7dbf3cc49b00a152e55e24f0eeb173c7a971 h: refs/heads/master i: 349843: cb17c00d4c75a9b0f8ad5134b02d22c9a7edb95a v: v3 --- [refs] | 2 +- trunk/kernel/trace/trace_uprobe.c | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 8e400a3f532f..b3f7cea753f3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d8a0349c0cea477322c66ea9362f10c62fad5f62 +refs/heads/master: d24d7dbf3cc49b00a152e55e24f0eeb173c7a971 diff --git a/trunk/kernel/trace/trace_uprobe.c b/trunk/kernel/trace/trace_uprobe.c index c86e6d4f67fb..87b6db4ccbc5 100644 --- a/trunk/kernel/trace/trace_uprobe.c +++ b/trunk/kernel/trace/trace_uprobe.c @@ -258,6 +258,10 @@ static int create_trace_uprobe(int argc, char **argv) goto fail_address_parse; inode = igrab(path.dentry->d_inode); + if (!S_ISREG(inode->i_mode)) { + ret = -EINVAL; + goto fail_address_parse; + } argc -= 2; argv += 2; @@ -356,7 +360,7 @@ static int create_trace_uprobe(int argc, char **argv) if (inode) iput(inode); - pr_info("Failed to parse address.\n"); + pr_info("Failed to parse address or file.\n"); return ret; }