linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jiri Olsa <jolsa@redhat.com>
To: Adrian Hunter <adrian.hunter@intel.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>,
	linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
	Peter Zijlstra <peterz@infradead.org>
Subject: Re: intel_pt crash on alderlake
Date: Tue, 24 Aug 2021 11:38:49 +0200	[thread overview]
Message-ID: <YSS+KbILtcwomsN4@krava> (raw)
In-Reply-To: <YSPlmP4quB7N+qQE@krava>

On Mon, Aug 23, 2021 at 08:14:48PM +0200, Jiri Olsa wrote:
> On Mon, Aug 23, 2021 at 08:53:32PM +0300, Adrian Hunter wrote:
> > On 23/08/21 8:08 pm, Jiri Olsa wrote:
> > > hi,
> > > should intel_pt work on alderlake? I'm getting strange crash:
> > > (cpuinfo and uname below)
> > > 
> > > 	[root@intel-alderlake-m-02 perf]# ./perf record -e 'intel_pt//' --overwrite 
> > 
> > The segfault is related --overwrite not Alderlake.
> 
> ok, now I see that failing also on other server.. was too fast sry

any idea of quick fix before I dive in? ;-)
seems like permissions changed on the first mmap page for some reason

thanks,
jirka

> 
> > 
> > Although I am not sure --overwrite make sense for Intel PT since we have snapshot mode i.e. --snapshot
> 
> it's for kdump to get the inte_pt data after crash
> 
> thanks,
> jirka
> 
> > 
> > > 	perf: Segmentation fault
> > > 	Obtained 16 stack frames.
> > > 	./perf() [0x53b6eb]
> > > 	./perf() [0x53b7cb]
> > > 	./perf() [0x429b30]
> > > 	/lib64/libc.so.6(+0x37400) [0x7f7b144db400]
> > > 	./perf() [0x5a6fc8]
> > > 	./perf() [0x505caa]
> > > 	./perf() [0x4f39ca]
> > > 	./perf() [0x646879]
> > > 	./perf() [0x646b57]
> > > 	./perf() [0x646da0]
> > > 	./perf() [0x4f3eec]
> > > 	./perf() [0x42a533]
> > > 	./perf() [0x42a644]
> > > 	./perf() [0x42aa72]
> > > 	./perf() [0x42c915]
> > > 	./perf() [0x42ecc3]
> > > 	Segmentation fault (core dumped)
> > > 
> > > 
> > > 	[root@intel-alderlake-m-02 perf]# gdb ./perf
> > > 	GNU gdb (GDB) Red Hat Enterprise Linux 8.2-15.el8
> > > 	Copyright (C) 2018 Free Software Foundation, Inc.
> > > 	License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> > > 	This is free software: you are free to change and redistribute it.
> > > 	There is NO WARRANTY, to the extent permitted by law.
> > > 	Type "show copying" and "show warranty" for details.
> > > 	This GDB was configured as "x86_64-redhat-linux-gnu".
> > > 	Type "show configuration" for configuration details.
> > > 	For bug reporting instructions, please see:
> > > 	<http://www.gnu.org/software/gdb/bugs/>.
> > > 	Find the GDB manual and other documentation resources online at:
> > > 	    <http://www.gnu.org/software/gdb/documentation/>.
> > > 
> > > 	For help, type "help".
> > > 	Type "apropos word" to search for commands related to "word"...
> > > 	Reading symbols from ./perf...done.
> > > 	(gdb) r record -e 'intel_pt//' --overwrite
> > > 	Starting program: /root/linux/tools/perf/perf record -e 'intel_pt//' --overwrite
> > > 	[Thread debugging using libthread_db enabled]
> > > 	Using host libthread_db library "/lib64/libthread_db.so.1".
> > > 
> > > 	Program received signal SIGSEGV, Segmentation fault.
> > > 	0x00000000005a6fc8 in auxtrace_mmap__mmap (mm=0x7ffff7e9c060, mp=0x7fffffff7588, userpg=0x7ffff7e0b000, fd=5) at util/auxtrace.c:133
> > > 	133             pc->aux_offset = mp->offset;
> > > 	Missing separate debuginfos, use: yum debuginfo-install brotli-1.0.6-3.el8.x86_64 bzip2-libs-1.0.6-26.el8.x86_64 cyrus-sasl-lib-2.1.27-5.el8.x86_64 elfutils-debuginfod-client-0.185-1.el8.x86_64 elfutils-libelf-0.185-1.el8.x86_64 elfutils-libs-0.185-1.el8.x86_64 glib2-2.56.4-156.el8.x86_64 gmp-6.1.2-10.el8.x86_64 gnutls-3.6.16-4.el8.x86_64 keyutils-libs-1.5.10-9.el8.x86_64 libbabeltrace-1.5.4-3.el8.x86_64 libbpf-0.3.0-1.el8.x86_64 libcap-2.26-4.el8.x86_64 libcom_err-1.45.6-2.el8.x86_64 libcurl-7.61.1-18.el8.x86_64 libffi-3.1-22.el8.x86_64 libidn2-2.2.0-1.el8.x86_64 libpsl-0.20.2-6.el8.x86_64 libselinux-2.9-5.el8.x86_64 libssh-0.9.4-3.el8.x86_64 libtasn1-4.13-3.el8.x86_64 libunistring-0.9.9-3.el8.x86_64 libuuid-2.32.1-28.el8.x86_64 libxcrypt-4.1.1-6.el8.x86_64 libzstd-1.4.4-1.el8.x86_64 numactl-libs-2.0.12-13.el8.x86_64 openldap-2.4.46-17.el8.x86_64 openssl-libs-1.1.1k-4.el8.x86_64 p11-kit-0.23.22-1.el8.x86_64 pcre-8.42-6.el8.x86_64 pcre2-10.32-2.el8.x86_64 perl-libs-5.26.3-420.el8.x86_64 popt-1.18-1.el8.x86_64 slang-2.3.2-3.el8.x86_64 xz-libs-5.2.4-3.el8.x86_64
> > > 	(gdb) bt
> > > 	#0  0x00000000005a6fc8 in auxtrace_mmap__mmap (mm=0x7ffff7e9c060, mp=0x7fffffff7588, userpg=0x7ffff7e0b000, fd=5) at util/auxtrace.c:133
> > > 	#1  0x0000000000505caa in mmap__mmap (map=0x7ffff7e8c010, mp=0x7fffffff7570, fd=5, cpu=0) at util/mmap.c:306
> > > 	#2  0x00000000004f39ca in perf_evlist__mmap_cb_mmap (_map=0x7ffff7e8c010, _mp=0x7fffffff7570, output=5, cpu=0) at util/evlist.c:807
> > > 	#3  0x0000000000646879 in mmap_per_evsel (evlist=0xf1c7d0, ops=0x7fffffff7550, idx=0, mp=0x7fffffff7570, cpu_idx=0, thread=0, _output=0x7fffffff7480, _output_overwrite=0x7fffffff7484) at evlist.c:477
> > > 	#4  0x0000000000646b57 in mmap_per_cpu (evlist=0xf1c7d0, ops=0x7fffffff7550, mp=0x7fffffff7570) at evlist.c:550
> > > 	#5  0x0000000000646da0 in perf_evlist__mmap_ops (evlist=0xf1c7d0, ops=0x7fffffff7550, mp=0x7fffffff7570) at evlist.c:602
> > > 	#6  0x00000000004f3eec in evlist__mmap_ex (evlist=0xf1c7d0, pages=4294967295, auxtrace_pages=1024, auxtrace_overwrite=false, nr_cblocks=0, affinity=0, flush=1, comp_level=0) at util/evlist.c:959
> > > 	#7  0x000000000042a533 in record__mmap_evlist (rec=0xc8b580 <record>, evlist=0xf1c7d0) at builtin-record.c:854
> > > 	#8  0x000000000042a644 in record__mmap (rec=0xc8b580 <record>) at builtin-record.c:881
> > > 	#9  0x000000000042aa72 in record__open (rec=0xc8b580 <record>) at builtin-record.c:963
> > > 	#10 0x000000000042c915 in __cmd_record (rec=0xc8b580 <record>, argc=0, argv=0x7fffffffddf0) at builtin-record.c:1717
> > > 	#11 0x000000000042ecc3 in cmd_record (argc=0, argv=0x7fffffffddf0) at builtin-record.c:2897
> > > 	#12 0x00000000004d7143 in run_builtin (p=0xca33d8 <commands+216>, argc=4, argv=0x7fffffffddf0) at perf.c:313
> > > 	#13 0x00000000004d73b0 in handle_internal_command (argc=4, argv=0x7fffffffddf0) at perf.c:365
> > > 	#14 0x00000000004d74f7 in run_argv (argcp=0x7fffffffdc4c, argv=0x7fffffffdc40) at perf.c:409
> > > 	#15 0x00000000004d78c3 in main (argc=4, argv=0x7fffffffddf0) at perf.c:539
> > > 	(gdb) p *pc
> > > 	$1 = {version = 0, compat_version = 0, lock = 2, index = 0, offset = 0, time_enabled = 0, time_running = 0, {capabilities = 26, {cap_bit0 = 0, cap_bit0_is_deprecated = 1, cap_user_rdpmc = 0, cap_user_time = 1, 
> > > 	      cap_user_time_zero = 1, cap_user_time_short = 0, cap_____res = 0}}, pmc_width = 48, time_shift = 31, time_mult = 2663050159, time_offset = 18446743875728538161, time_zero = 18446743981699475147, 
> > > 	  size = 96, __reserved_1 = 0, time_cycles = 0, time_mask = 0, __reserved = '\000' <repeats 927 times>, data_head = 0, data_tail = 0, data_offset = 4096, data_size = 524288, aux_head = 0, aux_tail = 0, 
> > > 	  aux_offset = 0, aux_size = 0}
> > > 	(gdb) p *mp
> > > 	$2 = {mask = 4194303, offset = 528384, len = 4194304, prot = 3, idx = 0, tid = -1, cpu = 0}
> > > 	(gdb) 
> > > 
> > > 
> > > any idea? thanks,
> > > jirka
> > > 
> > > 
> > > ----
> > > [jolsa@krava linus-pure]$ cat /proc/cpuinfo 
> > > processor       : 0
> > > vendor_id       : GenuineIntel
> > > cpu family      : 6
> > > model           : 142
> > > model name      : Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz
> > > stepping        : 10
> > > microcode       : 0xea
> > > cpu MHz         : 2100.000
> > > cache size      : 8192 KB
> > > physical id     : 0
> > > siblings        : 8
> > > core id         : 0
> > > cpu cores       : 4
> > > apicid          : 0
> > > initial apicid  : 0
> > > fpu             : yes
> > > fpu_exception   : yes
> > > cpuid level     : 22
> > > wp              : yes
> > > flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d
> > > vmx flags       : vnmi preemption_timer invvpid ept_x_only ept_ad ept_1gb flexpriority tsc_offset vtpr mtf vapic ept vpid unrestricted_guest ple shadow_vmcs pml ept_mode_based_exec
> > > bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs taa itlb_multihit srbds
> > > bogomips        : 4199.88
> > > clflush size    : 64
> > > cache_alignment : 64
> > > address sizes   : 39 bits physical, 48 bits virtual
> > > power management:
> > > 
> > > [root@intel-alderlake-m-02 linux]# uname -a
> > > Linux intel-alderlake-m-02.ml3.eng.bos.redhat.com 5.14.0-rc6+ #1 SMP Fri Aug 20 09:27:39 EDT 2021 x86_64 x86_64 x86_64 GNU/Linux
> > > 
> > 


  reply	other threads:[~2021-08-24  9:38 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-23 17:08 intel_pt crash on alderlake Jiri Olsa
2021-08-23 17:53 ` Adrian Hunter
2021-08-23 18:14   ` Jiri Olsa
2021-08-24  9:38     ` Jiri Olsa [this message]
2021-08-24 10:35       ` Adrian Hunter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YSS+KbILtcwomsN4@krava \
    --to=jolsa@redhat.com \
    --cc=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=peterz@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).