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:16:29 +0200 |
commit | 4b55bd396f4809cddb6c9c70db49eaf8d0d3df06 (patch) | |
tree | 99e87ee1f34de0b9b202007fe325a596a11d36e7 /net/qrtr | |
parent | b651a0112a36fe4ee02f769c2c87de0ad7498771 (diff) | |
download | linux-stable-4b55bd396f4809cddb6c9c70db49eaf8d0d3df06.tar.gz linux-stable-4b55bd396f4809cddb6c9c70db49eaf8d0d3df06.tar.bz2 linux-stable-4b55bd396f4809cddb6c9c70db49eaf8d0d3df06.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 41547c6e496a..a8253079902f 100644 --- a/net/qrtr/qrtr.c +++ b/net/qrtr/qrtr.c @@ -571,7 +571,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; } |