iwlegacy: don't return zero on failure paths in il4965_pci_probe()
authorAlexey Khoroshilov <khoroshilov@ispras.ru>
Sat, 19 Jan 2013 12:56:34 +0000 (16:56 +0400)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 22 Jan 2013 21:01:30 +0000 (16:01 -0500)
If hardware is not ready, il4965_pci_probe() breaks off initialization,
deallocates all resources, but returns zero.
The patch adds -EIO as return value in this case.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/iwlegacy/4965-mac.c

index 10fc249..f1dc040 100644 (file)
@@ -6556,6 +6556,7 @@ il4965_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
        il4965_prepare_card_hw(il);
        if (!il->hw_ready) {
                IL_WARN("Failed, HW not ready\n");
+               err = -EIO;
                goto out_iounmap;
        }