linux-stable/tools/perf
Andi Kleen 867a979a83 perf tools: Add jsmn `jasmine' JSON parser
I need a JSON parser. This adds the simplest JSON parser I could find --
Serge Zaitsev's jsmn `jasmine' -- to the perf library. I merely
converted it to (mostly) Linux style and added support for non 0
terminated input.

The parser is quite straight forward and does not copy any data, just
returns tokens with offsets into the input buffer. So it's relatively
efficient and simple to use.

The code is not fully checkpatch clean, but I didn't want to completely
fork the upstream code.

Original source: http://zserge.bitbucket.org/jsmn.html

In addition I added a simple wrapper that mmaps a json file and provides
some straight forward access functions.

Used in follow-on patches to parse event files.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
Acked-by: Ingo Molnar <mingo@kernel.org>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Madhavan Srinivasan <maddy@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: linuxppc-dev@lists.ozlabs.org
Link: http://lkml.kernel.org/r/1473978296-20712-2-git-send-email-sukadev@linux.vnet.ibm.com
Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
[ Use fcntl.h instead of sys/fcntl.h to fix the build on Alpine Linux 3.4/musl libc,
  use stdbool.h to avoid clashing with 'bool' typedef there ]
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2016-10-03 11:40:36 -03:00
..
arch perf tests: Add dwarf unwind test for powerpc 2016-09-29 11:18:21 -03:00
bench perf bench futex: Use NSEC_PER_USEC 2016-08-23 15:37:33 -03:00
Documentation perf record: Add support for using symbols in address filters 2016-09-29 11:17:02 -03:00
jvmti perf jit: Remove some no-op error handling 2016-07-18 12:20:00 -03:00
pmu-events perf tools: Add jsmn `jasmine' JSON parser 2016-10-03 11:40:36 -03:00
python perf python: Add tracepoint example 2016-07-12 16:23:35 -03:00
scripts perf/core improvements and fixes: 2016-08-04 11:02:38 +02:00
tests perf tests: Add dwarf unwind test for powerpc 2016-09-29 11:18:21 -03:00
trace perf trace beauty mmap: Add missing MADV_FREE 2016-09-19 11:25:07 -03:00
ui perf hists: Make hists__fprintf_headers function global 2016-09-22 13:08:59 -03:00
util perf tools: Experiment with cppcheck 2016-10-03 11:24:13 -03:00
.gitignore
Build
builtin-annotate.c perf annotate: Add branch stack / basic block 2016-09-08 13:44:03 -03:00
builtin-bench.c
builtin-buildid-cache.c tools: Introduce str_error_r() 2016-07-12 15:19:47 -03:00
builtin-buildid-list.c
builtin-config.c perf config: Reimplement show_config() using config_set__for_each 2016-06-23 17:23:00 -03:00
builtin-data.c perf data ctf: Add '--all' option for 'perf data convert' 2016-06-28 10:54:57 -03:00
builtin-diff.c perf hists: Add support for header span 2016-08-23 15:37:33 -03:00
builtin-evlist.c perf evlist: Rename for_each() macros to for_each_entry() 2016-06-23 11:26:15 -03:00
builtin-help.c tools: Introduce str_error_r() 2016-07-12 15:19:47 -03:00
builtin-inject.c perf symbols: Remove symbol_filter_t machinery 2016-09-05 11:14:50 -03:00
builtin-kmem.c perf symbols: Remove symbol_filter_t machinery 2016-09-05 11:14:50 -03:00
builtin-kvm.c perf kvm: Use NSEC_PER_USEC 2016-08-23 15:37:33 -03:00
builtin-list.c perf list: Show SDT and pre-cached events 2016-07-13 23:09:07 -03:00
builtin-lock.c
builtin-mem.c perf tools mem: Fix -t store option for record command 2016-08-12 14:39:48 -03:00
builtin-probe.c perf probe: Ignore vmlinux Build-id when offline vmlinux given 2016-09-01 12:42:22 -03:00
builtin-record.c perf record: Add support for using symbols in address filters 2016-09-29 11:17:02 -03:00
builtin-report.c perf report: Enable group view with hierarchy 2016-09-13 16:43:41 -03:00
builtin-sched.c perf sched: Use linux/time64.h 2016-08-23 15:37:33 -03:00
builtin-script.c perf symbols: Remove symbol_filter_t machinery 2016-09-05 11:14:50 -03:00
builtin-stat.c perf tools: Add PMU configuration to tools 2016-09-22 13:07:36 -03:00
builtin-timechart.c perf timechart: Use NSEC_PER_U?SEC 2016-08-23 15:37:33 -03:00
builtin-top.c perf tools: Add PMU configuration to tools 2016-09-22 13:07:36 -03:00
builtin-trace.c perf evsel: New tracepoint specific function 2016-09-29 11:16:59 -03:00
builtin-version.c
builtin.h
command-list.txt
CREDITS
design.txt
Makefile
Makefile.config perf tools: Confine __get_cpuid() to x86 architecture 2016-09-22 12:19:30 -03:00
Makefile.perf perf build: Compare mman.h related headers against kernel originals 2016-09-13 16:13:29 -03:00
MANIFEST tools include: Add uapi mman.h for each architecture 2016-09-13 15:26:08 -03:00
perf-archive.sh
perf-completion.sh
perf-read-vdso.c
perf-sys.h perf powerpc: Fix build-test failure 2016-09-08 13:44:07 -03:00
perf-with-kcore.sh
perf.c perf tools: Just pr_debug() about not being able to read cacheline_size 2016-07-15 10:08:29 -03:00
perf.h tools: Introduce tools/include/linux/time64.h for *SEC_PER_*SEC macros 2016-08-23 15:37:33 -03:00