From: "Danilo Krummrich" <dakr@kernel.org>
To: "Eliot Courtney" <ecourtney@nvidia.com>
Cc: "Alice Ryhl" <aliceryhl@google.com>,
"Alexandre Courbot" <acourbot@nvidia.com>,
"David Airlie" <airlied@gmail.com>,
"Simona Vetter" <simona@ffwll.ch>,
"John Hubbard" <jhubbard@nvidia.com>,
"Alistair Popple" <apopple@nvidia.com>,
"Timur Tabi" <ttabi@nvidia.com>, <nova-gpu@lists.linux.dev>,
<rust-for-linux@vger.kernel.org>,
<dri-devel@lists.freedesktop.org>, <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v5 15/22] gpu: nova-core: vbios: use the first PCI-AT image
Date: Mon, 25 May 2026 16:46:18 +0200 [thread overview]
Message-ID: <DIRU7Z3NH9J2.2HT7Z93HFCFW0@kernel.org> (raw)
In-Reply-To: <20260525-fix-vbios-v5-15-e5e455251537@nvidia.com>
On Mon May 25, 2026 at 3:57 PM CEST, Eliot Courtney wrote:
> @@ -333,7 +333,10 @@ pub(crate) fn new(dev: &device::Device, bar0: &Bar0) -> Result<Vbios> {
> // Convert to a specific image type
> match BiosImageType::try_from(image.pcir.code_type) {
> Ok(BiosImageType::PciAt) => {
> - pci_at_image = Some(PciAtBiosImage::try_from(image)?);
> + // Silently ignore any extra PCI-AT images.
> + if pci_at_image.is_none() {
> + pci_at_image = Some(PciAtBiosImage::try_from(image)?);
> + }
> }
> Ok(BiosImageType::FwSec) => {
> if first_fwsec_image.is_none() {
This does produce the following warning:
CLIPPY [M] drivers/gpu/nova-core/nova_core.o
warning: this `if` can be collapsed into the outer `match`
--> drivers/gpu/nova-core/vbios.rs:337:21
|
337 | / if pci_at_image.is_none() {
338 | | pci_at_image = Some(PciAtBiosImage::try_from(image)?);
339 | | }
| |_____________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.95.0/index.html#collapsible_match
= note: `-W clippy::collapsible-match` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::collapsible_match)]`
help: collapse nested if block
|
335 ~ Ok(BiosImageType::PciAt)
336 | // Silently ignore any extra PCI-AT images.
337 ~ if pci_at_image.is_none() => {
338 | pci_at_image = Some(PciAtBiosImage::try_from(image)?);
339 ~ }
|
warning: 1 warning emitted
I can fix it up this way:
diff --git a/drivers/gpu/nova-core/vbios.rs b/drivers/gpu/nova-core/vbios.rs
index 82811e42e858..bf61b085d7c0 100644
--- a/drivers/gpu/nova-core/vbios.rs
+++ b/drivers/gpu/nova-core/vbios.rs
@@ -332,11 +332,10 @@ pub(crate) fn new(dev: &device::Device, bar0: &Bar0) -> Result<Vbios> {
// Convert to a specific image type
match BiosImageType::try_from(image.pcir.code_type) {
- Ok(BiosImageType::PciAt) => {
+ Ok(BiosImageType::PciAt)
// Silently ignore any extra PCI-AT images.
- if pci_at_image.is_none() {
+ if pci_at_image.is_none() => {
pci_at_image = Some(PciAtBiosImage::try_from(image)?);
- }
}
Ok(BiosImageType::FwSec) => {
if first_fwsec_image.is_none() {
However, I'm not exactly sure it really is an improvement in terms of
readability and whether this is a prime example for this lint.
next prev parent reply other threads:[~2026-05-25 14:46 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-25 13:57 [PATCH v5 00/22] gpu: nova-core: vbios: harden various array accesses and refactor Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 01/22] gpu: nova-core: vbios: stop scanning at BIOS_MAX_SCAN_LEN Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 02/22] gpu: nova-core: vbios: use checked arithmetic for bios image range end Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 03/22] gpu: nova-core: vbios: avoid reading too far in read_more_at_offset Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 04/22] gpu: nova-core: vbios: read BitToken using FromBytes Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 05/22] gpu: nova-core: vbios: use checked ops and accesses in `FwSecBiosImage::ucode` Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 06/22] gpu: nova-core: vbios: use checked access in `FwSecBiosImage::header` Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 07/22] gpu: nova-core: vbios: use checked accesses in `setup_falcon_data` Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 08/22] gpu: nova-core: vbios: drop unused falcon_data_offset from FwSecBiosBuilder Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 09/22] gpu: nova-core: vbios: keep PmuLookupTable local in setup_falcon_data Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 10/22] gpu: nova-core: vbios: compute FWSEC-relative Falcon data offset Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 11/22] gpu: nova-core: vbios: simplify setup_falcon_data Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 12/22] gpu: nova-core: vbios: read PMU lookup entries using FromBytes Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 13/22] gpu: nova-core: vbios: store PMU lookup entries in a KVVec Eliot Courtney
2026-05-25 14:29 ` Danilo Krummrich
2026-05-26 1:05 ` Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 14/22] gpu: nova-core: vbios: construct `FwSecBiosImage` directly from BIOS images Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 15/22] gpu: nova-core: vbios: use the first PCI-AT image Eliot Courtney
2026-05-25 14:46 ` Danilo Krummrich [this message]
2026-05-25 18:02 ` Miguel Ojeda
2026-05-25 18:08 ` Danilo Krummrich
2026-05-25 13:57 ` [PATCH v5 16/22] gpu: nova-core: vbios: use single logical block for the FWSEC section Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 17/22] gpu: nova-core: vbios: use let-else in Vbios::new Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 18/22] gpu: nova-core: vbios: remove unnecessary fields in PciRomHeader Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 19/22] gpu: nova-core: vbios: drop unused image wrappers Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 20/22] gpu: nova-core: vbios: drop redundant TryFrom import Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 21/22] gpu: nova-core: vbios: move constants and functions to be associated Eliot Courtney
2026-05-25 13:57 ` [PATCH v5 22/22] gpu: nova-core: vbios: remove unused rom_header field Eliot Courtney
2026-05-25 18:35 ` [PATCH v5 00/22] gpu: nova-core: vbios: harden various array accesses and refactor Danilo Krummrich
2026-05-25 18:37 ` Danilo Krummrich
2026-05-26 1:34 ` Alexandre Courbot
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=DIRU7Z3NH9J2.2HT7Z93HFCFW0@kernel.org \
--to=dakr@kernel.org \
--cc=acourbot@nvidia.com \
--cc=airlied@gmail.com \
--cc=aliceryhl@google.com \
--cc=apopple@nvidia.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=ecourtney@nvidia.com \
--cc=jhubbard@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=nova-gpu@lists.linux.dev \
--cc=rust-for-linux@vger.kernel.org \
--cc=simona@ffwll.ch \
--cc=ttabi@nvidia.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 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.