summaryrefslogtreecommitdiffstats
path: root/drivers/vhost/test.c
diff options
context:
space:
mode:
authorPaolo Abeni <pabeni@redhat.com>2021-09-08 13:42:09 +0200
committerDavid S. Miller <davem@davemloft.net>2021-09-09 10:52:12 +0100
commit3c4cea8fa7f71f00c5279547043a84bc2a4d8b8c (patch)
treeaa9916f11160ad7edf373044eebe6bedcd0ed0de /drivers/vhost/test.c
parent276aae377206d60b9b7b7df4586cd9f2a813f5d0 (diff)
downloadlinux-3c4cea8fa7f71f00c5279547043a84bc2a4d8b8c.tar.bz2
vhost_net: fix OoB on sendmsg() failure.
If the sendmsg() call in vhost_tx_batch() fails, both the 'batched_xdp' and 'done_idx' indexes are left unchanged. If such failure happens when batched_xdp == VHOST_NET_BATCH, the next call to vhost_net_build_xdp() will access and write memory outside the xdp buffers area. Since sendmsg() can only error with EBADFD, this change addresses the issue explicitly freeing the XDP buffers batch on error. Fixes: 0a0be13b8fe2 ("vhost_net: batch submitting XDP buffers to underlayer sockets") Suggested-by: Jason Wang <jasowang@redhat.com> Signed-off-by: Paolo Abeni <pabeni@redhat.com> Acked-by: Jason Wang <jasowang@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/vhost/test.c')
0 files changed, 0 insertions, 0 deletions