[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <a2f75da3-7065-4592-aa64-5e3590ce5f91@gmail.com>
Date: Thu, 16 Jan 2025 15:57:05 +0000
From: "Colin King (gmail)" <colin.i.king@...il.com>
To: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>
Cc: Bjorn Helgaas <bhelgaas@...gle.com>,
Mahesh J Salgaonkar <mahesh@...ux.ibm.com>,
Oliver O'Halloran <oohall@...il.com>,
Jonathan Cameron <Jonathan.Cameron@...wei.com>, linux-pci@...r.kernel.org,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: re: PCI: Add TLP Prefix reading to pcie_read_tlp_log()
Hi,
Static analysis shows there is a potential issue in the following commit:
commit 00048c2d5f113bb4e82a0a30dfc4ee12590b81f5
Author: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>
Date: Tue Jan 14 19:08:39 2025 +0200
PCI: Add TLP Prefix reading to pcie_read_tlp_log()
The issue is described as follows:
unsigned int aer_tlp_log_len(struct pci_dev *dev, u32 aercc)
{
return PCIE_STD_NUM_TLP_HEADERLOG +
(aercc & PCI_ERR_CAP_PREFIX_LOG_PRESENT) ?
dev->eetlp_prefix_max : 0;
}
static analysis is warning that the left hand size of the ? operator is
always true and so dev->eetlp_prefix_max is always being returned and
the 0 is never returned (dead code).
I suspect the expected behaviour is as follows:
return PCIE_STD_NUM_TLP_HEADERLOG +
((aercc & PCI_ERR_CAP_PREFIX_LOG_PRESENT) ?
dev->eetlp_prefix_max : 0);
..I'm reluctant to send a fix in case this is not the original intention.
Colin
Download attachment "OpenPGP_0x68C287DFC6A80226.asc" of type "application/pgp-keys" (4825 bytes)
Download attachment "OpenPGP_signature.asc" of type "application/pgp-signature" (841 bytes)
Powered by blists - more mailing lists