diff options
-rw-r--r-- | kernel/trace/trace_uprobe.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/kernel/trace/trace_uprobe.c b/kernel/trace/trace_uprobe.c index eb7e06b54741..a88c692e3b8a 100644 --- a/kernel/trace/trace_uprobe.c +++ b/kernel/trace/trace_uprobe.c | |||
@@ -443,10 +443,17 @@ static int trace_uprobe_create(int argc, const char **argv) | |||
443 | ret = 0; | 443 | ret = 0; |
444 | ref_ctr_offset = 0; | 444 | ref_ctr_offset = 0; |
445 | 445 | ||
446 | /* argc must be >= 1 */ | 446 | switch (argv[0][0]) { |
447 | if (argv[0][0] == 'r') | 447 | case 'r': |
448 | is_return = true; | 448 | is_return = true; |
449 | else if (argv[0][0] != 'p' || argc < 2) | 449 | break; |
450 | case 'p': | ||
451 | break; | ||
452 | default: | ||
453 | return -ECANCELED; | ||
454 | } | ||
455 | |||
456 | if (argc < 2) | ||
450 | return -ECANCELED; | 457 | return -ECANCELED; |
451 | 458 | ||
452 | if (argv[0][1] == ':') | 459 | if (argv[0][1] == ':') |