public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Alexandre Courbot" <acourbot@nvidia.com>
To: "Danilo Krummrich" <dakr@kernel.org>
Cc: "Alice Ryhl" <aliceryhl@google.com>,
	"Daniel Almeida" <daniel.almeida@collabora.com>,
	"Miguel Ojeda" <ojeda@kernel.org>, "Gary Guo" <gary@garyguo.net>,
	"Björn Roy Baron" <bjorn3_gh@protonmail.com>,
	"Benno Lossin" <lossin@kernel.org>,
	"Andreas Hindborg" <a.hindborg@kernel.org>,
	"Trevor Gross" <tmgross@umich.edu>,
	"Boqun Feng" <boqun@kernel.org>,
	"Yury Norov" <yury.norov@gmail.com>,
	"John Hubbard" <jhubbard@nvidia.com>,
	"Alistair Popple" <apopple@nvidia.com>,
	"Joel Fernandes" <joelagnelf@nvidia.com>,
	"Timur Tabi" <ttabi@nvidia.com>, "Edwin Peer" <epeer@nvidia.com>,
	"Eliot Courtney" <ecourtney@nvidia.com>,
	"Dirk Behme" <dirk.behme@de.bosch.com>,
	"Steven Price" <steven.price@arm.com>,
	rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v8 00/10] rust: add `register!` macro
Date: Thu, 12 Mar 2026 11:23:49 +0900	[thread overview]
Message-ID: <DH0G35X70AQJ.1UGLAWA6PR7S9@nvidia.com> (raw)
In-Reply-To: <DGZZSZ3OJIVX.5MJFI8TZV4AD@kernel.org>

