From: Namhyung Kim <namhyung@kernel.org>
To: Ian Rogers <irogers@google.com>
Cc: Arnaldo Melo <arnaldo.melo@gmail.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
linux-kernel@vger.kernel.org
Subject: Re: [GIT PULL] perf tools fixes for v7.0: 2nd batch
Date: Thu, 26 Mar 2026 16:05:19 -0700 [thread overview]
Message-ID: <acW7r_OrO5aBlmTQ@google.com> (raw)
In-Reply-To: <CAP-5=fVBNQVF8k3JUQjH1nkP69ZVp8BqP+uwygcx=xO0zC4xrg@mail.gmail.com>
On Tue, Mar 24, 2026 at 11:00:33AM -0700, Ian Rogers wrote:
> On Tue, Mar 24, 2026 at 9:32 AM Arnaldo Melo <arnaldo.melo@gmail.com> wrote:
> >
> >
> >
> > On March 24, 2026 1:17:18 PM GMT-03:00, Arnaldo Melo <arnaldo.melo@gmail.com> wrote:
> > >
> > >
> > >On March 24, 2026 1:12:08 PM GMT-03:00, Linus Torvalds <torvalds@linux-foundation.org> wrote:
> > >>On Mon, 23 Mar 2026 at 03:57, Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> > >>>
> > >>> tools arch x86: Sync the msr-index.h copy with the kernel sources
> > >>> tools headers UAPI: Sync linux/kvm.h with the kernel sources
> > >>> tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources
> > >>> tools headers: Synchronize linux/build_bug.h with the kernel sources
> > >>
> > >>So I think we need to come up with some solution to *not* do this all,
> > >>because honestly, it's getting hugely annoying.
> > >>
> > >>And it's not annoying due to the unnecessary diffs per se, but because
> > >>this tool header sync then causes 'objtool' - which also uses some of
> > >>those headers - to be rebuilt, and then that causes *everything* to be
> > >>rebuilt.
> > >>
> > >>Just because the perf tree decided it needed to sync headers for
> > >>unexplained reasons.
> > >>
> > >>The docs say "this works surprisingly well". That *used* to be the
> > >>case. But with objtool also being affected, it really does *not* work
> > >>well at all.
> > >>
> > >>And no, the tools cannot use the kernel headers directly. That
> > >>*really* didn't work well, and required synchronizing kernel changes
> > >>with tooling changes, and was just a pain.
> > >>
> > >>So the "header copies" solved a real problem, but we need to figure
> > >>out something better.
> > >>
> > >>And honestly, the "something better" may be to just remove the
> > >>mindless check for "headers aren't 100% sync".
> > >>
> > >>Because 99% of the time nobody cares. This time, for example, the
> > >>header changes in question were comments and stuff that was inside a
> > >>__KERNEL__ guard.
> > >>
> > >>So how about just at least as a first step trying to remove the
> > >>warning that is actively detrimental, and only do header syncs when
> > >>there is a *real* reason for them?
> > >
> > >Yeah, I agree, annoying, I'll work on making this opt-in, i.e. no warnings by default, a new target to check if drift happened.
> >
> > Also maybe this is something for Sashiko or some other AI agent, to automate/suggest/do the sync when it makes sense and not just out of making it is in sync no matter what.
>
> Progress was made as the beauty files moved from tools/include into
> tools/perf/trace/beauty. The recompilation should only really happen
> if objtool uses a header via tools/include and the entire process
> being out-of-sync and needing to rebuild seems to be working as
> intended. The sashiko reviews tend to be more demanding in this
> regard.
Agreed. Maybe we can limit the checker script to look up the beauty
directory only then.
>
> I'd like to see tools/include removed, especially as tools projects
> tend to put " -I$(top_srcdir)/tools/include
> -I$(top_srcdir)/tools/uapi/include" which prioritizes the kernel over
> the UAPI headers. I think this is the opposite of what is expected in
> user space. My ideal would be to have things like linux/list.h become
> library projects in tools and you "make install_headers" on them, then
> have the -I pick up the installed headers path like we do for libbpf,
> etc.;
> https://web.git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools-next.git/tree/tools/perf/Makefile.perf?h=perf-tools-next&id=c5a244bf17caf2de22f9e100832b75f72b31d3e6#n363
> I think this would be cleaner but wouldn't remove the need to keep
> things in sync and rebuilding.
Interesting. It'd be great if we could get rid of any duplication.
Thanks,
Namhyung
next prev parent reply other threads:[~2026-03-26 23:05 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-23 10:57 [GIT PULL] perf tools fixes for v7.0: 2nd batch Arnaldo Carvalho de Melo
2026-03-24 16:12 ` Linus Torvalds
[not found] ` <1DCCF693-8FF4-4567-B0BB-41F00B0B4606@gmail.com>
2026-03-24 16:25 ` Arnaldo Melo
2026-03-24 18:00 ` Ian Rogers
2026-03-26 23:05 ` Namhyung Kim [this message]
2026-03-24 16:18 ` pr-tracker-bot
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=acW7r_OrO5aBlmTQ@google.com \
--to=namhyung@kernel.org \
--cc=arnaldo.melo@gmail.com \
--cc=irogers@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.