lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <DE82FAQUE3JI.2LC356YAW2541@nvidia.com>
Date: Fri, 14 Nov 2025 11:34:48 +0900
From: "Alexandre Courbot" <acourbot@...dia.com>
To: "John Hubbard" <jhubbard@...dia.com>, "Alexandre Courbot"
 <acourbot@...dia.com>, "Danilo Krummrich" <dakr@...nel.org>
Cc: "Joel Fernandes" <joelagnelf@...dia.com>, "Timur Tabi"
 <ttabi@...dia.com>, "Alistair Popple" <apopple@...dia.com>, "Edwin Peer"
 <epeer@...dia.com>, "Zhi Wang" <zhiw@...dia.com>, "David Airlie"
 <airlied@...il.com>, "Simona Vetter" <simona@...ll.ch>, "Bjorn Helgaas"
 <bhelgaas@...gle.com>, "Miguel Ojeda" <ojeda@...nel.org>, "Alex Gaynor"
 <alex.gaynor@...il.com>, "Boqun Feng" <boqun.feng@...il.com>, "Gary Guo"
 <gary@...yguo.net>, Björn Roy Baron
 <bjorn3_gh@...tonmail.com>, "Benno Lossin" <lossin@...nel.org>, "Andreas
 Hindborg" <a.hindborg@...nel.org>, "Alice Ryhl" <aliceryhl@...gle.com>,
 "Trevor Gross" <tmgross@...ch.edu>, <nouveau@...ts.freedesktop.org>,
 <rust-for-linux@...r.kernel.org>, "LKML" <linux-kernel@...r.kernel.org>,
 "Nouveau" <nouveau-bounces@...ts.freedesktop.org>
Subject: Re: [PATCH v7 4/4] gpu: nova-core: add boot42 support for next-gen
 GPUs

On Fri Nov 14, 2025 at 10:54 AM JST, John Hubbard wrote:
> On 11/13/25 12:03 AM, Alexandre Courbot wrote:
>> On Wed Nov 12, 2025 at 1:30 PM JST, John Hubbard wrote:
> ...
>>>  impl NV_PMC_BOOT_0 {
>>> -    /// Combines `architecture_0` and `architecture_1` to obtain the architecture of the chip.
>>> -    pub(crate) fn architecture(self) -> Result<Architecture> {
>>> -        Architecture::try_from(
>>> -            self.architecture_0() | (self.architecture_1() << Self::ARCHITECTURE_0_RANGE.len()),
>>> -        )
>>> +    pub(crate) fn is_older_than_fermi(self) -> bool {
>>> +        // From https://github.com/NVIDIA/open-gpu-doc/tree/master/manuals :
>>> +        const NV_PMC_BOOT_0_ARCHITECTURE_GF100: u8 = 0xc;
>>> +
>>> +        // Older chips left arch1 zeroed out. That, combined with an arch0 value that is less than
>>> +        // GF100, means "older than Fermi".
>>> +        self.architecture_1() == 0 && self.architecture_0() < NV_PMC_BOOT_0_ARCHITECTURE_GF100
>> 
>> We could also keep `architecture` (making it private) and just test for
>> `self.architecture < NV_PMC_BOOT_0_ARCHITECTURE_GF100`. John, I can do
>> that when applying the series if you think that makes sense.
>> 
>> Considering that the series has been extensively reviewed during the
>> previous iterations, I think we can safely apply it for 6.19, so will
>> proceed once I have an answer.
>
> Hi Alex,
>
> It turns out that this doesn't work well, because architecture()
> returns an Architecture, not a u8, and then we have to map it back
> and the whole things looks a lot worse: complexity on the screen
> that serves no purpose.
>
> After looking at several approaches, I've come full circle back to
> what this patch has.

Ah right, we would need to add `Fermi` to `Architecture`, which would
now include some architecture we don't support...

In the light of this I agree your original approach makes the most
sense - thanks for checking it out!

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