Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 770e9612 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

Merge tag 'perf-core-for-mingo-4.14-20170901' of...

Merge tag 'perf-core-for-mingo-4.14-20170901' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux

 into perf/urgent

Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:

- Support syscall name glob matching in 'perf trace' (Arnaldo Carvalho de Melo)

  e.g.:

   # perf trace -e pkey_*
   32.784 (0.006 ms): pkey/16018 pkey_alloc(init_val: DISABLE_WRITE) = -1 EINVAL Invalid argument
   32.795 (0.004 ms): pkey/16018 pkey_mprotect(start: 0x7f380d0a6000, len: 4096, prot: READ|WRITE, pkey: -1) = 0
   32.801 (0.002 ms): pkey/16018 pkey_free(pkey: -1                ) = -1 EINVAL Invalid argument
   ^C#

- Do not auto merge counts for explicitely specified events in
  'perf stat' (Arnaldo Carvalho de Melo)

- Fix syntax in documentation of .perfconfig intel-pt option (Jack Henschel)

- Calculate the average cycles of iterations for loops detected by the
  branch history support in 'perf report' (Jin Yao)

- Support PERF_SAMPLE_PHYS_ADDR as a sort key "phys_daddr" in the 'script', 'mem',
  'top' and 'report'. Also add a test entry for it in 'perf test' (Kan Liang)

- Fix 'Object code reading' 'perf test' entry in PowerPC (Ravi Bangoria)

- Remove some duplicate Power9 duplicate vendor events (described in JSON
  files) (Sukadev Bhattiprolu)

- Add help entry in the TUI annotate browser about cycling thru hottest
  instructions with TAB/shift+TAB (Arnaldo Carvalho de Melo)

Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parents 24e700e2 eba9fac0
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -139,8 +139,9 @@ enum perf_event_sample_format {
	PERF_SAMPLE_IDENTIFIER			= 1U << 16,
	PERF_SAMPLE_TRANSACTION			= 1U << 17,
	PERF_SAMPLE_REGS_INTR			= 1U << 18,
	PERF_SAMPLE_PHYS_ADDR			= 1U << 19,

	PERF_SAMPLE_MAX = 1U << 19,		/* non-ABI */
	PERF_SAMPLE_MAX = 1U << 20,		/* non-ABI */
};

/*
@@ -814,6 +815,7 @@ enum perf_event_type {
	 *	{ u64			transaction; } && PERF_SAMPLE_TRANSACTION
	 *	{ u64			abi; # enum perf_sample_regs_abi
	 *	  u64			regs[weight(mask)]; } && PERF_SAMPLE_REGS_INTR
	 *	{ u64			phys_addr;} && PERF_SAMPLE_PHYS_ADDR
	 * };
	 */
	PERF_RECORD_SAMPLE			= 9,
+1 −1
Original line number Diff line number Diff line
@@ -873,7 +873,7 @@ amended to take the number of elements as a parameter.

	$ cat ~/.perfconfig
	[intel-pt]
		mispred-all
		mispred-all = on

	$ perf record -e intel_pt//u ./sort 3000
	Bubble sorting array of 3000 elements
+4 −0
Original line number Diff line number Diff line
@@ -59,6 +59,10 @@ OPTIONS
--ldload::
	Specify desired latency for loads event.

-p::
--phys-data::
	Record/Report sample physical addresses

SEE ALSO
--------
linkperf:perf-record[1], linkperf:perf-report[1]
+4 −1
Original line number Diff line number Diff line
@@ -249,7 +249,10 @@ OPTIONS

-d::
--data::
	Record the sample addresses.
	Record the sample virtual addresses.

--phys-data::
	Record the sample physical addresses.

-T::
--timestamp::
+1 −0
Original line number Diff line number Diff line
@@ -137,6 +137,7 @@ OPTIONS
	- mem: type of memory access for the data at the time of the sample
	- snoop: type of snoop (if any) for the data at the time of the sample
	- dcacheline: the cacheline the data address is on at the time of the sample
	- phys_daddr: physical address of data being executed on at the time of sample

	And the default sort keys are changed to local_weight, mem, sym, dso,
	symbol_daddr, dso_daddr, snoop, tlb, locked, see '--mem-mode'.
Loading