On 5/23/24 15:18, Markus Elfring wrote: >> Make sure we turn off the clock on probe failure and device removal. > … >> +++ b/drivers/pci/controller/pcie-xilinx-nwl.c > … >> @@ -817,11 +818,23 @@ static int nwl_pcie_probe(struct platform_device *pdev) >> err = nwl_pcie_enable_msi(pcie); >> if (err < 0) { >> dev_err(dev, "failed to enable MSI support: %d\n", err); >> - return err; >> + goto err_clk; >> } >> } >> >> - return pci_host_probe(bridge); >> + err = pci_host_probe(bridge); >> + >> +err_clk: >> + if (err) >> + clk_disable_unprepare(pcie->clk); > > I suggest to use the label “disable_unprepare_clock” directly before this function call > (in the if branch) so that a duplicate check would be avoided after some error cases. Well if you want to avoid a check, we can just do err = pci_host_probe(bridge); if (!err) return 0; err_clk: ... --Sean