From: Soumyajyotii Ssarkar Date: Thu, 6 Nov 2025 15:36:23 +0000 (+0530) Subject: i82596: Remove crc_valid variable X-Git-Tag: v10.2.0-rc1~14^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=343166a084c522e8090bea6e8ef0137e85759591;p=thirdparty%2Fqemu.git i82596: Remove crc_valid variable While testing and developing for the HPUX 10.20 the crc_valid variable was used in performing CRC checks for the loopback. I expected the CRC to be absent on specific condition and would skip some functional checks for the loopback packet, so initially it added a if-clause that would skip the checks preventing HPUX from getting stuck at phase loopback. However, we can remove it, and this then fixes Coverity CID 1642868. Reported-by: Peter Maydell Signed-off-by: Soumyajyotii Ssarkar Reviewed-by: Helge Deller Signed-off-by: Helge Deller --- diff --git a/hw/net/i82596.c b/hw/net/i82596.c index 37dcc0387b..fb6b54fd71 100644 --- a/hw/net/i82596.c +++ b/hw/net/i82596.c @@ -992,7 +992,6 @@ static ssize_t i82596_receive_packet(I82596State *s, const uint8_t *buf, size_t payload_size = 0; size_t bytes_copied = 0; const uint8_t *packet_data = buf; - bool crc_valid = true; bool out_of_resources = false; size_t crc_size = i82596_get_crc_size(s); @@ -1155,16 +1154,11 @@ rx_complete: } } - if (packet_completed && crc_valid) { + if (packet_completed) { rx_status |= STAT_C | STAT_OK; if (is_broadcast) { rx_status |= 0x0001; } - } else if (packet_completed) { - rx_status |= STAT_C; - if (!crc_valid) { - rx_status |= RX_CRC_ERRORS; - } } else { rx_status |= STAT_B; } @@ -1187,7 +1181,7 @@ rx_complete: return size; } - if (packet_completed && crc_valid && s->rx_status == RX_READY) { + if (packet_completed && s->rx_status == RX_READY) { uint32_t next_rfd_addr = i82596_translate_address(s, rfd.link, false); if (next_rfd_addr != 0 && next_rfd_addr != I596_NULL) { set_uint32(s->scb + 8, next_rfd_addr);