[PATCH v3 0/9] vsock/virtio: SKB allocation improvements

Will Deacon posted 9 patches 2 months, 3 weeks ago
There is a newer version of this series
drivers/vhost/vsock.c                   | 15 ++++----
include/linux/virtio_vsock.h            | 46 +++++++++++++++++++------
net/vmw_vsock/virtio_transport.c        | 20 ++++++++---
net/vmw_vsock/virtio_transport_common.c |  3 +-
4 files changed, 60 insertions(+), 24 deletions(-)
[PATCH v3 0/9] vsock/virtio: SKB allocation improvements
Posted by Will Deacon 2 months, 3 weeks ago
Hi folks,

Here is version three of the patches I previously posted here:

  v1: https://lore.kernel.org/r/20250625131543.5155-1-will@kernel.org
  v2: https://lore.kernel.org/r/20250701164507.14883-1-will@kernel.org

Changes since v2 include:

  * Pass payload length as a parameter to virtio_vsock_skb_put()

  * Reinstate VIRTIO_VSOCK_DEFAULT_RX_BUF_SIZE based on a 4KiB total
    allocation size

  * Split movement of bounds check into a separate patch

Thanks again to Stefano for all the review feedback so far.

Cheers,

Will

Cc: Keir Fraser <keirf@google.com>
Cc: Steven Moreland <smoreland@google.com>
Cc: Frederick Mayle <fmayle@google.com>
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Cc: Stefano Garzarella <sgarzare@redhat.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Cc: "Eugenio Pérez" <eperezma@redhat.com>
Cc: linux-kernel@vger.kernel.org 
Cc: netdev@vger.kernel.org 
Cc: virtualization@lists.linux.dev

--->8

Will Deacon (9):
  vhost/vsock: Avoid allocating arbitrarily-sized SKBs
  vsock/virtio: Validate length in packet header before skb_put()
  vsock/virtio: Move length check to callers of
    virtio_vsock_skb_rx_put()
  vsock/virtio: Resize receive buffers so that each SKB fits in a 4K
    page
  vsock/virtio: Rename virtio_vsock_alloc_skb()
  vsock/virtio: Move SKB allocation lower-bound check to callers
  vhost/vsock: Allocate nonlinear SKBs for handling large receive
    buffers
  vsock/virtio: Rename virtio_vsock_skb_rx_put()
  vsock/virtio: Allocate nonlinear SKBs for handling large transmit
    buffers

 drivers/vhost/vsock.c                   | 15 ++++----
 include/linux/virtio_vsock.h            | 46 +++++++++++++++++++------
 net/vmw_vsock/virtio_transport.c        | 20 ++++++++---
 net/vmw_vsock/virtio_transport_common.c |  3 +-
 4 files changed, 60 insertions(+), 24 deletions(-)

-- 
2.50.0.727.gbf7dc18ff4-goog

Re: [PATCH v3 0/9] vsock/virtio: SKB allocation improvements
Posted by Stefano Garzarella 2 months, 3 weeks ago
On Mon, Jul 14, 2025 at 04:20:54PM +0100, Will Deacon wrote:
>Hi folks,
>
>Here is version three of the patches I previously posted here:
>
>  v1: https://lore.kernel.org/r/20250625131543.5155-1-will@kernel.org
>  v2: https://lore.kernel.org/r/20250701164507.14883-1-will@kernel.org
>
>Changes since v2 include:
>
>  * Pass payload length as a parameter to virtio_vsock_skb_put()
>
>  * Reinstate VIRTIO_VSOCK_DEFAULT_RX_BUF_SIZE based on a 4KiB total
>    allocation size
>
>  * Split movement of bounds check into a separate patch
>
>Thanks again to Stefano for all the review feedback so far.

Thanks for the series!
I left just a small comment on a patch, the rest LGTM!

I run my test suite without any issue!

Thanks,
Stefano
Re: [PATCH v3 0/9] vsock/virtio: SKB allocation improvements
Posted by Will Deacon 2 months, 3 weeks ago
On Tue, Jul 15, 2025 at 12:01:56PM +0200, Stefano Garzarella wrote:
> On Mon, Jul 14, 2025 at 04:20:54PM +0100, Will Deacon wrote:
> > Hi folks,
> > 
> > Here is version three of the patches I previously posted here:
> > 
> >  v1: https://lore.kernel.org/r/20250625131543.5155-1-will@kernel.org
> >  v2: https://lore.kernel.org/r/20250701164507.14883-1-will@kernel.org
> > 
> > Changes since v2 include:
> > 
> >  * Pass payload length as a parameter to virtio_vsock_skb_put()
> > 
> >  * Reinstate VIRTIO_VSOCK_DEFAULT_RX_BUF_SIZE based on a 4KiB total
> >    allocation size
> > 
> >  * Split movement of bounds check into a separate patch
> > 
> > Thanks again to Stefano for all the review feedback so far.
> 
> Thanks for the series!
> I left just a small comment on a patch, the rest LGTM!
> 
> I run my test suite without any issue!

Thank, Stefano. I'll send a v4 later this week with your R-b tags and
an unlikely() in the second patch.

Will