Message ID | 5686E21E.4090901@users.sourceforge.net (mailing list archive) |
---|---|
State | Rejected |
Delegated to: | Kalle Valo |
Headers | show |
Hello. On 1/1/2016 11:31 PM, SF Markus Elfring wrote: > From: Markus Elfring <elfring@users.sourceforge.net> > Date: Fri, 1 Jan 2016 21:12:29 +0100 > > This issue was detected by using the Coccinelle software. > > Adjust a jump target to avoid a check repetition before the function > call "il_eeprom_free". One question: why? > > Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> > --- > drivers/net/wireless/intel/iwlegacy/common.c | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) > > diff --git a/drivers/net/wireless/intel/iwlegacy/common.c b/drivers/net/wireless/intel/iwlegacy/common.c > index c3afaf7..ae45fd3 100644 > --- a/drivers/net/wireless/intel/iwlegacy/common.c > +++ b/drivers/net/wireless/intel/iwlegacy/common.c [...] > @@ -772,9 +772,11 @@ il_eeprom_init(struct il_priv *il) > done: > il->ops->eeprom_release_semaphore(il); > > -err: > - if (ret) > + if (ret) { > +free_eeprom: This is ugly, I'd say. [...] MBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/wireless/intel/iwlegacy/common.c b/drivers/net/wireless/intel/iwlegacy/common.c index c3afaf7..ae45fd3 100644 --- a/drivers/net/wireless/intel/iwlegacy/common.c +++ b/drivers/net/wireless/intel/iwlegacy/common.c @@ -734,7 +734,7 @@ il_eeprom_init(struct il_priv *il) if (ret < 0) { IL_ERR("EEPROM not found, EEPROM_GP=0x%08x\n", gp); ret = -ENOENT; - goto err; + goto free_eeprom; } /* Make sure driver (instead of uCode) is allowed to read EEPROM */ @@ -742,7 +742,7 @@ il_eeprom_init(struct il_priv *il) if (ret < 0) { IL_ERR("Failed to acquire EEPROM semaphore.\n"); ret = -ENOENT; - goto err; + goto free_eeprom; } /* eeprom is an array of 16bit values */ @@ -772,9 +772,11 @@ il_eeprom_init(struct il_priv *il) done: il->ops->eeprom_release_semaphore(il); -err: - if (ret) + if (ret) { +free_eeprom: il_eeprom_free(il); + } + /* Reset chip to save power until we load uCode during "up". */ il_apm_stop(il); return ret;