p54usb: fix leak at failure path in p54u_load_firmware()

If request_firmware_nowait() fails in p54u_load_firmware(),
p54u_load_firmware_cb is not called and no one decrements usb_dev refcnt.

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>
This commit is contained in:
Alexey Khoroshilov 2013-09-18 00:57:59 +04:00 committed by John W. Linville
parent 20e6e55aaa
commit e78641c19d

View file

@ -979,6 +979,7 @@ static int p54u_load_firmware(struct ieee80211_hw *dev,
if (err) { if (err) {
dev_err(&priv->udev->dev, "(p54usb) cannot load firmware %s " dev_err(&priv->udev->dev, "(p54usb) cannot load firmware %s "
"(%d)!\n", p54u_fwlist[i].fw, err); "(%d)!\n", p54u_fwlist[i].fw, err);
usb_put_dev(udev);
} }
return err; return err;