2015-04-10 13:04:17

by Michal Kazior

[permalink] [raw]
Subject: [PATCH] ath10k: fix error handling in pci_probe

If chip_id wasn't recognized clean up code wasn't
executed properly. It would skip freeing memory
causing a leak and irqs causing possibly MSI
warning splats later or even kernel crashes.

Fixes: 1a7fecb766c8 ("ath10k: reset chip before reading chip_id in probe")
Signed-off-by: Michal Kazior <[email protected]>
---
drivers/net/wireless/ath/ath10k/pci.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/ath/ath10k/pci.c b/drivers/net/wireless/ath/ath10k/pci.c
index 262a84f67f62..1f770ac28df4 100644
--- a/drivers/net/wireless/ath/ath10k/pci.c
+++ b/drivers/net/wireless/ath/ath10k/pci.c
@@ -2684,7 +2684,7 @@ static int ath10k_pci_probe(struct pci_dev *pdev,
if (!ath10k_pci_chip_is_supported(pdev->device, chip_id)) {
ath10k_err(ar, "device %04x with chip_id %08x isn't supported\n",
pdev->device, chip_id);
- goto err_sleep;
+ goto err_free_irq;
}

ret = ath10k_core_register(ar, chip_id);
--
2.1.4



2015-04-17 06:33:29

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH] ath10k: fix error handling in pci_probe

Michal Kazior <[email protected]> writes:

> If chip_id wasn't recognized clean up code wasn't
> executed properly. It would skip freeing memory
> causing a leak and irqs causing possibly MSI
> warning splats later or even kernel crashes.
>
> Fixes: 1a7fecb766c8 ("ath10k: reset chip before reading chip_id in probe")
> Signed-off-by: Michal Kazior <[email protected]>

Thanks, applied.

--
Kalle Valo