]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
PCI: xilinx-xdma: Fix uninitialized symbols in xilinx_pl_dma_pcie_setup_irq()
authorKrzysztof Wilczyński <kwilczynski@kernel.org>
Sat, 6 Jan 2024 12:43:28 +0000 (12:43 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Jan 2024 23:45:25 +0000 (15:45 -0800)
[ Upstream commit 7aa5f8fcd6d95b713a39fe52c296a6892eda7f02 ]

The error paths that follow calls to the devm_request_irq() functions
within the xilinx_pl_dma_pcie_setup_irq() reference an uninitialized
symbol each that also so happens to be incorrect.

Thus, fix this omission and reference the correct variable when invoking
a given dev_err() function following an error.

This problem was found using smatch via the 0-DAY CI Kernel Test service:

  drivers/pci/controller/pcie-xilinx-dma-pl.c:638 xilinx_pl_dma_pcie_setup_irq() error: uninitialized symbol 'irq'.
  drivers/pci/controller/pcie-xilinx-dma-pl.c:645 xilinx_pl_dma_pcie_setup_irq() error: uninitialized symbol 'irq'.

Fixes: 8d786149d78c ("PCI: xilinx-xdma: Add Xilinx XDMA Root Port driver")
Link: https://lore.kernel.org/oe-kbuild/202312120248.5DblxkBp-lkp@intel.com/
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/r/202312120248.5DblxkBp-lkp@intel.com/
Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/pci/controller/pcie-xilinx-dma-pl.c

index 2f7d676c683cca03b3cd0e46efdea3ca98e5f8bb..96aedc85802a62a5472a610affec2490734ff711 100644 (file)
@@ -635,14 +635,14 @@ static int xilinx_pl_dma_pcie_setup_irq(struct pl_dma_pcie *port)
        err = devm_request_irq(dev, port->intx_irq, xilinx_pl_dma_pcie_intx_flow,
                               IRQF_SHARED | IRQF_NO_THREAD, NULL, port);
        if (err) {
-               dev_err(dev, "Failed to request INTx IRQ %d\n", irq);
+               dev_err(dev, "Failed to request INTx IRQ %d\n", port->intx_irq);
                return err;
        }
 
        err = devm_request_irq(dev, port->irq, xilinx_pl_dma_pcie_event_flow,
                               IRQF_SHARED | IRQF_NO_THREAD, NULL, port);
        if (err) {
-               dev_err(dev, "Failed to request event IRQ %d\n", irq);
+               dev_err(dev, "Failed to request event IRQ %d\n", port->irq);
                return err;
        }