[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 1/5] hw/net/e1000e: advance desc_offset in case of null descriptor
From: |
Jason Wang |
Subject: |
[PULL 1/5] hw/net/e1000e: advance desc_offset in case of null descriptor |
Date: |
Tue, 24 Nov 2020 10:44:19 +0800 |
From: Prasad J Pandit <pjp@fedoraproject.org>
While receiving packets via e1000e_write_packet_to_guest() routine,
'desc_offset' is advanced only when RX descriptor is processed. And
RX descriptor is not processed if it has NULL buffer address.
This may lead to an infinite loop condition. Increament 'desc_offset'
to process next descriptor in the ring to avoid infinite loop.
Reported-by: Cheol-woo Myung <330cjfdn@gmail.com>
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
Signed-off-by: Jason Wang <jasowang@redhat.com>
---
hw/net/e1000e_core.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index d8b9e4b..095c01e 100644
--- a/hw/net/e1000e_core.c
+++ b/hw/net/e1000e_core.c
@@ -1596,13 +1596,13 @@ e1000e_write_packet_to_guest(E1000ECore *core, struct
NetRxPkt *pkt,
(const char *) &fcs_pad, e1000x_fcs_len(core->mac));
}
}
- desc_offset += desc_size;
- if (desc_offset >= total_size) {
- is_last = true;
- }
} else { /* as per intel docs; skip descriptors with null buf addr */
trace_e1000e_rx_null_descriptor();
}
+ desc_offset += desc_size;
+ if (desc_offset >= total_size) {
+ is_last = true;
+ }
e1000e_write_rx_descr(core, desc, is_last ? core->rx_pkt : NULL,
rss_info, do_ps ? ps_hdr_len : 0, &bastate.written);
--
2.7.4
- [PULL 0/5] Net patches, Jason Wang, 2020/11/23
- [PULL 1/5] hw/net/e1000e: advance desc_offset in case of null descriptor,
Jason Wang <=
- [PULL 2/5] net: do not exit on "netdev_add help" monitor command, Jason Wang, 2020/11/23
- [PULL 3/5] net: purge queued rx packets on queue deletion, Jason Wang, 2020/11/23
- [PULL 4/5] tap: fix a memory leak, Jason Wang, 2020/11/23
- [PULL 5/5] net: Use correct default-path macro for downscript, Jason Wang, 2020/11/23
- Re: [PULL 0/5] Net patches, Peter Maydell, 2020/11/24