Thread (7 messages) 7 messages, 3 authors, 2026-02-03

Re: [PATCH v2] PCI: s32g: Fix ports parsing

From: Frank Li <Frank.li@nxp.com>
Date: 2026-02-03 15:41:23
Also in: imx, linux-pci, lkml

On Tue, Feb 03, 2026 at 07:56:23AM +0100, Vincent Guittot wrote:
On Mon, 2 Feb 2026 at 20:46, Frank Li [off-list ref] wrote:
quoted
On Mon, Feb 02, 2026 at 08:23:30PM +0100, Vincent Guittot wrote:
quoted
On Mon, 2 Feb 2026 at 18:42, Frank Li [off-list ref] wrote:
quoted
On Mon, Feb 02, 2026 at 04:10:50PM +0100, Vincent Guittot wrote:
quoted
No error return is missing after the loop resulting in removing the
ports from the list.

Fixes: 5cbc7d3e316e ("PCI: s32g: Add NXP S32G PCIe controller driver (RC)")
Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
---

Change since v1:
- handle correctly the case when there is no child port

 drivers/pci/controller/dwc/pcie-nxp-s32g.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/pci/controller/dwc/pcie-nxp-s32g.c b/drivers/pci/controller/dwc/pcie-nxp-s32g.c
index 47745749f75c..b3ec38099fa3 100644
--- a/drivers/pci/controller/dwc/pcie-nxp-s32g.c
+++ b/drivers/pci/controller/dwc/pcie-nxp-s32g.c
@@ -282,12 +282,12 @@ static int s32g_pcie_parse_ports(struct device *dev, struct s32g_pcie *s32g_pp)

              ret = s32g_pcie_parse_port(s32g_pp, of_port);
              if (ret)
-                     goto err_port;
+                     break;
      }

-err_port:
-     list_for_each_entry_safe(port, tmp, &s32g_pp->ports, list)
-             list_del(&port->list);
break and goto is logical equal here. So only need below if (ret).
Yes it's similar that why I removed it, the goto becomes useless and
make code less readable
But don't suggest change in this fixes patch, which should focus on the
key part.
It's not a suggested change, it's the fix. err_port is now wrong
because it's the path for all cases.
But "goto" is the same as orginal "break". Really fix is below "if (ret)".

Frank
quoted
Frank
quoted
quoted
Frank
quoted
+     if (ret)
+             list_for_each_entry_safe(port, tmp, &s32g_pp->ports, list)
+                     list_del(&port->list);

      return ret;
 }
--
2.43.0
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help