All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alice Ryhl <aliceryhl@google.com>
To: "Paweł Anikiel" <panikiel@google.com>
Cc: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>,
	Peter Zijlstra <peterz@infradead.org>,
	 Kees Cook <kees@kernel.org>,
	Sami Tolvanen <samitolvanen@google.com>,
	 Alex Gaynor <alex.gaynor@gmail.com>,
	Borislav Petkov <bp@alien8.de>,
	 Dave Hansen <dave.hansen@linux.intel.com>,
	Ingo Molnar <mingo@redhat.com>,
	 Josh Poimboeuf <jpoimboe@kernel.org>,
	Masahiro Yamada <masahiroy@kernel.org>,
	 Miguel Ojeda <ojeda@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	 Nathan Chancellor <nathan@kernel.org>,
	x86@kernel.org, linux-kernel@vger.kernel.org,
	 rust-for-linux@vger.kernel.org,
	Matthew Maurer <mmaurer@google.com>,
	 Ramon de C Valle <rcvalle@google.com>
Subject: Re: [PATCH] x86/Kconfig: make CFI_AUTO_DEFAULT depend on !RUST
Date: Fri, 9 May 2025 09:39:37 +0000	[thread overview]
Message-ID: <aB3NWUrtWMXOppYE@google.com> (raw)
In-Reply-To: <CAM5zL5psM0ED0A5ZkEdNi34q2itfyMCi+QRBtG-5URUsChUU6A@mail.gmail.com>

On Fri, May 09, 2025 at 11:11:48AM +0200, Paweł Anikiel wrote:
> On Fri, May 9, 2025 at 11:04 AM Miguel Ojeda
> <miguel.ojeda.sandonis@gmail.com> wrote:
> >
> > On Fri, May 9, 2025 at 10:46 AM Alice Ryhl <aliceryhl@google.com> wrote:
> > >
> > > Actually ... I don't think putting it on CFI_AUTO_DEFAULT the right
> > > approach.
> > >
> > > Shouldn't the depends on clause go on `config FINEIBT` instead? After
> > > all, the current patch just means that you can't make FineIBT the
> > > default option. But you can still pass kcfi=fineibt on boot to enble
> > > FineIBT which would result in the same crash.
> >
> > I thought the intention was to avoid disabling FineIBT at config time:
> > https://lore.kernel.org/all/202504161442.66CE2596@keescook/
> 
> I think you mean enabling FineIBT - yes, this patch does exactly that,
> it's still possible to enable it by hand with cfi=
> 
> > If another approach is needed, then we can change it on top if that is
> > OK (I am about to submit the PR).
> 
> Putting it on CONFIG_FINEIBT was my initial idea, but it turns out
> that this creates a dependency cycle in Kconfig:
> 
> error: recursive dependency detected!
>         symbol RUST depends on CALL_PADDING
>         symbol CALL_PADDING is selected by FINEIBT
>         symbol FINEIBT depends on RUST
> 
> Not sure if it's possible to make it work.

To fix that, we probably have to do one of:

Option 1: Upgrade the rustc MSRV past 1.81 and drop the depends on
          CALL_PADDING.

Option 2: Split `config FINEIBT` into two options:

config HAVE_FINEIBT
	def_bool y
	depends on X86_KERNEL_IBT && CFI_CLANG && MITIGATION_RETPOLINE
	depends on !RUST || RUSTC_VERSION >= 108800

config FINEIBT
	bool "Accept cfi=fineibt option at boot"
	depends on HAVE_FINEIBT
	select CALL_PADDING

Alice

  reply	other threads:[~2025-05-09  9:39 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-10 11:54 [PATCH] x86/Kconfig: make CFI_AUTO_DEFAULT depend on !RUST Paweł Anikiel
2025-04-10 12:36 ` Peter Zijlstra
2025-04-10 12:45   ` Peter Zijlstra
2025-04-10 13:09     ` Peter Zijlstra
2025-04-10 13:18       ` Paweł Anikiel
2025-04-10 13:20       ` Alice Ryhl
2025-04-10 13:21       ` Miguel Ojeda
2025-04-10 13:26         ` Peter Zijlstra
2025-04-10 13:27           ` Miguel Ojeda
2025-04-10 13:34             ` Peter Zijlstra
2025-04-10 13:54               ` Miguel Ojeda
2025-04-10 13:57                 ` Peter Zijlstra
2025-04-10 14:05                   ` Miguel Ojeda
2025-04-10 14:15                     ` Peter Zijlstra
2025-04-10 15:04                       ` Alice Ryhl
2025-04-10 13:59               ` Alice Ryhl
2025-04-10 14:08                 ` Peter Zijlstra
2025-04-10 14:54                   ` Miguel Ojeda
2025-04-10 15:14                     ` Peter Zijlstra
2025-04-10 18:01                       ` Miguel Ojeda
2025-04-10 15:02                   ` Alice Ryhl
2025-04-15 15:15                 ` Miguel Ojeda
2025-04-16 10:38                   ` Alice Ryhl
2025-04-16 20:20                   ` Peter Zijlstra
2025-04-16 21:51                     ` Kees Cook
2025-04-17  8:18                       ` Peter Zijlstra
2025-04-17 18:40                         ` Miguel Ojeda
2025-04-18  9:45                           ` Peter Zijlstra
2025-05-06 22:19                           ` Miguel Ojeda
2025-05-09  8:46                             ` Alice Ryhl
2025-05-09  9:04                               ` Miguel Ojeda
2025-05-09  9:11                                 ` Paweł Anikiel
2025-05-09  9:39                                   ` Alice Ryhl [this message]
2025-05-09 16:34                                     ` Kees Cook
2025-05-09 19:33                                   ` Miguel Ojeda
2025-04-10 13:12     ` Paweł Anikiel
2025-04-10 13:25       ` Peter Zijlstra
2025-04-10 15:45         ` [PATCH] objtool: Detect __nocfi calls Peter Zijlstra
2025-04-10 19:09           ` Josh Poimboeuf
2025-04-11  6:46             ` Peter Zijlstra
2025-04-10 19:32           ` Miguel Ojeda
2025-04-10 19:43           ` Sami Tolvanen
2025-04-11  6:44             ` Peter Zijlstra
2025-04-12 12:31               ` Peter Zijlstra
2025-04-10 13:50       ` [PATCH] x86/Kconfig: make CFI_AUTO_DEFAULT depend on !RUST Miguel Ojeda

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=aB3NWUrtWMXOppYE@google.com \
    --to=aliceryhl@google.com \
    --cc=alex.gaynor@gmail.com \
    --cc=bp@alien8.de \
    --cc=dave.hansen@linux.intel.com \
    --cc=jpoimboe@kernel.org \
    --cc=kees@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masahiroy@kernel.org \
    --cc=miguel.ojeda.sandonis@gmail.com \
    --cc=mingo@redhat.com \
    --cc=mmaurer@google.com \
    --cc=nathan@kernel.org \
    --cc=ojeda@kernel.org \
    --cc=panikiel@google.com \
    --cc=peterz@infradead.org \
    --cc=rcvalle@google.com \
    --cc=rust-for-linux@vger.kernel.org \
    --cc=samitolvanen@google.com \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.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.