ssb: Fix error routine when fallback SPROM fails
authorLarry Finger <Larry.Finger@lwfinger.net>
Sat, 5 Nov 2016 19:08:57 +0000 (14:08 -0500)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 16 Mar 2017 02:18:26 +0000 (02:18 +0000)
commit 8052d7245b6089992343c80b38b14dbbd8354651 upstream.

When there is a CRC error in the SPROM read from the device, the code
attempts to handle a fallback SPROM. When this also fails, the driver
returns zero rather than an error code.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/ssb/pci.c

index 34c3bab..8d4ddd1 100644 (file)
@@ -713,6 +713,7 @@ static int ssb_pci_sprom_get(struct ssb_bus *bus,
                                ssb_printk(KERN_WARNING PFX "WARNING: Using"
                                           " fallback SPROM failed (err %d)\n",
                                           err);
+                               goto out_free;
                        } else {
                                ssb_dprintk(KERN_DEBUG PFX "Using SPROM"
                                            " revision %d provided by"