Thread (11 messages) 11 messages, 5 authors, 2021-10-22

[RFC] Support Intel-PT code build in 32-bit arches

From: Arnaldo Carvalho de Melo <acme@kernel.org>
Date: 2021-10-21 20:31:12
Also in: lkml

Em Wed, Oct 20, 2021 at 02:25:43PM -0300, Arnaldo Carvalho de Melo escreveu:
Em Wed, Oct 20, 2021 at 03:41:01PM +0100, John Garry escreveu:
quoted
I suppose the best thing now is to send a patch on top once perf/core
contains that commit. Let me know otherwise.
 
You can send a v2, as:
 
  29     8.60 debian:experimental-x-mipsel  : FAIL gcc version 11.2.0 (Debian 11.2.0-9)
    util/intel-pt.c: In function 'intel_pt_synth_pebs_sample':
    util/intel-pt.c:2146:33: error: passing argument 1 of 'find_first_bit' from incompatible pointer type [-Werror=incompatible-pointer-types]
     2146 |         for_each_set_bit(hw_id, &items->applicable_counters, INTEL_PT_MAX_PEBS) {
    /git/perf-5.15.0-rc4/tools/include/linux/bitops.h:37:38: note: in definition of macro 'for_each_set_bit'
       37 |         for ((bit) = find_first_bit((addr), (size));            \
          |                                      ^~~~
    In file included from /git/perf-5.15.0-rc4/tools/include/asm-generic/bitops.h:21,
                     from /git/perf-5.15.0-rc4/tools/include/linux/bitops.h:34,
                     from /git/perf-5.15.0-rc4/tools/include/linux/bitmap.h:6,
                     from util/header.h:10,
                     from util/session.h:7,
                     from util/intel-pt.c:16:
    /git/perf-5.15.0-rc4/tools/include/asm-generic/bitops/find.h:109:51: note: expected 'const long unsigned int *' but argument is of type 'const uint64_t *' {aka 'const long long unsigned int *'}

 Adrian, this is on:

 commit 803a3c9233990e1adac8ea2421e3759c2d380cf8
Author: Adrian Hunter [off-list ref]
Date:   Tue Sep 7 19:39:03 2021 +0300

    perf intel-pt: Add support for PERF_RECORD_AUX_OUTPUT_HW_ID

    Originally, software only supported redirecting at most one PEBS event to
    Intel PT (PEBS-via-PT) because it was not able to differentiate one event
    from another. To overcome that, add support for the
    PERF_RECORD_AUX_OUTPUT_HW_ID side-band event.

    Reviewed-by: Alexander Shishkin [off-list ref]
    Reviewed-by: Andi Kleen [off-list ref]


That is still just on tmp.perf/core, so we can fix it, probably its just
making that uint64_t into a unsigned long, will check later if you don't
beat me to it.
Adrian,

	Probably we should just disable Intel PT support from being
built on 32-bit arches, right? I don't know if anybody is interested on
that, my tests just try to figure out if it continues to build, and if
fixing any problem isn't costly, which in this case is more than my
threshold, wdyt?

- Arnaldo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help