Commit e78641c1 authored by Alexey Khoroshilov's avatar Alexey Khoroshilov Committed by John W. Linville

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: default avatarAlexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 20e6e55a
...@@ -979,6 +979,7 @@ static int p54u_load_firmware(struct ieee80211_hw *dev, ...@@ -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;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment