Commit 6b65bc29 authored by Wei Yongjun's avatar Wei Yongjun Committed by David S. Miller

tipc: fix imbalance read_unlock_bh in __tipc_nl_add_monitor()

In the error handling case of nla_nest_start() failed read_unlock_bh()
is called  to unlock a lock that had not been taken yet. sparse warns
about the context imbalance as the following:

net/tipc/monitor.c:799:23: warning:
 context imbalance in '__tipc_nl_add_monitor' - different lock contexts for basic block

Fixes: cf6f7e1d ('tipc: dump monitor attributes')
Signed-off-by: default avatarWei Yongjun <weiyj.lk@gmail.com>
Acked-by: default avatarYing Xue <ying.xue@windriver.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9d594b39
...@@ -794,10 +794,10 @@ int __tipc_nl_add_monitor(struct net *net, struct tipc_nl_msg *msg, ...@@ -794,10 +794,10 @@ int __tipc_nl_add_monitor(struct net *net, struct tipc_nl_msg *msg,
return 0; return 0;
attr_msg_full: attr_msg_full:
read_unlock_bh(&mon->lock);
nla_nest_cancel(msg->skb, attrs); nla_nest_cancel(msg->skb, attrs);
msg_full: msg_full:
genlmsg_cancel(msg->skb, hdr); genlmsg_cancel(msg->skb, hdr);
read_unlock_bh(&mon->lock);
return -EMSGSIZE; return -EMSGSIZE;
} }
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