On Wed Mar 11, 2026 at 10:38 PM JST, Danilo Krummrich wrote:
> On Wed Mar 11, 2026 at 2:35 PM CET, Alexandre Courbot wrote:
>> On Wed Mar 11, 2026 at 10:07 PM JST, Danilo Krummrich wrote:
>>> On Wed Mar 11, 2026 at 2:01 PM CET, Alexandre Courbot wrote:
>>>> On Wed Mar 11, 2026 at 2:20 AM JST, Danilo Krummrich wrote:
>>>>> On Mon Mar 9, 2026 at 4:13 PM CET, Alexandre Courbot wrote:
>>>>>> Alexandre Courbot (10):
>>>>>>       rust: enable the `generic_arg_infer` feature
>>>>>>       rust: num: add `shr` and `shl` methods to `Bounded`
>>>>>>       rust: num: add `into_bool` method to `Bounded`
>>>>>>       rust: num: make Bounded::get const
>>>>>>       rust: io: add IoLoc type and generic I/O accessors
>>>>>>       rust: io: use generic read/write accessors for primitive accesses
>>>>>>       rust: io: introduce `IntoIoVal` trait and single-argument `write_val`
>>>>>>       rust: io: add `register!` macro
>>>>>>       sample: rust: pci: use `register!` macro
>>>>>>       [FOR REFERENCE] gpu: nova-core: use the kernel `register!` macro
>>>>>
>>>>> I did not look into the root cause, but fetching this patch series my build
>>>>> fails due to a build_assert!(). Maybe you have CONFIG_RUST_BUILD_ASSERT_ALLOW
>>>>> enabled?
>>>>
>>>> Nope, it is disabled and I build with Clippy so I am surprised you are
>>>> getting this. Do you know which module is failing?
>>>
>>> ERROR: modpost: "rust_build_error" [drivers/gpu/nova-core/nova_core.ko] undefined!
>>
>> Does it happen with the exact branch I posted?
>
> Yup, my HEAD is at commit 5c558172827e ("[FOR REFERENCE] gpu: nova-core: use the
> kernel `register!` macro").

I did a mistake when updating the nova-core code - changed a
dynamically-checked index into a static one, and since it could not be
proven at build-time it failed. Working as intended, apart from the too
cryptic error message.

For the record, here is the fix:

--- a/drivers/gpu/nova-core/firmware/fwsec/bootloader.rs
+++ b/drivers/gpu/nova-core/firmware/fwsec/bootloader.rs
@@ -291,14 +291,15 @@ pub(crate) fn run(
             .inspect_err(|e| dev_err!(dev, "Failed to load FWSEC firmware: {:?}\n", e))?;

         // Configure DMA index for the bootloader to fetch the FWSEC firmware from system memory.
-        bar.try_update(
+        bar.update(
             regs::NV_PFALCON_FBIF_TRANSCFG::of::<Gsp>()
-                .at(usize::from_safe_cast(self.dmem_desc.ctx_dma)),
+                .try_at(usize::from_safe_cast(self.dmem_desc.ctx_dma))
+                .ok_or(EINVAL)?,
             |v| {
                 v.with_target(FalconFbifTarget::CoherentSysmem)
                     .with_mem_type(FalconFbifMemType::Physical)
             },
-        )?;
+        );

         let (mbox0, _) = falcon
             .boot(bar, Some(0), None)


      reply	other threads:[~2026-03-12  2:23 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-09 15:13 [PATCH v8 00/10] rust: add `register!` macro Alexandre Courbot
2026-03-09 15:13 ` [PATCH v8 01/10] rust: enable the `generic_arg_infer` feature Alexandre Courbot
2026-03-11  0:13   ` Yury Norov
2026-03-11  6:16     ` Miguel Ojeda
2026-03-09 15:13 ` [PATCH v8 02/10] rust: num: add `shr` and `shl` methods to `Bounded` Alexandre Courbot
2026-03-11  0:26   ` Yury Norov
2026-03-09 15:14 ` [PATCH v8 03/10] rust: num: add `into_bool` method " Alexandre Courbot
2026-03-11  0:29   ` Yury Norov
2026-03-09 15:14 ` [PATCH v8 04/10] rust: num: make Bounded::get const Alexandre Courbot
2026-03-09 15:14 ` [PATCH v8 05/10] rust: io: add IoLoc type and generic I/O accessors Alexandre Courbot
2026-03-10 15:15   ` Danilo Krummrich
2026-03-09 15:14 ` [PATCH v8 06/10] rust: io: use generic read/write accessors for primitive accesses Alexandre Courbot
2026-03-09 15:29   ` Gary Guo
2026-03-10  1:57     ` Alexandre Courbot
2026-03-10  1:59       ` Alexandre Courbot
2026-03-10  2:04         ` Gary Guo
2026-03-10 15:17   ` Danilo Krummrich
2026-03-09 15:14 ` [PATCH v8 07/10] rust: io: introduce `IntoIoVal` trait and single-argument `write_val` Alexandre Courbot
2026-03-09 15:30   ` Gary Guo
2026-03-10  2:05     ` Alexandre Courbot
2026-03-10 16:34   ` Danilo Krummrich
2026-03-10 22:33     ` Gary Guo
2026-03-11 13:25       ` Danilo Krummrich
2026-03-11 13:42         ` Alexandre Courbot
2026-03-11 13:28     ` Alexandre Courbot
2026-03-11 14:56       ` Danilo Krummrich
2026-03-11 15:42         ` Gary Guo
2026-03-11 16:22           ` Danilo Krummrich
2026-03-11 17:16             ` Gary Guo
2026-03-12 13:53         ` Alexandre Courbot
2026-03-12 15:54           ` Danilo Krummrich
2026-03-14  1:19             ` Alexandre Courbot
2026-03-09 15:14 ` [PATCH v8 08/10] rust: io: add `register!` macro Alexandre Courbot
2026-03-10 16:39   ` Danilo Krummrich
2026-03-09 15:14 ` [PATCH v8 09/10] sample: rust: pci: use " Alexandre Courbot
2026-03-09 15:14 ` [PATCH FOR REFERENCE v8 10/10] gpu: nova-core: use the kernel " Alexandre Courbot
2026-03-09 15:43   ` Joel Fernandes
2026-03-09 17:34     ` John Hubbard
2026-03-09 17:51       ` Joel Fernandes
2026-03-09 18:01         ` John Hubbard
2026-03-09 18:28           ` Gary Guo
2026-03-09 18:34             ` John Hubbard
2026-03-09 18:42               ` Danilo Krummrich
2026-03-09 18:47                 ` John Hubbard
2026-03-09 18:42               ` Gary Guo
2026-03-09 18:50                 ` John Hubbard
2026-03-09 18:04       ` Danilo Krummrich
2026-03-09 18:06         ` John Hubbard
2026-03-10  2:18     ` Alexandre Courbot
2026-03-09 18:05 ` [PATCH v8 00/10] rust: add " John Hubbard
2026-03-09 21:08 ` Daniel Almeida
2026-03-10 17:20 ` Danilo Krummrich
2026-03-11 13:01   ` Alexandre Courbot
2026-03-11 13:07     ` Danilo Krummrich
2026-03-11 13:35       ` Alexandre Courbot
2026-03-11 13:38         ` Danilo Krummrich
2026-03-12  2:23           ` Alexandre Courbot [this message]

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=DH0G35X70AQJ.1UGLAWA6PR7S9@nvidia.com \
    --to=acourbot@nvidia.com \
    --cc=a.hindborg@kernel.org \
    --cc=aliceryhl@google.com \
    --cc=apopple@nvidia.com \
    --cc=bjorn3_gh@protonmail.com \
    --cc=boqun@kernel.org \
    --cc=dakr@kernel.org \
    --cc=daniel.almeida@collabora.com \
    --cc=dirk.behme@de.bosch.com \
    --cc=ecourtney@nvidia.com \
    --cc=epeer@nvidia.com \
    --cc=gary@garyguo.net \
    --cc=jhubbard@nvidia.com \
    --cc=joelagnelf@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lossin@kernel.org \
    --cc=ojeda@kernel.org \
    --cc=rust-for-linux@vger.kernel.org \
    --cc=steven.price@arm.com \
    --cc=tmgross@umich.edu \
    --cc=ttabi@nvidia.com \
    --cc=yury.norov@gmail.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox