Messages in this thread Patch in this message | | | Date | Sat, 8 Apr 2023 23:12:25 +0530 | Subject | Re: [PATCH net] net: wwan: iosm: Fix error handling path in ipc_pcie_probe() | From | Harshit Mogalapalli <> |
| |
Hi Simon,
On 08/04/23 9:02 pm, Simon Horman wrote: > On Fri, Apr 07, 2023 at 11:56:07PM -0700, Harshit Mogalapalli wrote: >> Smatch reports: >> drivers/net/wwan/iosm/iosm_ipc_pcie.c:298 ipc_pcie_probe() >> warn: missing unwind goto? >> >> When dma_set_mask fails it directly returns without disabling pci >> device and freeing ipc_pcie. Fix this my calling a correct goto label >> >> As dma_set_mask returns either 0 or -EIO, we can use a goto label, as >> it finally returns -EIO. >> >> Renamed the goto label as name of the label before this patch is not >> relevant after this patch. > > nit: I agree that it's nice to name the labels after what they unwind, > rather than where they are called from. But now both schemes > are used in this function.
Thanks a lot for the review. I agree that the naming of the label is inconsistent, should we do something like below?
diff --git a/drivers/net/wwan/iosm/iosm_ipc_pcie.c b/drivers/net/wwan/iosm/iosm_ipc_pcie.c index 5bf5a93937c9..04517bd3325a 100644 --- a/drivers/net/wwan/iosm/iosm_ipc_pcie.c +++ b/drivers/net/wwan/iosm/iosm_ipc_pcie.c @@ -295,7 +295,7 @@ static int ipc_pcie_probe(struct pci_dev *pci, ret = dma_set_mask(ipc_pcie->dev, DMA_BIT_MASK(64)); if (ret) { dev_err(ipc_pcie->dev, "Could not set PCI DMA mask: %d", ret); - return ret; + goto set_mask_fail; }
ipc_pcie_config_aspm(ipc_pcie); @@ -323,6 +323,7 @@ static int ipc_pcie_probe(struct pci_dev *pci, imem_init_fail: ipc_pcie_resources_release(ipc_pcie); resources_req_fail: +set_mask_fail: pci_disable_device(pci); pci_enable_fail: kfree(ipc_pcie);
-- but resources_req_fail: has nothing in its block particularly.
Thanks, Harshit
>> >> Fixes: 035e3befc191 ("net: wwan: iosm: fix driver not working with INTEL_IOMMU disabled") >> Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com> >> --- >> This is based on static analysis, only compile tested. > > I agree with your analysis. > > Reviewed-by: Simon Horman <simon.horman@corigine.com>
| |