| Date | Sun, 06 Dec 2009 16:00:49 -0800 | From | Greg KH <> | Subject | [073/119] acenic: Pass up error code from ace_load_firmware() |
| |
2.6.31-stable review patch. If anyone has any objections, please let us know.
------------------ From: Ben Hutchings <ben@decadent.org.uk>
[ Upstream commit 6c60e0c30c80fcd53e61701b7865a85283f8a341 ]
If ace_load_firmware() fails, ace_init() cleans up but still returns 0, leading to an oops as seen in <http://bugs.debian.org/521383>. It should pass the error code up.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- drivers/net/acenic.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
--- a/drivers/net/acenic.c +++ b/drivers/net/acenic.c @@ -1209,7 +1209,8 @@ static int __devinit ace_init(struct net memset(ap->info, 0, sizeof(struct ace_info)); memset(ap->skb, 0, sizeof(struct ace_skb)); - if (ace_load_firmware(dev)) + ecode = ace_load_firmware(dev); + if (ecode) goto init_error; ap->fw_running = 0;
|