From: Dan Carpenter Date: Thu, 8 Mar 2018 09:36:28 +0000 (+0300) Subject: net/ncsi: unlock on error in ncsi_set_interface_nl() X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=054f34da60dfa46457ca39dd111bb2b393575dab;p=openwrt%2Fstaging%2Fblogic.git net/ncsi: unlock on error in ncsi_set_interface_nl() There are two error paths which are missing unlocks in this function. Fixes: 955dc68cb9b2 ("net/ncsi: Add generic netlink family") Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller --- diff --git a/net/ncsi/ncsi-netlink.c b/net/ncsi/ncsi-netlink.c index b73239b76349..05fcfb4fbe1d 100644 --- a/net/ncsi/ncsi-netlink.c +++ b/net/ncsi/ncsi-netlink.c @@ -299,6 +299,7 @@ static int ncsi_set_interface_nl(struct sk_buff *msg, struct genl_info *info) package = np; if (!package) { /* The user has set a package that does not exist */ + spin_unlock_irqrestore(&ndp->lock, flags); return -ERANGE; } @@ -317,6 +318,7 @@ static int ncsi_set_interface_nl(struct sk_buff *msg, struct genl_info *info) /* The user has set a channel that does not exist on this * package */ + spin_unlock_irqrestore(&ndp->lock, flags); netdev_info(ndp->ndev.dev, "NCSI: Channel %u does not exist!\n", channel_id); return -ERANGE;