mirror of https://gitee.com/openkylin/linux.git
[PATCH] orinoco: orinoco_send_wevents() could return without unlocking.
Signed-off-by: Pavel Roskin <proski@gnu.org> orinoco_send_wevents() could return without unlocking. Failure to read BSSID from the hardware would cause orinoco_send_wevents() to return with lock held. Found by sparse. Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
This commit is contained in:
parent
f3cb4cc120
commit
8aeabc3750
|
@ -1112,12 +1112,14 @@ static void orinoco_send_wevents(struct net_device *dev)
|
|||
err = hermes_read_ltv(hw, IRQ_BAP, HERMES_RID_CURRENTBSSID,
|
||||
ETH_ALEN, NULL, wrqu.ap_addr.sa_data);
|
||||
if (err != 0)
|
||||
return;
|
||||
goto out;
|
||||
|
||||
wrqu.ap_addr.sa_family = ARPHRD_ETHER;
|
||||
|
||||
/* Send event to user space */
|
||||
wireless_send_event(dev, SIOCGIWAP, &wrqu, NULL);
|
||||
|
||||
out:
|
||||
orinoco_unlock(priv, &flags);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue