If pci_enable_device fails, bdx_probe returns without freeing the allocated pci_nic structure.

Coverity CID 1908.

Signed-off-by: Florin Malita <[EMAIL PROTECTED]>
---

drivers/net/tehuti.c |    3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/tehuti.c b/drivers/net/tehuti.c
index 8d04654..4e1b84e 100644
--- a/drivers/net/tehuti.c
+++ b/drivers/net/tehuti.c
@@ -1906,7 +1906,7 @@ bdx_probe(struct pci_dev *pdev, const struct 
pci_device_id *ent)

    /************** pci *****************/
        if ((err = pci_enable_device(pdev)))    /* it trigers interrupt, dunno 
why. */
-               RET(err);                       /* it's not a problem though */
+               goto err_pci;                   /* it's not a problem though */

        if (!(err = pci_set_dma_mask(pdev, DMA_64BIT_MASK)) &&
            !(err = pci_set_consistent_dma_mask(pdev, DMA_64BIT_MASK))) {
@@ -2076,6 +2076,7 @@ err_out_res:
        pci_release_regions(pdev);
err_dma:
        pci_disable_device(pdev);
+err_pci:
        vfree(nic);

        RET(err);

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to