diff options
author | Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> | 2020-05-19 23:44:16 +0530 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-06-03 08:17:38 +0200 |
commit | c151fa995ff78a2bcd7ba4d16bf3ae78724049da (patch) | |
tree | 11e9f6062a4aa9edf4138ad2aa1720cd9c0934ab /net/qrtr | |
parent | 5fd86d72324cadd1af55589f31aafa920a4ad736 (diff) | |
download | linux-stable-c151fa995ff78a2bcd7ba4d16bf3ae78724049da.tar.gz linux-stable-c151fa995ff78a2bcd7ba4d16bf3ae78724049da.tar.bz2 linux-stable-c151fa995ff78a2bcd7ba4d16bf3ae78724049da.zip |
net: qrtr: Fix passing invalid reference to qrtr_local_enqueue()
[ Upstream commit d28ea1fbbf437054ef339afec241019f2c4e2bb6 ]
Once the traversal of the list is completed with list_for_each_entry(),
the iterator (node) will point to an invalid object. So passing this to
qrtr_local_enqueue() which is outside of the iterator block is erroneous
eventhough the object is not used.
So fix this by passing NULL to qrtr_local_enqueue().
Fixes: bdabad3e363d ("net: Add Qualcomm IPC router")
Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/qrtr')
-rw-r--r-- | net/qrtr/qrtr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/qrtr/qrtr.c b/net/qrtr/qrtr.c index 944ce686bfe5..b9b6235a4cf2 100644 --- a/net/qrtr/qrtr.c +++ b/net/qrtr/qrtr.c @@ -660,7 +660,7 @@ static int qrtr_bcast_enqueue(struct qrtr_node *node, struct sk_buff *skb) } mutex_unlock(&qrtr_node_lock); - qrtr_local_enqueue(node, skb); + qrtr_local_enqueue(NULL, skb); return 0; } |