diff --git a/tools/ioemu/hw/pcnet.c b/tools/ioemu/hw/pcnet.c index f3b577b1f6..fcf4a3528e 100644 --- a/tools/ioemu/hw/pcnet.c +++ b/tools/ioemu/hw/pcnet.c @@ -376,6 +376,10 @@ static int pcnet_can_receive(void *opaque) if (s->recv_pos > 0) return 0; + pcnet_rdte_poll(s); + if (!(CSR_CRST(s) & 0x8000)) { + return 0; + } return sizeof(s->buffer)-16; }