* [PATCH 01/13] perf uretprobe ppc64le: Fix probe location
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 02/13] perf intel-pt: Fix estimated timestamps for cycle-accurate mode Arnaldo Carvalho de Melo
` (12 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Ravi Bangoria,
Alexander Shishkin, Balbir Singh, Masami Hiramatsu,
Naveen N . Rao, Peter Zijlstra, Arnaldo Carvalho de Melo
From: Ravi Bangoria <ravi.bangoria@linux.vnet.ibm.com>
Perf uretprobe probes on GEP(Global Entry Point) which fails to record
all function calls via LEP(Local Entry Point). Fix that by probing on LEP.
Objdump:
00000000100005f0 <doit>:
100005f0: 02 10 40 3c lis r2,4098
100005f4: 00 7f 42 38 addi r2,r2,32512
100005f8: a6 02 08 7c mflr r0
100005fc: 10 00 01 f8 std r0,16(r1)
10000600: f8 ff e1 fb std r31,-8(r1)
Before applying patch:
$ cat /sys/kernel/debug/tracing/uprobe_events
r:probe_uprobe_test/doit /home/ravi/uprobe_test:0x00000000000005f0
After applying patch:
$ cat /sys/kernel/debug/tracing/uprobe_events
r:probe_uprobe_test/doit /home/ravi/uprobe_test:0x00000000000005f8
This is not the case with kretprobes because the kernel itself finds LEP
and probes on it.
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.vnet.ibm.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Balbir Singh <bsingharora@gmail.com>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1475576865-6562-1-git-send-email-ravi.bangoria@linux.vnet.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/arch/powerpc/util/sym-handling.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tools/perf/arch/powerpc/util/sym-handling.c b/tools/perf/arch/powerpc/util/sym-handling.c
index ed9d5d15d5b6..1030a6e504bb 100644
--- a/tools/perf/arch/powerpc/util/sym-handling.c
+++ b/tools/perf/arch/powerpc/util/sym-handling.c
@@ -82,7 +82,8 @@ void arch__fix_tev_from_maps(struct perf_probe_event *pev,
*
* In addition, we shouldn't specify an offset for kretprobes.
*/
- if (pev->point.offset || pev->point.retprobe || !map || !sym)
+ if (pev->point.offset || (!pev->uprobes && pev->point.retprobe) ||
+ !map || !sym)
return;
lep_offset = PPC64_LOCAL_ENTRY_OFFSET(sym->arch_sym);
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 02/13] perf intel-pt: Fix estimated timestamps for cycle-accurate mode
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 01/13] perf uretprobe ppc64le: Fix probe location Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 03/13] perf intel-pt: Fix MTC timestamp calculation for large MTC periods Arnaldo Carvalho de Melo
` (11 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Adrian Hunter, Jiri Olsa,
stable, #, v4.3+,
Arnaldo Carvalho de Melo
From: Adrian Hunter <adrian.hunter@intel.com>
In cycle-accurate mode, timestamps can be calculated from CYC packets.
The decoder also estimates timestamps based on the number of
instructions since the last timestamp. For that to work in
cycle-accurate mode, the instruction count needs to be reset to zero
when a timestamp is calculated from a CYC packet, but that wasn't
happening, so fix it.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: stable@vger.kernel.org # v4.3+
Link: http://lkml.kernel.org/r/1475062896-22274-1-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/intel-pt-decoder/intel-pt-decoder.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
index 7591a0c37473..3d1d446f037f 100644
--- a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
+++ b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
@@ -1353,6 +1353,8 @@ static void intel_pt_calc_cyc_timestamp(struct intel_pt_decoder *decoder)
timestamp, decoder->timestamp);
else
decoder->timestamp = timestamp;
+
+ decoder->timestamp_insn_cnt = 0;
}
/* Walk PSB+ packets when already in sync. */
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 03/13] perf intel-pt: Fix MTC timestamp calculation for large MTC periods
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 01/13] perf uretprobe ppc64le: Fix probe location Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 02/13] perf intel-pt: Fix estimated timestamps for cycle-accurate mode Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 04/13] tools lib traceevent: Fix kbuffer_read_at_offset() Arnaldo Carvalho de Melo
` (10 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Adrian Hunter, Jiri Olsa,
stable, #, v4.3+,
Arnaldo Carvalho de Melo
From: Adrian Hunter <adrian.hunter@intel.com>
The MTC packet provides a 8-bit slice of CTC which is related to TSC by
the TMA packet, however the TMA packet only provides the lower 16 bits
of CTC. If mtc_shift > 8 then some of the MTC bits are not in the CTC
provided by the TMA packet. Fix-up the last_mtc calculated from the TMA
packet by copying the missing bits from the current MTC assuming the
least difference between the two, and that the current MTC comes after
last_mtc.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: stable@vger.kernel.org # v4.3+
Link: http://lkml.kernel.org/r/1475062896-22274-2-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
.../perf/util/intel-pt-decoder/intel-pt-decoder.c | 36 ++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
index 3d1d446f037f..16c06d3ae577 100644
--- a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
+++ b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
@@ -90,6 +90,7 @@ struct intel_pt_decoder {
bool pge;
bool have_tma;
bool have_cyc;
+ bool fixup_last_mtc;
uint64_t pos;
uint64_t last_ip;
uint64_t ip;
@@ -586,10 +587,31 @@ struct intel_pt_calc_cyc_to_tsc_info {
uint64_t tsc_timestamp;
uint64_t timestamp;
bool have_tma;
+ bool fixup_last_mtc;
bool from_mtc;
double cbr_cyc_to_tsc;
};
+/*
+ * MTC provides a 8-bit slice of CTC but the TMA packet only provides the lower
+ * 16 bits of CTC. If mtc_shift > 8 then some of the MTC bits are not in the CTC
+ * provided by the TMA packet. Fix-up the last_mtc calculated from the TMA
+ * packet by copying the missing bits from the current MTC assuming the least
+ * difference between the two, and that the current MTC comes after last_mtc.
+ */
+static void intel_pt_fixup_last_mtc(uint32_t mtc, int mtc_shift,
+ uint32_t *last_mtc)
+{
+ uint32_t first_missing_bit = 1U << (16 - mtc_shift);
+ uint32_t mask = ~(first_missing_bit - 1);
+
+ *last_mtc |= mtc & mask;
+ if (*last_mtc >= mtc) {
+ *last_mtc -= first_missing_bit;
+ *last_mtc &= 0xff;
+ }
+}
+
static int intel_pt_calc_cyc_cb(struct intel_pt_pkt_info *pkt_info)
{
struct intel_pt_decoder *decoder = pkt_info->decoder;
@@ -619,6 +641,11 @@ static int intel_pt_calc_cyc_cb(struct intel_pt_pkt_info *pkt_info)
return 0;
mtc = pkt_info->packet.payload;
+ if (decoder->mtc_shift > 8 && data->fixup_last_mtc) {
+ data->fixup_last_mtc = false;
+ intel_pt_fixup_last_mtc(mtc, decoder->mtc_shift,
+ &data->last_mtc);
+ }
if (mtc > data->last_mtc)
mtc_delta = mtc - data->last_mtc;
else
@@ -687,6 +714,7 @@ static int intel_pt_calc_cyc_cb(struct intel_pt_pkt_info *pkt_info)
data->ctc_delta = 0;
data->have_tma = true;
+ data->fixup_last_mtc = true;
return 0;
@@ -753,6 +781,7 @@ static void intel_pt_calc_cyc_to_tsc(struct intel_pt_decoder *decoder,
.tsc_timestamp = decoder->tsc_timestamp,
.timestamp = decoder->timestamp,
.have_tma = decoder->have_tma,
+ .fixup_last_mtc = decoder->fixup_last_mtc,
.from_mtc = from_mtc,
.cbr_cyc_to_tsc = 0,
};
@@ -1271,6 +1300,7 @@ static void intel_pt_calc_tma(struct intel_pt_decoder *decoder)
}
decoder->ctc_delta = 0;
decoder->have_tma = true;
+ decoder->fixup_last_mtc = true;
intel_pt_log("CTC timestamp " x64_fmt " last MTC %#x CTC rem %#x\n",
decoder->ctc_timestamp, decoder->last_mtc, ctc_rem);
}
@@ -1285,6 +1315,12 @@ static void intel_pt_calc_mtc_timestamp(struct intel_pt_decoder *decoder)
mtc = decoder->packet.payload;
+ if (decoder->mtc_shift > 8 && decoder->fixup_last_mtc) {
+ decoder->fixup_last_mtc = false;
+ intel_pt_fixup_last_mtc(mtc, decoder->mtc_shift,
+ &decoder->last_mtc);
+ }
+
if (mtc > decoder->last_mtc)
mtc_delta = mtc - decoder->last_mtc;
else
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 04/13] tools lib traceevent: Fix kbuffer_read_at_offset()
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (2 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 03/13] perf intel-pt: Fix MTC timestamp calculation for large MTC periods Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 05/13] perf jevents: Fix Intel JSON fixed counter conversions Arnaldo Carvalho de Melo
` (9 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Namhyung Kim, Jiri Olsa,
Peter Zijlstra, Arnaldo Carvalho de Melo
From: Namhyung Kim <namhyung@kernel.org>
When it's called with an offset less than or equal to the first event,
it'll return a garbage value since the data is not initialized.
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Acked-by: Steven Rostedt <rostedt@goodmis.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20161001101700.29146-1-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/lib/traceevent/kbuffer-parse.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/lib/traceevent/kbuffer-parse.c b/tools/lib/traceevent/kbuffer-parse.c
index 3bcada3ae05a..65984f1c2974 100644
--- a/tools/lib/traceevent/kbuffer-parse.c
+++ b/tools/lib/traceevent/kbuffer-parse.c
@@ -622,6 +622,7 @@ void *kbuffer_read_at_offset(struct kbuffer *kbuf, int offset,
/* Reset the buffer */
kbuffer_load_subbuffer(kbuf, kbuf->subbuffer);
+ data = kbuffer_read_event(kbuf, ts);
while (kbuf->curr < offset) {
data = kbuffer_next_event(kbuf, ts);
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 05/13] perf jevents: Fix Intel JSON fixed counter conversions
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (3 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 04/13] tools lib traceevent: Fix kbuffer_read_at_offset() Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 06/13] perf bench mem: Sync memcpy assembly sources with the kernel Arnaldo Carvalho de Melo
` (8 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Andi Kleen, Jiri Olsa,
Sukadev Bhattiprolu, Arnaldo Carvalho de Melo
From: Andi Kleen <ak@linux.intel.com>
Intel fixed counters are special cases in the JSON conversion process
because their decoding differs between perf and the event files. Add
some missing entries in the conversion table.
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
Link: http://lkml.kernel.org/r/1475696832-9188-4-git-send-email-andi@firstfloor.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/pmu-events/jevents.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/perf/pmu-events/jevents.c b/tools/perf/pmu-events/jevents.c
index 79c2133bc534..41611d7f9873 100644
--- a/tools/perf/pmu-events/jevents.c
+++ b/tools/perf/pmu-events/jevents.c
@@ -312,6 +312,8 @@ static struct fixed {
const char *event;
} fixed[] = {
{ "inst_retired.any", "event=0xc0" },
+ { "inst_retired.any_p", "event=0xc0" },
+ { "cpu_clk_unhalted.ref", "event=0x0,umask=0x03" },
{ "cpu_clk_unhalted.thread", "event=0x3c" },
{ "cpu_clk_unhalted.thread_any", "event=0x3c,any=1" },
{ NULL, NULL},
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 06/13] perf bench mem: Sync memcpy assembly sources with the kernel
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (4 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 05/13] perf jevents: Fix Intel JSON fixed counter conversions Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 07/13] tools: Synchronize tools/arch/x86/include/asm/cpufeatures.h Arnaldo Carvalho de Melo
` (7 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Arnaldo Carvalho de Melo,
Adrian Hunter, David Ahern, Jiri Olsa, Namhyung Kim,
Thomas Gleixner, Tony Luck, Wang Nan
From: Arnaldo Carvalho de Melo <acme@redhat.com>
Commit 9a6fb28a355d ("x86/mce: Improve memcpy_mcsafe()") renames
memcpy_mcsafe() to memcpy_mcsafe_unrolled(), making
tools/arch/x86/lib/memcpy_64.S drift from the its kernel counterpart,
triggering this warning in the perf build:
Warning: tools/arch/x86/lib/memcpy_64.S differs from kernel
Sync that copy to acknowledge that, no changes to 'perf bench' are
needed, as this function is not used there.
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-xfwc1raw8obyrctxerwt1bbb@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/arch/x86/lib/memcpy_64.S | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/arch/x86/lib/memcpy_64.S b/tools/arch/x86/lib/memcpy_64.S
index 2ec0b0abbfaa..49e6ebac7e73 100644
--- a/tools/arch/x86/lib/memcpy_64.S
+++ b/tools/arch/x86/lib/memcpy_64.S
@@ -181,11 +181,11 @@ ENDPROC(memcpy_orig)
#ifndef CONFIG_UML
/*
- * memcpy_mcsafe - memory copy with machine check exception handling
+ * memcpy_mcsafe_unrolled - memory copy with machine check exception handling
* Note that we only catch machine checks when reading the source addresses.
* Writes to target are posted and don't generate machine checks.
*/
-ENTRY(memcpy_mcsafe)
+ENTRY(memcpy_mcsafe_unrolled)
cmpl $8, %edx
/* Less than 8 bytes? Go to byte copy loop */
jb .L_no_whole_words
@@ -273,7 +273,7 @@ ENTRY(memcpy_mcsafe)
.L_done_memcpy_trap:
xorq %rax, %rax
ret
-ENDPROC(memcpy_mcsafe)
+ENDPROC(memcpy_mcsafe_unrolled)
.section .fixup, "ax"
/* Return -EFAULT for any failure */
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 07/13] tools: Synchronize tools/arch/x86/include/asm/cpufeatures.h
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (5 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 06/13] perf bench mem: Sync memcpy assembly sources with the kernel Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 08/13] tools: Synchronize tools/include/uapi/linux/bpf.h Arnaldo Carvalho de Melo
` (6 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Arnaldo Carvalho de Melo,
Adrian Hunter, David Ahern, Jiri Olsa, Namhyung Kim,
Thomas Gleixner, Tony Luck, Wang Nan
From: Arnaldo Carvalho de Melo <acme@redhat.com>
Due to ffb173e657fa ("x86/mce: Drop X86_FEATURE_MCE_RECOVERY and the
related model string test"), no changes needed in any other place as no
tool uses X86_FEATURE_MCE_RECOVERY.
Silences this detected drift when building tools/perf:
Warning: tools/arch/x86/include/asm/cpufeatures.h differs from kernel
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-f3sfimg58t3cycbbl8f5cwxf@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/arch/x86/include/asm/cpufeatures.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/tools/arch/x86/include/asm/cpufeatures.h b/tools/arch/x86/include/asm/cpufeatures.h
index 92a8308b96f6..1188bc849ee3 100644
--- a/tools/arch/x86/include/asm/cpufeatures.h
+++ b/tools/arch/x86/include/asm/cpufeatures.h
@@ -106,7 +106,6 @@
#define X86_FEATURE_APERFMPERF ( 3*32+28) /* APERFMPERF */
#define X86_FEATURE_EAGER_FPU ( 3*32+29) /* "eagerfpu" Non lazy FPU restore */
#define X86_FEATURE_NONSTOP_TSC_S3 ( 3*32+30) /* TSC doesn't stop in S3 state */
-#define X86_FEATURE_MCE_RECOVERY ( 3*32+31) /* cpu has recoverable machine checks */
/* Intel-defined CPU features, CPUID level 0x00000001 (ecx), word 4 */
#define X86_FEATURE_XMM3 ( 4*32+ 0) /* "pni" SSE-3 */
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 08/13] tools: Synchronize tools/include/uapi/linux/bpf.h
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (6 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 07/13] tools: Synchronize tools/arch/x86/include/asm/cpufeatures.h Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 09/13] perf report/top: Add a tip about source line numbers with overhead Arnaldo Carvalho de Melo
` (5 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Arnaldo Carvalho de Melo,
Adrian Hunter, Daniel Borkmann, David Ahern, David S . Miller,
Jiri Olsa, Namhyung Kim, Wang Nan
From: Arnaldo Carvalho de Melo <acme@redhat.com>
Commit 747ea55e4f78 ("bpf: fix bpf_skb_in_cgroup helper naming") renames
BPF_FUNC_skb_in_cgroup to bpf_skb_under_cgroup, triggering this warning
while building perf:
Warning: tools/include/uapi/linux/bpf.h differs from kernel
Update the copy to ack that, no changes needed, as
BPF_FUNC_skb_in_cgroup isn't used so far.
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: David Ahern <dsahern@gmail.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-x67d2gq8ct6ko12ex14q8bbx@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/include/uapi/linux/bpf.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/include/uapi/linux/bpf.h b/tools/include/uapi/linux/bpf.h
index da218fec6056..9e5fc168c8a3 100644
--- a/tools/include/uapi/linux/bpf.h
+++ b/tools/include/uapi/linux/bpf.h
@@ -339,7 +339,7 @@ enum bpf_func_id {
BPF_FUNC_skb_change_type,
/**
- * bpf_skb_in_cgroup(skb, map, index) - Check cgroup2 membership of skb
+ * bpf_skb_under_cgroup(skb, map, index) - Check cgroup2 membership of skb
* @skb: pointer to skb
* @map: pointer to bpf_map in BPF_MAP_TYPE_CGROUP_ARRAY type
* @index: index of the cgroup in the bpf_map
@@ -348,7 +348,7 @@ enum bpf_func_id {
* == 1 skb succeeded the cgroup2 descendant test
* < 0 error
*/
- BPF_FUNC_skb_in_cgroup,
+ BPF_FUNC_skb_under_cgroup,
/**
* bpf_get_hash_recalc(skb)
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 09/13] perf report/top: Add a tip about source line numbers with overhead
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (7 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 08/13] tools: Synchronize tools/include/uapi/linux/bpf.h Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 10/13] perf report/top: Add a tip about system-wide collection from all CPUs Arnaldo Carvalho de Melo
` (4 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Kim SeonYoung, Jiri Olsa,
Namhyung Kim, Peter Zijlstra, Taeung Song,
Arnaldo Carvalho de Melo
From: Kim SeonYoung <adamas0414@gmail.com>
There is a existing tip as below.
If you have debuginfo enabled, try: perf report -s sym,srcline
However this tip only describe a condition to use --sort sym,scrline
options. So there is lack of explanation in the tip. I think that it
would be better to add a tip that exactly explains the feature of --sort
srcline.
Signed-off-by: Seonyoung Kim <adamas0414@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Taeung Song <taeung@kosslab.kr>
Link: http://lkml.kernel.org/r/1475194602-5596-1-git-send-email-adamas0414@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/Documentation/tips.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/perf/Documentation/tips.txt b/tools/perf/Documentation/tips.txt
index 5950b5a24efd..b0311248407f 100644
--- a/tools/perf/Documentation/tips.txt
+++ b/tools/perf/Documentation/tips.txt
@@ -28,3 +28,4 @@ To change sampling frequency to 100 Hz: perf record -F 100
See assembly instructions with percentage: perf annotate <symbol>
If you prefer Intel style assembly, try: perf annotate -M intel
For hierarchical output, try: perf report --hierarchy
+Order by the overhead of source file name and line number: perf report -s srcline
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 10/13] perf report/top: Add a tip about system-wide collection from all CPUs
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (8 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 09/13] perf report/top: Add a tip about source line numbers with overhead Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 11/13] perf top/report: Add tips about a list option Arnaldo Carvalho de Melo
` (3 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Donghyun Kim, Jiri Olsa,
Namhyung Kim, Peter Zijlstra, Taeung Song,
Arnaldo Carvalho de Melo
From: Donghyun Kim <dongdong9335@gmail.com>
Signed-off-by: Donghyun Kim <dongdong9335@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Taeung Song <taeung@kosslab.kr>
Link: http://lkml.kernel.org/r/1475187357-21882-1-git-send-email-dongdong9335@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/Documentation/tips.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/perf/Documentation/tips.txt b/tools/perf/Documentation/tips.txt
index b0311248407f..9d3e1ee99e83 100644
--- a/tools/perf/Documentation/tips.txt
+++ b/tools/perf/Documentation/tips.txt
@@ -29,3 +29,4 @@ See assembly instructions with percentage: perf annotate <symbol>
If you prefer Intel style assembly, try: perf annotate -M intel
For hierarchical output, try: perf report --hierarchy
Order by the overhead of source file name and line number: perf report -s srcline
+System-wide collection from all CPUs: perf record -a
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 11/13] perf top/report: Add tips about a list option
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (9 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 10/13] perf report/top: Add a tip about system-wide collection from all CPUs Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 12/13] tools build: Support compiling C++ source file Arnaldo Carvalho de Melo
` (2 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Nambong Ha, Jiri Olsa,
Namhyung Kim, Peter Zijlstra, Taeung Song,
Arnaldo Carvalho de Melo
From: Nambong Ha <over3025@gmail.com>
Add two tips that describe --list option of config sub-command and
explain how to choose particular config file location.
Signed-off-by: Nambong Ha <over3025@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Taeung Song <taeung@kosslab.kr>
Link: http://lkml.kernel.org/r/1475191562-3240-1-git-send-email-over3025@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/Documentation/tips.txt | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/perf/Documentation/tips.txt b/tools/perf/Documentation/tips.txt
index 9d3e1ee99e83..8a6479c0eac9 100644
--- a/tools/perf/Documentation/tips.txt
+++ b/tools/perf/Documentation/tips.txt
@@ -30,3 +30,5 @@ If you prefer Intel style assembly, try: perf annotate -M intel
For hierarchical output, try: perf report --hierarchy
Order by the overhead of source file name and line number: perf report -s srcline
System-wide collection from all CPUs: perf record -a
+Show current config key-value pairs: perf config --list
+Show user configuration overrides: perf config --user --list
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 12/13] tools build: Support compiling C++ source file
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (10 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 11/13] perf top/report: Add tips about a list option Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 16:11 ` [PATCH 13/13] tools build: Add feature detection for g++ Arnaldo Carvalho de Melo
2016-10-06 22:38 ` [GIT PULL 00/13] perf/core improvements and fixes Ingo Molnar
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Wang Nan, Alexei Starovoitov,
He Kuang, Jiri Olsa, Zefan Li, pi3orama,
Arnaldo Carvalho de Melo
From: Wang Nan <wangnan0@huawei.com>
Add new rule to compile .cpp file to .o use g++. C++ support is required
for built-in clang and LLVM support.
Linker side support will be introduced by following commits.
Signed-off-by: Wang Nan <wangnan0@huawei.com>
Cc: Alexei Starovoitov <ast@fb.com>
Cc: He Kuang <hekuang@huawei.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Zefan Li <lizefan@huawei.com>
Cc: pi3orama@163.com
Link: http://lkml.kernel.org/r/1474874832-134786-2-git-send-email-wangnan0@huawei.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/build/Build.include | 1 +
tools/build/Makefile.build | 7 +++++++
2 files changed, 8 insertions(+)
diff --git a/tools/build/Build.include b/tools/build/Build.include
index 02489380d79b..1dcb95e76f70 100644
--- a/tools/build/Build.include
+++ b/tools/build/Build.include
@@ -90,6 +90,7 @@ if_changed = $(if $(strip $(any-prereq) $(arg-check)), \
# - per object C flags
# - BUILD_STR macro to allow '-D"$(variable)"' constructs
c_flags = -Wp,-MD,$(depfile),-MT,$@ $(CFLAGS) -D"BUILD_STR(s)=\#s" $(CFLAGS_$(basetarget).o) $(CFLAGS_$(obj))
+cxx_flags = -Wp,-MD,$(depfile),-MT,$@ $(CXXFLAGS) -D"BUILD_STR(s)=\#s" $(CXXFLAGS_$(basetarget).o) $(CXXFLAGS_$(obj))
###
## HOSTCC C flags
diff --git a/tools/build/Makefile.build b/tools/build/Makefile.build
index 190519a94ce5..99c0ccd2f176 100644
--- a/tools/build/Makefile.build
+++ b/tools/build/Makefile.build
@@ -61,6 +61,9 @@ quiet_cmd_cc_o_c = CC $@
quiet_cmd_host_cc_o_c = HOSTCC $@
cmd_host_cc_o_c = $(HOSTCC) $(host_c_flags) -c -o $@ $<
+quiet_cmd_cxx_o_c = CXX $@
+ cmd_cxx_o_c = $(CXX) $(cxx_flags) -c -o $@ $<
+
quiet_cmd_cpp_i_c = CPP $@
cmd_cpp_i_c = $(CC) $(c_flags) -E -o $@ $<
@@ -88,6 +91,10 @@ $(OUTPUT)%.o: %.c FORCE
$(call rule_mkdir)
$(call if_changed_dep,$(host)cc_o_c)
+$(OUTPUT)%.o: %.cpp FORCE
+ $(call rule_mkdir)
+ $(call if_changed_dep,cxx_o_c)
+
$(OUTPUT)%.o: %.S FORCE
$(call rule_mkdir)
$(call if_changed_dep,$(host)cc_o_c)
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 13/13] tools build: Add feature detection for g++
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (11 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 12/13] tools build: Support compiling C++ source file Arnaldo Carvalho de Melo
@ 2016-10-06 16:11 ` Arnaldo Carvalho de Melo
2016-10-06 22:38 ` [GIT PULL 00/13] perf/core improvements and fixes Ingo Molnar
13 siblings, 0 replies; 15+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-10-06 16:11 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Linux Weekly News, Wang Nan, Alexei Starovoitov,
He Kuang, Jiri Olsa, Zefan Li, pi3orama,
Arnaldo Carvalho de Melo
From: Wang Nan <wangnan0@huawei.com>
Check if g++ is available. The result will be used by builtin clang and
LLVM support. Since LLVM requires C++11, this feature detector checks
std::move().
Signed-off-by: Wang Nan <wangnan0@huawei.com>
Cc: Alexei Starovoitov <ast@fb.com>
Cc: He Kuang <hekuang@huawei.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Zefan Li <lizefan@huawei.com>
Cc: pi3orama@163.com
Link: http://lkml.kernel.org/r/1474874832-134786-3-git-send-email-wangnan0@huawei.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/build/Makefile.feature | 2 +-
tools/build/feature/Makefile | 10 +++++++++-
tools/build/feature/test-cxx.cpp | 15 +++++++++++++++
3 files changed, 25 insertions(+), 2 deletions(-)
create mode 100644 tools/build/feature/test-cxx.cpp
diff --git a/tools/build/Makefile.feature b/tools/build/Makefile.feature
index a120c6b755a9..ae52e029dd22 100644
--- a/tools/build/Makefile.feature
+++ b/tools/build/Makefile.feature
@@ -7,7 +7,7 @@ endif
feature_check = $(eval $(feature_check_code))
define feature_check_code
- feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS) $(FEATURE_CHECK_CFLAGS-$(1))" LDFLAGS="$(LDFLAGS) $(FEATURE_CHECK_LDFLAGS-$(1))" -C $(feature_dir) $(OUTPUT_FEATURES)test-$1.bin >/dev/null 2>/dev/null && echo 1 || echo 0)
+ feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS) $(FEATURE_CHECK_CFLAGS-$(1))" CXXFLAGS="$(EXTRA_CXXFLAGS) $(FEATURE_CHECK_CXXFLAGS-$(1))" LDFLAGS="$(LDFLAGS) $(FEATURE_CHECK_LDFLAGS-$(1))" -C $(feature_dir) $(OUTPUT_FEATURES)test-$1.bin >/dev/null 2>/dev/null && echo 1 || echo 0)
endef
feature_set = $(eval $(feature_set_code))
diff --git a/tools/build/feature/Makefile b/tools/build/feature/Makefile
index a0b29a311816..ac9c477a2a48 100644
--- a/tools/build/feature/Makefile
+++ b/tools/build/feature/Makefile
@@ -46,11 +46,13 @@ FILES= \
test-lzma.bin \
test-bpf.bin \
test-get_cpuid.bin \
- test-sdt.bin
+ test-sdt.bin \
+ test-cxx.bin
FILES := $(addprefix $(OUTPUT),$(FILES))
CC := $(CROSS_COMPILE)gcc -MD
+CXX := $(CROSS_COMPILE)g++ -MD
PKG_CONFIG := $(CROSS_COMPILE)pkg-config
all: $(FILES)
@@ -58,6 +60,9 @@ all: $(FILES)
__BUILD = $(CC) $(CFLAGS) -Wall -Werror -o $@ $(patsubst %.bin,%.c,$(@F)) $(LDFLAGS)
BUILD = $(__BUILD) > $(@:.bin=.make.output) 2>&1
+__BUILDXX = $(CXX) $(CXXFLAGS) -Wall -Werror -o $@ $(patsubst %.bin,%.cpp,$(@F)) $(LDFLAGS)
+ BUILDXX = $(__BUILDXX) > $(@:.bin=.make.output) 2>&1
+
###############################
$(OUTPUT)test-all.bin:
@@ -217,6 +222,9 @@ $(OUTPUT)test-bpf.bin:
$(OUTPUT)test-sdt.bin:
$(BUILD)
+$(OUTPUT)test-cxx.bin:
+ $(BUILDXX) -std=gnu++11
+
-include $(OUTPUT)*.d
###############################
diff --git a/tools/build/feature/test-cxx.cpp b/tools/build/feature/test-cxx.cpp
new file mode 100644
index 000000000000..b1dee9a31d6c
--- /dev/null
+++ b/tools/build/feature/test-cxx.cpp
@@ -0,0 +1,15 @@
+#include <iostream>
+#include <memory>
+
+static void print_str(std::string s)
+{
+ std::cout << s << std::endl;
+}
+
+int main()
+{
+ std::string s("Hello World!");
+ print_str(std::move(s));
+ std::cout << "|" << s << "|" << std::endl;
+ return 0;
+}
--
2.7.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [GIT PULL 00/13] perf/core improvements and fixes
2016-10-06 16:11 [GIT PULL 00/13] perf/core improvements and fixes Arnaldo Carvalho de Melo
` (12 preceding siblings ...)
2016-10-06 16:11 ` [PATCH 13/13] tools build: Add feature detection for g++ Arnaldo Carvalho de Melo
@ 2016-10-06 22:38 ` Ingo Molnar
13 siblings, 0 replies; 15+ messages in thread
From: Ingo Molnar @ 2016-10-06 22:38 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: linux-kernel, Linux Weekly News, Adrian Hunter,
Alexander Shishkin, Alexei Starovoitov, Andi Kleen, Balbir Singh,
Daniel Borkmann, David Ahern, David S . Miller, Donghyun Kim,
He Kuang, Jiri Olsa, Masami Hiramatsu, Nambong Ha, Namhyung Kim,
Naveen N . Rao, Peter Zijlstra, pi3orama, Ravi Bangoria,
Seonyoung Kim, stable, Steven Rostedt, Sukadev Bhattiprolu,
Taeung Song, Thomas Gleixner, Tony Luck, Wang Nan, Zefan Li,
Arnaldo Carvalho de Melo
* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> Hi Ingo,
>
> Please consider pulling,
>
> - Arnaldo
>
> Build and test stats at the end of the message.
>
> The following changes since commit 8657355f5b5f657407efc12a2223e8a3a6d658de:
>
> Merge tag 'perf-core-for-mingo-20161003' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent (2016-10-04 10:04:47 +0200)
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-20161005
>
> for you to fetch changes up to 87095f7ddeff3038a0cf8e6574922f9c11688619:
>
> tools build: Add feature detection for g++ (2016-10-05 19:59:35 -0300)
>
> ----------------------------------------------------------------
> perf/core improvements and fixes:
>
> - Intel PT timestamp fixes (Adrian Hunter)
>
> - Fix Intel JSON fixed counter conversions (Andi Kleen)
>
> - Sync memcpy, cpufeatures and bpf headers with the kernel (Arnaldo Carvalho de Melo)
>
> - Add some more tool tips (Donghyun Kim, Kim SeonYoung, Nambong Ha)
>
> - Fix libtraceevent's kbuffer_read_at_offset() handling of offsets before or
> equal the first event (Namhyung Kim)
>
> - Fix uretprobe probe placement on ppc64le (Ravi Bangoria)
>
> - Support building C++ source files and add feature detection for g++,
> prep work for supporting a builtin clang/llvm, to remove the need for having
> that toolchain installed to automagically build BPF scriptlets that then
> gets uploaded to the kernel via sys_bpf() (Wang Nan)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>
> ----------------------------------------------------------------
> Adrian Hunter (2):
> perf intel-pt: Fix estimated timestamps for cycle-accurate mode
> perf intel-pt: Fix MTC timestamp calculation for large MTC periods
>
> Andi Kleen (1):
> perf jevents: Fix Intel JSON fixed counter conversions
>
> Arnaldo Carvalho de Melo (3):
> perf bench mem: Sync memcpy assembly sources with the kernel
> tools: Synchronize tools/arch/x86/include/asm/cpufeatures.h
> tools: Synchronize tools/include/uapi/linux/bpf.h
>
> Donghyun Kim (1):
> perf report/top: Add a tip about system-wide collection from all CPUs
>
> Kim SeonYoung (1):
> perf report/top: Add a tip about source line numbers with overhead
>
> Nambong Ha (1):
> perf top/report: Add tips about a list option
>
> Namhyung Kim (1):
> tools lib traceevent: Fix kbuffer_read_at_offset()
>
> Ravi Bangoria (1):
> perf uretprobe ppc64le: Fix probe location
>
> Wang Nan (2):
> tools build: Support compiling C++ source file
> tools build: Add feature detection for g++
>
> tools/arch/x86/include/asm/cpufeatures.h | 1 -
> tools/arch/x86/lib/memcpy_64.S | 6 ++--
> tools/build/Build.include | 1 +
> tools/build/Makefile.build | 7 ++++
> tools/build/Makefile.feature | 2 +-
> tools/build/feature/Makefile | 10 +++++-
> tools/build/feature/test-cxx.cpp | 15 +++++++++
> tools/include/uapi/linux/bpf.h | 4 +--
> tools/lib/traceevent/kbuffer-parse.c | 1 +
> tools/perf/Documentation/tips.txt | 4 +++
> tools/perf/arch/powerpc/util/sym-handling.c | 3 +-
> tools/perf/pmu-events/jevents.c | 2 ++
> .../perf/util/intel-pt-decoder/intel-pt-decoder.c | 38 ++++++++++++++++++++++
> 13 files changed, 85 insertions(+), 9 deletions(-)
> create mode 100644 tools/build/feature/test-cxx.cpp
>
> [root@jouet ~]# time dm
> 1 alpine:3.4: Ok
> 2 android-ndk:r12b-arm: Ok
> 3 archlinux:latest: Ok
> 4 centos:5: Ok
> 5 centos:6: Ok
> 6 centos:7: Ok
> 7 debian:7: Ok
> 8 debian:8: Ok
> 9 debian:experimental: Ok
> 10 fedora:20: Ok
> 11 fedora:21: Ok
> 12 fedora:22: Ok
> 13 fedora:23: Ok
> 14 fedora:24: Ok
> 15 fedora:24-x-ARC-uClibc: Ok
> 16 fedora:rawhide: Ok
> 17 mageia:5: Ok
> 18 opensuse:13.2: Ok
> 19 opensuse:42.1: Ok
> 20 opensuse:tumbleweed: Ok
> 21 ubuntu:12.04.5: Ok
> 22 ubuntu:14.04: Ok
> 23 ubuntu:14.04.4: Ok
> 24 ubuntu:15.10: Ok
> 25 ubuntu:16.04: Ok
> 26 ubuntu:16.04-x-arm: Ok
> 27 ubuntu:16.04-x-arm64: Ok
> 28 ubuntu:16.04-x-powerpc: Ok
> 29 ubuntu:16.04-x-powerpc64: Ok
> 30 ubuntu:16.04-x-powerpc64el: Ok
> 31 ubuntu:16.04-x-s390: Ok
> 32 ubuntu:16.10: Ok
>
> real 44m58.202s
> user 0m2.864s
> sys 0m1.975s
> [root@jouet ~]#
>
> [acme@jouet linux]$ make -C tools/perf build-test
> make: Entering directory '/home/acme/git/linux/tools/perf'
> tarpkg: ./tests/perf-targz-src-pkg .
> make_static_O: make LDFLAGS=-static
> make_no_libdw_dwarf_unwind_O: make NO_LIBDW_DWARF_UNWIND=1
> make_install_prefix_slash_O: make install prefix=/tmp/krava/
> make_no_ui_O: make NO_NEWT=1 NO_SLANG=1 NO_GTK2=1
> make_help_O: make help
> make_no_libpython_O: make NO_LIBPYTHON=1
> make_install_O: make install
> make_install_prefix_O: make install prefix=/tmp/krava
> make_no_scripts_O: make NO_LIBPYTHON=1 NO_LIBPERL=1
> make_no_libperl_O: make NO_LIBPERL=1
> make_debug_O: make DEBUG=1
> make_perf_o_O: make perf.o
> make_clean_all_O: make clean all
> make_util_pmu_bison_o_O: make util/pmu-bison.o
> make_minimal_O: make NO_LIBPERL=1 NO_LIBPYTHON=1 NO_NEWT=1 NO_GTK2=1 NO_DEMANGLE=1 NO_LIBELF=1 NO_LIBUNWIND=1 NO_BACKTRACE=1 NO_LIBNUMA=1 NO_LIBAUDIT=1 NO_LIBBIONIC=1 NO_LIBDW_DWARF_UNWIND=1 NO_AUXTRACE=1 NO_LIBBPF=1 NO_LIBCRYPTO=1 NO_SDT=1
> make_no_demangle_O: make NO_DEMANGLE=1
> make_no_libunwind_O: make NO_LIBUNWIND=1
> make_with_babeltrace_O: make LIBBABELTRACE=1
> make_no_libnuma_O: make NO_LIBNUMA=1
> make_no_libbpf_O: make NO_LIBBPF=1
> make_install_bin_O: make install-bin
> make_util_map_o_O: make util/map.o
> make_no_libelf_O: make NO_LIBELF=1
> make_no_newt_O: make NO_NEWT=1
> make_no_auxtrace_O: make NO_AUXTRACE=1
> make_no_gtk2_O: make NO_GTK2=1
> make_no_slang_O: make NO_SLANG=1
> make_doc_O: make doc
> make_pure_O: make
> make_no_libbionic_O: make NO_LIBBIONIC=1
> make_no_libaudit_O: make NO_LIBAUDIT=1
> make_tags_O: make tags
> make_no_backtrace_O: make NO_BACKTRACE=1
> OK
>
> [root@jouet ~]# perf test
> 1: vmlinux symtab matches kallsyms : Ok
> 2: detect openat syscall event : Ok
> 3: detect openat syscall event on all cpus : Ok
> 4: read samples using the mmap interface : Ok
> 5: parse events tests : Ok
> 6: Validate PERF_RECORD_* events & perf_sample fields : Ok
> 7: Test perf pmu format parsing : Ok
> 8: Test dso data read : Ok
> 9: Test dso data cache : Ok
> 10: Test dso data reopen : Ok
> 11: roundtrip evsel->name check : Ok
> 12: Check parsing of sched tracepoints fields : Ok
> 13: Generate and check syscalls:sys_enter_openat event fields: Ok
> 14: struct perf_event_attr setup : Ok
> 15: Test matching and linking multiple hists : Ok
> 16: Try 'import perf' in python, checking link problems : Ok
> 17: Test breakpoint overflow signal handler : Ok
> 18: Test breakpoint overflow sampling : Ok
> 19: Test number of exit event of a simple workload : Ok
> 20: Test software clock events have valid period values : Ok
> 21: Test object code reading : Ok
> 22: Test sample parsing : Ok
> 23: Test using a dummy software event to keep tracking : Ok
> 24: Test parsing with no sample_id_all bit set : Ok
> 25: Test filtering hist entries : Ok
> 26: Test mmap thread lookup : Ok
> 27: Test thread mg sharing : Ok
> 28: Test output sorting of hist entries : Ok
> 29: Test cumulation of child hist entries : Ok
> 30: Test tracking with sched_switch : Ok
> 31: Filter fds with revents mask in a fdarray : Ok
> 32: Add fd to a fdarray, making it autogrow : Ok
> 33: Test kmod_path__parse function : Ok
> 34: Test thread map : Ok
> 35: Test LLVM searching and compiling :
> 35.1: Basic BPF llvm compiling test : Ok
> 35.2: Test kbuild searching : Ok
> 35.3: Compile source for BPF prologue generation test : Ok
> 35.4: Compile source for BPF relocation test : Ok
> 36: Test topology in session : Ok
> 37: Test BPF filter :
> 37.1: Test basic BPF filtering : Ok
> 37.2: Test BPF prologue generation : Ok
> 37.3: Test BPF relocation checker : Ok
> 38: Test thread map synthesize : Ok
> 39: Test cpu map synthesize : Ok
> 40: Test stat config synthesize : Ok
> 41: Test stat synthesize : Ok
> 42: Test stat round synthesize : Ok
> 43: Test attr update synthesize : Ok
> 44: Test events times : Ok
> 45: Test backward reading from ring buffer : Ok
> 46: Test cpu map print : Ok
> 47: Test SDT event probing : Ok
> 48: Test is_printable_array function : Ok
> 49: Test bitmap print : Ok
> 50: x86 rdpmc test : Ok
> 51: Test converting perf time to TSC : Ok
> 52: Test dwarf unwind : Ok
> 53: Test x86 instruction decoder - new instructions : Ok
> 54: Test intel cqm nmi context read : Skip
> [root@jouet ~]#
Pulled, thanks a lot Arnaldo!
Ingo
^ permalink raw reply [flat|nested] 15+ messages in thread