3c0463a650
Recently MemReentrancyGuard was added to DeviceState to record that the
device is engaging in I/O. The network device backend needs to update it
when delivering a packet to a device.
This implementation follows what bottom half does, but it does not add
a tracepoint for the case that the network device backend started
delivering a packet to a device which is already engaging in I/O. This
is because such reentrancy frequently happens for
qemu_flush_queued_packets() and is insignificant.
Fixes: CVE-2023-3019
Reported-by: Alexander Bulekov <alxndr@bu.edu>
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Acked-by: Alexander Bulekov <alxndr@bu.edu>
Signed-off-by: Jason Wang <jasowang@redhat.com>
(cherry picked from commit
|
||
---|---|---|
.. | ||
announce.h | ||
can_emu.h | ||
can_host.h | ||
checksum.h | ||
eth.h | ||
filter.h | ||
net.h | ||
queue.h | ||
slirp.h | ||
tap.h | ||
vhost_net.h | ||
vhost-user.h | ||
vhost-vdpa.h |