[PATCH 0/9][SRU][X] CVE-2019-3900: vhost DoS
Tyler Hicks
tyhicks at canonical.com
Thu Aug 8 04:45:03 UTC 2019
https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2019-3900.html
An infinite loop issue was found in the vhost_net kernel module in
Linux Kernel up to and including v5.1-rc6, while handling incoming
packets in handle_rx(). It could occur if one end sends packets faster
than the other end can process them. A guest user, maybe remote one,
could use this flaw to stall the vhost_net kernel thread, resulting in
a DoS scenario.
Fairly involved backports. Build logs are clean. I tested with
netperf's TCP_RR, TCP_SENDFILE, TCP_STREAM, UDP_RR, and UDP_STREAM
tests. The tests were initiated from both the host and the guest to
ensure that the vhost-net connection was stable and that performance was
similar before and after the patches were applied.
Tyler
Jason Wang (6):
vhost: introduce vhost_vq_avail_empty()
vhost_net: tx batching
vhost_net: introduce vhost_exceeds_weight()
vhost: introduce vhost_exceeds_weight()
vhost_net: fix possible infinite loop
vhost: scsi: add weight support
Paolo Abeni (1):
vhost_net: use packet weight for rx handler, too
Willem de Bruijn (1):
vhost_net: do not stall on zerocopy depletion
haibinzhang(张海斌) (1):
vhost-net: set packet weight of tx polling to 2 * vq size
drivers/vhost/net.c | 60 ++++++++++++++++++++++++++++++++-------------------
drivers/vhost/scsi.c | 14 ++++++++----
drivers/vhost/vhost.c | 34 ++++++++++++++++++++++++++++-
drivers/vhost/vhost.h | 7 +++++-
4 files changed, 87 insertions(+), 28 deletions(-)
--
2.7.4
More information about the kernel-team
mailing list