perf probe: Fix line range description since a single file is allowed
$ perf-probe -L sched.c is currently allowed but not documented. Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> LKML-Reference: <1292854685-8230-5-git-send-email-fbuihuu@gmail.com> Signed-off-by: Franck Bui-Huu <fbuihuu@gmail.com> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
44b81e929b
commit
9d95b580a8
|
@ -117,7 +117,7 @@ LINE SYNTAX
|
||||||
-----------
|
-----------
|
||||||
Line range is described by following syntax.
|
Line range is described by following syntax.
|
||||||
|
|
||||||
"FUNC[:RLN[+NUM|-RLN2]]|SRC:ALN[+NUM|-ALN2]"
|
"FUNC[:RLN[+NUM|-RLN2]]|SRC[:ALN[+NUM|-ALN2]]"
|
||||||
|
|
||||||
FUNC specifies the function name of showing lines. 'RLN' is the start line
|
FUNC specifies the function name of showing lines. 'RLN' is the start line
|
||||||
number from function entry line, and 'RLN2' is the end line number. As same as
|
number from function entry line, and 'RLN2' is the end line number. As same as
|
||||||
|
|
|
@ -515,15 +515,18 @@ int show_available_vars(struct perf_probe_event *pevs __unused,
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Stuff 'lr' according to the line range described by 'arg'.
|
||||||
|
* The line range syntax is described by:
|
||||||
|
*
|
||||||
|
* SRC[:SLN[+NUM|-ELN]]
|
||||||
|
* FNC[:SLN[+NUM|-ELN]]
|
||||||
|
*/
|
||||||
int parse_line_range_desc(const char *arg, struct line_range *lr)
|
int parse_line_range_desc(const char *arg, struct line_range *lr)
|
||||||
{
|
{
|
||||||
const char *ptr;
|
const char *ptr;
|
||||||
char *tmp;
|
char *tmp;
|
||||||
/*
|
|
||||||
* <Syntax>
|
|
||||||
* SRC:SLN[+NUM|-ELN]
|
|
||||||
* FUNC[:SLN[+NUM|-ELN]]
|
|
||||||
*/
|
|
||||||
ptr = strchr(arg, ':');
|
ptr = strchr(arg, ':');
|
||||||
if (ptr) {
|
if (ptr) {
|
||||||
lr->start = (int)strtoul(ptr + 1, &tmp, 0);
|
lr->start = (int)strtoul(ptr + 1, &tmp, 0);
|
||||||
|
|
Loading…
Reference in a new issue