Commit 472aba5f authored by Ben Chan's avatar Ben Chan Committed by Greg Kroah-Hartman

staging: gdm72xx: fix reference counting in gdm_wimax_event_init

This patch fixes the commit "staging/gdm72xx: cleanup little at
gdm_wimax_event_rcv" (8df858ea),
which mishandles the reference counting of wm_event.
Signed-off-by: default avatarBen Chan <benchan@chromium.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 3c1669d8
...@@ -258,12 +258,16 @@ static int gdm_wimax_event_init(void) ...@@ -258,12 +258,16 @@ static int gdm_wimax_event_init(void)
if (!wm_event.ref_cnt) { if (!wm_event.ref_cnt) {
wm_event.sock = netlink_init(NETLINK_WIMAX, wm_event.sock = netlink_init(NETLINK_WIMAX,
gdm_wimax_event_rcv); gdm_wimax_event_rcv);
if (wm_event.sock) if (wm_event.sock) {
wm_event.ref_cnt++;
INIT_LIST_HEAD(&wm_event.evtq); INIT_LIST_HEAD(&wm_event.evtq);
INIT_LIST_HEAD(&wm_event.freeq); INIT_LIST_HEAD(&wm_event.freeq);
INIT_WORK(&wm_event.ws, __gdm_wimax_event_send); INIT_WORK(&wm_event.ws, __gdm_wimax_event_send);
spin_lock_init(&wm_event.evt_lock); spin_lock_init(&wm_event.evt_lock);
}
}
if (wm_event.sock) {
wm_event.ref_cnt++;
return 0; return 0;
} }
......
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