Re: [PATCH] kbuild: rust: add AutoFDO support
From: Nathan Chancellor
Date: Thu Mar 19 2026 - 19:55:03 EST
On Thu, Mar 19, 2026 at 07:09:22PM +0000, Gary Guo wrote:
> On Thu Mar 19, 2026 at 4:33 PM GMT, Alice Ryhl wrote:
> > On Thu, Mar 19, 2026 at 12:47 PM Gary Guo <gary@xxxxxxxxxxx> wrote:
> >> On Thu Mar 19, 2026 at 11:44 AM GMT, Alice Ryhl wrote:
> >> > Do you think it's worth having Rust not match the CFLAGS here?
> >> >
> >>
> >> I think the C flags should probably be renamed AUTOFDO_LLVM too. After call, all
> >> the perf tools involved here are called llvm-foobar as well.
> >
> > But isn't it just called this because the config option is
> > CONFIG_AUTOFDO_CLANG? So it's the CFLAGS or RUSTFLAGS related to that
> > particular config option. It may make sense to rename
> > CONFIG_AUTOFDO_CLANG to CONFIG_AUTOFDO, but that's out-of-scope for
> > this change, in my opinion.
>
> I get that it's an existing config name, but previously it is a correct
> description, while after this change it is no longer accurate.
>
> I don't know if there's an established practice on renaming CONFIG options when
> this sort thing happens though. Perhaps one way is to have add
> CONFIG_AUTOFDO_CLANG that selects CONFIG_AUTOFDO.
As Miguel mentioned, there is the transitional keyword for Kconfig to
handle renames now but I would really like there to be a compelling
reason for the rename other than LLVM is a little more accurate than
CLANG. The kernel has never really done a great job of referring to
Clang when it means the C compiler vs. the whole LLVM toolchain (like
LTO_CLANG and all its derivatives should be LTO_LLVM since it requires
ld.lld, llvm-nm, and llvm-ar in addition to clang). Additionally, aside
from the configuration, there is the user facing Make variable
CLANG_AUTOFDO_PROFILE that would presumably need to be changed for
consistency.
If we want to change the internal Kbuild variable names, I don't care as
much about that.
Cheers,
Nathan