Browse Source

hw/net/xgamc: skip automatic zero-init of large array

The 'xgmac_enet_send' method has a 8k byte array used for copying
data between guest and host. Skip the automatic zero-init of this
array to eliminate the performance overhead in the I/O hot path.

The 'frame' buffer will be fully initialized when reading guest
memory to fetch the data to send.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 20250610123709.835102-23-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
pull/287/head
Daniel P. Berrangé 10 months ago
committed by Stefan Hajnoczi
parent
commit
8b723287b8
  1. 2
      hw/net/xgmac.c

2
hw/net/xgmac.c

@ -207,7 +207,7 @@ static void xgmac_enet_send(XgmacState *s)
struct desc bd;
int frame_size;
int len;
uint8_t frame[8192];
QEMU_UNINITIALIZED uint8_t frame[8192];
uint8_t *ptr;
ptr = frame;

Loading…
Cancel
Save