From: David Laight <david.laight.linux@gmail.com>
To: Stefano Garzarella <sgarzare@redhat.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
patchwork-bot+netdevbpf@kernel.org, netdev@vger.kernel.org,
xuanzhuo@linux.alibaba.com, horms@kernel.org,
virtualization@lists.linux.dev, linux-kernel@vger.kernel.org,
kvm@vger.kernel.org, kuba@kernel.org, eperezma@redhat.com,
pabeni@redhat.com, davem@davemloft.net, jasowang@redhat.com,
stefanha@redhat.com, edumazet@google.com, stable@vger.kernel.org
Subject: Re: [PATCH net] vsock/virtio: fix skb overhead overflow on 32-bit builds
Date: Mon, 25 May 2026 18:14:40 +0100 [thread overview]
Message-ID: <20260525181440.5a6cdb43@pumpkin> (raw)
In-Reply-To: <ahRmBTnNMrg-oano@sgarzare-redhat>
On Mon, 25 May 2026 17:16:18 +0200
Stefano Garzarella <sgarzare@redhat.com> wrote:
> On Mon, May 25, 2026 at 03:53:22PM +0100, David Laight wrote:
> >On Mon, 25 May 2026 15:09:54 +0200
> >Stefano Garzarella <sgarzare@redhat.com> wrote:
...
> >> >Indeed, I wasn't thinking. For this to even get close to overflowing
> >> >we'd have to have almost all of 4G available to the 32 bit kernel taken
> >> >up by this single queue.
> >
> >Except there is usually only 1G or 2G available to the kernel.
> >And all the skb would have to contain no data.
>
> `skb_overhead` was introduced to prevent exactly queueing skb without
> any data (essentially containing just the EOM for SEQPACKET) that we
> plan to fix properly in some other way instead of queueing empty skb.
I think most of the network code counts skb->truesize so that it limits
kernel memory on the queue rather than the amount of data.
This does rather rely on the low level code setting it to a sane value.
Last time I looked some of the usbnet drivers lied badly.
(IIRC short packets in a 64k buffer with the truesize set to the data length.)
You need to do something to limit the number of single (or even zero) byte
SEQPACKET messages that can be queued.
-- David
prev parent reply other threads:[~2026-05-25 17:14 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-21 12:47 [PATCH net] vsock/virtio: fix skb overhead overflow on 32-bit builds Stefano Garzarella
2026-05-21 13:09 ` Michael S. Tsirkin
2026-05-21 17:13 ` David Laight
2026-05-23 2:20 ` patchwork-bot+netdevbpf
2026-05-23 16:35 ` David Laight
2026-05-25 9:57 ` Stefano Garzarella
2026-05-25 10:53 ` David Laight
2026-05-25 12:42 ` Michael S. Tsirkin
2026-05-25 13:09 ` Stefano Garzarella
2026-05-25 14:53 ` David Laight
2026-05-25 15:16 ` Stefano Garzarella
2026-05-25 17:14 ` David Laight [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260525181440.5a6cdb43@pumpkin \
--to=david.laight.linux@gmail.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=eperezma@redhat.com \
--cc=horms@kernel.org \
--cc=jasowang@redhat.com \
--cc=kuba@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=patchwork-bot+netdevbpf@kernel.org \
--cc=sgarzare@redhat.com \
--cc=stable@vger.kernel.org \
--cc=stefanha@redhat.com \
--cc=virtualization@lists.linux.dev \
--cc=xuanzhuo@linux.alibaba.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox