Re: [PATCH v2] virtio_net: fix PAGE_SIZE > 64k

From: David Miller
Date: Tue Jan 24 2017 - 15:53:59 EST


From: "Michael S. Tsirkin" <mst@xxxxxxxxxx>
Date: Tue, 24 Jan 2017 22:45:37 +0200

> On Tue, Jan 24, 2017 at 03:09:59PM -0500, David Miller wrote:
>> From: "Michael S. Tsirkin" <mst@xxxxxxxxxx>
>> Date: Tue, 24 Jan 2017 21:53:13 +0200
>>
>> > I didn't realise. Why can't we? I thought that adjust_header is an
>> > optional feature that userspace can test for, so no rush.
>>
>> No, we want the base set of XDP features to be present in all drivers
>> supporting XDP.
>
> I see, I didn't realize this. In light of this, is there any
> guidance *how much* head room is required to be considered
> valid? We already have 12 bytes of headroom.

The idea is to allow programs to implement arbitrary kinds of
encapsulation, so we need to be able to allow them to push headers for
all kinds of software tunnels, with allowance for a few depths in some
extreme cases.

In that light, a nice round power of 2 number such as 256 seems quite
reasonable to me.

This seems to be what other XDP implementations in drivers use at the
moment as well.