]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.4.154/net-caif-add-a-missing-rcu_read_unlock-in-caif_flow_cb.patch
4.14-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 4.4.154 / net-caif-add-a-missing-rcu_read_unlock-in-caif_flow_cb.patch
1 From foo@baz Tue Aug 28 16:10:37 CEST 2018
2 From: YueHaibing <yuehaibing@huawei.com>
3 Date: Thu, 19 Jul 2018 10:27:13 +0800
4 Subject: net: caif: Add a missing rcu_read_unlock() in caif_flow_cb
5
6 From: YueHaibing <yuehaibing@huawei.com>
7
8 [ Upstream commit 64119e05f7b31e83e2555f6782e6cdc8f81c63f4 ]
9
10 Add a missing rcu_read_unlock in the error path
11
12 Fixes: c95567c80352 ("caif: added check for potential null return")
13 Signed-off-by: YueHaibing <yuehaibing@huawei.com>
14 Signed-off-by: David S. Miller <davem@davemloft.net>
15 Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
16 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
17 ---
18 net/caif/caif_dev.c | 4 +++-
19 1 file changed, 3 insertions(+), 1 deletion(-)
20
21 --- a/net/caif/caif_dev.c
22 +++ b/net/caif/caif_dev.c
23 @@ -131,8 +131,10 @@ static void caif_flow_cb(struct sk_buff
24 caifd = caif_get(skb->dev);
25
26 WARN_ON(caifd == NULL);
27 - if (caifd == NULL)
28 + if (!caifd) {
29 + rcu_read_unlock();
30 return;
31 + }
32
33 caifd_hold(caifd);
34 rcu_read_unlock();