Re: [PATCH 1/1] net-PA Semi: Deletion of unnecessary checks before the function call "pci_dev_put"
From: Julia Lawall <hidden>
Date: 2014-11-30 17:47:35
Also in:
kernel-janitors, lkml
From: Julia Lawall <hidden>
Date: 2014-11-30 17:47:35
Also in:
kernel-janitors, lkml
On Sun, 30 Nov 2014, Lino Sanfilippo wrote:
On 29.11.2014 19:00, SF Markus Elfring wrote:quoted
out: - if (mac->iob_pdev) - pci_dev_put(mac->iob_pdev); - if (mac->dma_pdev) - pci_dev_put(mac->dma_pdev); + pci_dev_put(mac->iob_pdev); + pci_dev_put(mac->dma_pdev); free_netdev(dev); out_disable_device:Hi, I know there has been some criticism about those kind of "code improvements" already but i would like to point out just one more thing: Some of those NULL pointer checks on input parameters may have been added subsequently to functions. So there may be older kernel versions out there in which those checks dont exists in some cases. If some of the now "cleaned up" code is backported to such a kernel chances are good that those missing checks are overseen. And then neither caller nor callee is doing the NULL pointer check. Quite frankly i would vote for the opposite approach: Never rely on the callee do to checks for NULL and do it always in the caller. An exception could be for calls on a fast path. But most of those checks are done on error paths anyway.
I have heard of at least one case where the problem you are raising happened in practice... julia