linux-stable/tools/perf
Masami Hiramatsu (Google) 080e47b2a2 perf probe: Introduce quotation marks support
In non-C languages, it is possible to have ':' in the function names.

It is possible to escape it with backslashes, but if there are too many
backslashes, it is annoying.

This introduce quotation marks (`"` or `'`) support.

For example, without quotes, we have to pass it as below

  $ perf probe -x cro3 -L "cro3\:\:cmd\:\:servo\:\:run_show"
  <run_show@/work/cro3/src/cmd/servo.rs:0>
        0  fn run_show(args: &ArgsShow) -> Result<()> {
        1      let list = ServoList::discover()?;
        2      let s = list.find_by_serial(&args.servo)?;
        3      if args.json {
        4          println!("{s}");

With quotes, we can more naturally write the function name as below;

  $ perf probe -x cro3 -L \"cro3::cmd::servo::run_show\"
  <run_show@/work/cro3/src/cmd/servo.rs:0>
        0  fn run_show(args: &ArgsShow) -> Result<()> {
        1      let list = ServoList::discover()?;
        2      let s = list.find_by_serial(&args.servo)?;
        3      if args.json {
        4          println!("{s}");

Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Alexander Lobakin <aleksander.lobakin@intel.com>
Cc: Dima Kogan <dima@secretsauce.net>
Cc: Ian Rogers <irogers@google.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Link: https://lore.kernel.org/r/173099116941.2431889.11609129616090100386.stgit@mhiramat.roam.corp.google.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2024-11-14 16:56:32 -03:00
..
arch perf build: Remove PERF_HAVE_DWARF_REGS 2024-11-09 08:39:14 -08:00
bench perf tools: sched-pipe bench: add (-n) nonblocking benchmark 2024-10-21 21:23:01 -07:00
check-header_ignore_hunks/lib perf tools: Cope with differences for lib/list_sort.c copy from the kernel 2024-10-02 15:07:32 -03:00
dlfilters perf tools: Simplify evsel__add_modifier() 2024-10-22 09:52:11 -07:00
Documentation perf disasm: Allow configuring what disassemblers to use 2024-11-13 16:27:35 -03:00
include/perf perf dlfilter: Add al_cleanup() 2023-08-15 16:41:49 -03:00
jvmti
pmu-events perf vendor events arm64: Add i.MX91 DDR Performance Monitor metrics 2024-10-28 09:37:02 -07:00
python
scripts perf script python: Adjust objdump start/end per map pgoff parameter 2024-11-08 22:42:57 -08:00
tests perf test: Add hwmon "PMU" test 2024-11-09 08:28:03 -08:00
trace perf beauty: Update copy of linux/socket.h with the kernel sources 2024-09-30 17:23:38 -03:00
ui perf tools: Print lost samples due to BPF filter 2024-08-28 18:07:20 -03:00
util perf probe: Introduce quotation marks support 2024-11-14 16:56:32 -03:00
.gitignore perf tools: Add the empty-pmu-events build to .gitignore 2024-11-07 10:51:56 -08:00
Build perf check: Introduce 'check' subcommand 2024-09-04 09:56:05 -03:00
builtin-annotate.c perf build: Rename HAVE_DWARF_SUPPORT to HAVE_LIBDW_SUPPORT 2024-10-18 10:17:40 -07:00
builtin-bench.c perf bench uprobe: Add uretprobe variant of uprobe benchmarks 2024-04-12 17:54:02 -03:00
builtin-buildid-cache.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
builtin-buildid-list.c perf buildid-list: Use perf_tool__init 2024-08-12 18:07:10 -03:00
builtin-c2c.c perf mem: Fix missed p-core mem events on ADL and RPL 2024-09-06 11:45:17 -03:00
builtin-check.c perf build: Rename HAVE_DWARF_SUPPORT to HAVE_LIBDW_SUPPORT 2024-10-18 10:17:40 -07:00
builtin-config.c perf path: Make mkpath thread safe, remove 16384 bytes from .bss 2023-05-28 10:24:14 -03:00
builtin-daemon.c perf daemon: Fix the build on more 32-bit architectures 2024-08-19 21:44:30 -03:00
builtin-data.c perf util: Move input_name to util 2023-04-10 19:21:31 -03:00
builtin-diff.c perf evsel: Add alternate_hw_config and use in evsel__match 2024-09-26 13:26:11 -07:00
builtin-evlist.c perf evlist: Print hint for group 2024-09-11 13:08:45 -03:00
builtin-ftrace.c perf ftrace latency: Fix unit on histogram first entry when using --use-nsec 2024-10-30 23:46:43 -07:00
builtin-help.c perf help: Fix a typo ("bellow") 2024-09-11 11:24:12 -03:00
builtin-inject.c perf callchain: Allow symbols to be optional when resolving a callchain 2024-09-10 17:32:47 -03:00
builtin-kallsyms.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
builtin-kmem.c perf build: Include libtraceevent headers directly indicated by pkg-config 2024-11-08 22:42:57 -08:00
builtin-kvm.c perf tools: Don't set attr.exclude_guest by default 2024-10-22 09:52:11 -07:00
builtin-kwork.c perf build: Include libtraceevent headers directly indicated by pkg-config 2024-11-08 22:42:57 -08:00
builtin-list.c perf list: Fix topic and pmu_name argument order 2024-11-13 16:27:35 -03:00
builtin-lock.c libsubcmd: Don't free the usage string 2024-09-04 09:54:24 -03:00
builtin-mem.c perf mem: Fix the wrong reference in parse_record_events() 2024-09-06 11:45:28 -03:00
builtin-probe.c perf build: Rename HAVE_DWARF_SUPPORT to HAVE_LIBDW_SUPPORT 2024-10-18 10:17:40 -07:00
builtin-record.c perf record: Just use "cycles:P" as the default event 2024-10-22 09:55:08 -07:00
builtin-report.c perf build: Include libtraceevent headers directly indicated by pkg-config 2024-11-08 22:42:57 -08:00
builtin-sched.c perf color: Add printf format checking and resolve issues 2024-10-17 12:44:26 -07:00
builtin-script.c perf build: Include libtraceevent headers directly indicated by pkg-config 2024-11-08 22:42:57 -08:00
builtin-stat.c perf stat: Support inherit events during fork() for bperf 2024-11-01 23:31:08 -07:00
builtin-timechart.c perf timechart: Remove redundant variable assignment 2024-11-13 16:27:35 -03:00
builtin-top.c perf map: API clean up 2024-08-19 14:49:53 -03:00
builtin-trace.c perf trace: Fix tracing itself, creating feedback loops 2024-11-14 16:55:36 -03:00
builtin-version.c perf version: Update --build-options to use 'supported_features' array 2024-09-04 16:19:29 -03:00
builtin.h perf check: Introduce 'check' subcommand 2024-09-04 09:56:05 -03:00
check-headers.sh tools headers: Update the linux/unaligned.h copy with the kernel sources 2024-10-28 12:34:28 -03:00
command-list.txt perf help: Use HAVE_LIBTRACEEVENT to filter out unsupported commands 2023-01-02 11:51:53 -03:00
CREDITS
design.txt
Makefile perf tools: Fix wrong message when running "make JOBS=1" 2024-08-01 12:11:33 -03:00
Makefile.config perf build: Remove PERF_HAVE_DWARF_REGS 2024-11-09 08:39:14 -08:00
Makefile.perf perf build: Make libunwind opt-in rather than opt-out 2024-11-04 11:32:35 -08:00
MANIFEST tools perf: Add arm64 sysreg files to MANIFEST 2023-11-22 11:17:53 -08:00
perf-archive.sh perf build: Add shellcheck to tools/perf scripts 2024-04-12 17:54:02 -03:00
perf-completion.sh perf build: Add shellcheck to tools/perf scripts 2024-04-12 17:54:02 -03:00
perf-iostat.sh
perf-read-vdso.c
perf-sys.h
perf.c perf test: Remove C test wrapper for attr.py 2024-10-17 13:17:36 -07:00
perf.h perf util: Move perf_guest/host declarations 2023-04-10 19:22:05 -03:00