Re: REQUEST: Syncing tools/arch/arm64/include/asm/cputype.h with the kernel sources

Mark Rutland
2026-03-16T09:51:17Z

On Mon, Mar 16, 2026 at 09:43:44AM +0000, Leo Yan wrote:
> Hi Arnaldo,
>
> [ + Mark ]
>
> On Sun, Mar 15, 2026 at 10:43:03AM -0300, Arnaldo Carvalho de Melo wrote:
> > Hi,
> >
> > Can someone please address this perf build warning:
> >
> > make: Entering directory '/home/acme/git/perf-tools/tools/perf'
> > BUILD: Doing 'make -j32' parallel build
> > Warning: Kernel ABI header differences:
> > diff -u tools/arch/arm64/include/asm/cputype.h arch/arm64/include/asm/cputype.h
> >
> > I tried updating that header and got the problems below.
> >
> > I just merged perf-tools with upstream, will push to tmp.perf-tools at:
> >
> > https://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools.git tmp.perf-tools
> >
> > Thanks in advance,
>
> Sorry that this issue has come up again.
>
> A quick summary:
>
> The plan was to extract the CPU ID definitions from cputype.h so that
> kernel and userspace can share the same definitions. This would avoid
> keep syncing cputype.h between the kernel and userspace [1].
>
> James worked on this a bit, and later Mark wanted to try a different
> implementation. However, we haven't posted formal patches yet.
>
> To avoid extra burden on perf maintainers, I suggest removing the
> cputype.h check in check-headers.sh. In the short term, Arm developers
> will take responsibility for keeping it up to date. In the long term,
> once the CPU ID refactoring is completed, we can do a proper cleanup of
> cputype.h.
>
> James, Mark, is this reasonable?
>
> [1] https://lore.kernel.org/linux-perf-users/aFJ8bQh_30JMzF_-@J2N7QTR9R3/

Removing the check sounds good to me; that's one of the options I
suggested in [1]:

| The simple solution for now is to *NOT* update the userspace header,
| and to stop warning that this has diverged from the kernel header.

I think it's fine if we need to manually update that header when
teaching the perf tool about specific CPUs.

Are you happy to spin a patch to remove the check?

Mark.