31 lines
1.1 KiB
Diff
31 lines
1.1 KiB
Diff
|
From: Li Qiang <liqiang6-s@360.cn>
|
||
|
Date: Thu, 11 Aug 2016 00:42:20 +0530
|
||
|
Subject: [PATCH] net: vmxnet: initialise local tx descriptor
|
||
|
|
||
|
In Vmxnet3 device emulator while processing transmit(tx) queue,
|
||
|
when it reaches end of packet, it calls vmxnet3_complete_packet.
|
||
|
In that local 'txcq_descr' object is not initialised, which could
|
||
|
leak host memory bytes a guest.
|
||
|
|
||
|
Reported-by: Li Qiang <liqiang6-s@360.cn>
|
||
|
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||
|
Reviewed-by: Dmitry Fleytman <dmitry@daynix.com>
|
||
|
Signed-off-by: Jason Wang <jasowang@redhat.com>
|
||
|
(cherry picked from commit fdda170e50b8af062cf5741e12c4fb5e57a2eacf)
|
||
|
---
|
||
|
hw/net/vmxnet3.c | 1 +
|
||
|
1 file changed, 1 insertion(+)
|
||
|
|
||
|
diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c
|
||
|
index a6ce16e..360290d 100644
|
||
|
--- a/hw/net/vmxnet3.c
|
||
|
+++ b/hw/net/vmxnet3.c
|
||
|
@@ -529,6 +529,7 @@ static void vmxnet3_complete_packet(VMXNET3State *s, int qidx, uint32_t tx_ridx)
|
||
|
|
||
|
VMXNET3_RING_DUMP(VMW_RIPRN, "TXC", qidx, &s->txq_descr[qidx].comp_ring);
|
||
|
|
||
|
+ memset(&txcq_descr, 0, sizeof(txcq_descr));
|
||
|
txcq_descr.txdIdx = tx_ridx;
|
||
|
txcq_descr.gen = vmxnet3_ring_curr_gen(&s->txq_descr[qidx].comp_ring);
|
||
|
|