Re: [PATCH v2 0/3] Add some perf support for mips

From: Arnaldo Carvalho de Melo
Date: Thu Feb 25 2021 - 08:11:16 EST


Em Thu, Feb 25, 2021 at 09:49:56AM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Wed, Feb 24, 2021 at 10:16:55AM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Mon, Feb 22, 2021 at 02:43:39PM +0800, Tiezhu Yang escreveu:
> > > On 02/04/2021 11:35 AM, Tiezhu Yang wrote:
> > > > v2: add R26 and R27 to the enum perf_event_mips_regs in patch #1
> > > >
> > > > Tiezhu Yang (3):
> > > > MIPS: kernel: Support extracting off-line stack traces from user-space
> > > > with perf
> > > > perf tools: Support mips unwinding and dwarf-regs
> > > > perf tools: Generate mips syscalls_n64.c syscall table
> > >
> > > Hi Arnaldo,
> > >
> > > The kernel part patch #1 has been merged.
> > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1ddc96bd42da
> > >
> > > Could the perf tool patches #2 and #3 have a chance to be merged before
> > > 5.12-rc1?
> > > If yes, we can use this feature in 5.12-rc1.
> >
> > Thanks, applied, should make it into 5.12-rc1.
>
> First we'll have to fix this problem:
>
> 28 12.45 debian:experimental-x-mips64 : FAIL gcc version 10.2.1 20201224 (Debian 10.2.1-3)
> from builtin-diff.c:12:
> /git/linux/tools/perf/arch/mips/include/perf_regs.h:7:10: fatal error: asm/perf_regs.h: No such file or directory
> 7 | #include <asm/perf_regs.h>
> | ^~~~~~~~~~~~~~~~~
> compilation terminated.
> In file included from util/perf_regs.h:30,
> from util/event.h:15,
> from util/branch.h:15,
> from util/callchain.h:8,
> from builtin-record.c:16:
> /git/linux/tools/perf/arch/mips/include/perf_regs.h:7:10: fatal error: asm/perf_regs.h: No such file or directory

I'm not finding it in the debian cross build packages:

root@d77a78c0aa1c:/# apt-file find perf_regs.h | grep cross
linux-libc-dev-amd64-cross: /usr/x86_64-linux-gnu/include/asm/perf_regs.h
linux-libc-dev-arm64-cross: /usr/aarch64-linux-gnu/include/asm/perf_regs.h
linux-libc-dev-armel-cross: /usr/arm-linux-gnueabi/include/asm/perf_regs.h
linux-libc-dev-armhf-cross: /usr/arm-linux-gnueabihf/include/asm/perf_regs.h
linux-libc-dev-i386-cross: /usr/i686-linux-gnu/include/asm/perf_regs.h
linux-libc-dev-powerpc-cross: /usr/powerpc-linux-gnu/include/asm/perf_regs.h
linux-libc-dev-ppc64-cross: /usr/powerpc64-linux-gnu/include/asm/perf_regs.h
linux-libc-dev-ppc64el-cross: /usr/powerpc64le-linux-gnu/include/asm/perf_regs.h
linux-libc-dev-riscv64-cross: /usr/riscv64-linux-gnu/include/asm/perf_regs.h
linux-libc-dev-s390x-cross: /usr/s390x-linux-gnu/include/asm/perf_regs.h
linux-libc-dev-x32-cross: /usr/x86_64-linux-gnux32/include/asm/perf_regs.h
root@d77a78c0aa1c:/#

Ideas?

- Arnaldo