lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 28 Dec 2022 14:28:30 +0800 From: Jason Wang <jasowang@...hat.com> To: Heng Qi <hengqi@...ux.alibaba.com>, netdev@...r.kernel.org, bpf@...r.kernel.org Cc: "Michael S . Tsirkin" <mst@...hat.com>, Paolo Abeni <pabeni@...hat.com>, Jakub Kicinski <kuba@...nel.org>, John Fastabend <john.fastabend@...il.com>, "David S . Miller" <davem@...emloft.net>, Daniel Borkmann <daniel@...earbox.net>, Alexei Starovoitov <ast@...nel.org>, Eric Dumazet <edumazet@...gle.com>, Xuan Zhuo <xuanzhuo@...ux.alibaba.com> Subject: Re: [PATCH v2 1/9] virtio_net: disable the hole mechanism for xdp 在 2022/12/27 15:32, Heng Qi 写道: > > > 在 2022/12/27 下午2:30, Jason Wang 写道: >> >> 在 2022/12/20 22:14, Heng Qi 写道: >>> XDP core assumes that the frame_size of xdp_buff and the length of >>> the frag are PAGE_SIZE. The hole may cause the processing of xdp to >>> fail, so we disable the hole mechanism when xdp is set. >>> >>> Signed-off-by: Heng Qi <hengqi@...ux.alibaba.com> >>> Reviewed-by: Xuan Zhuo <xuanzhuo@...ux.alibaba.com> >>> --- >>> drivers/net/virtio_net.c | 5 ++++- >>> 1 file changed, 4 insertions(+), 1 deletion(-) >>> >>> diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c >>> index 9cce7dec7366..443aa7b8f0ad 100644 >>> --- a/drivers/net/virtio_net.c >>> +++ b/drivers/net/virtio_net.c >>> @@ -1419,8 +1419,11 @@ static int add_recvbuf_mergeable(struct >>> virtnet_info *vi, >>> /* To avoid internal fragmentation, if there is very >>> likely not >>> * enough space for another buffer, add the remaining >>> space to >>> * the current buffer. >>> + * XDP core assumes that frame_size of xdp_buff and the length >>> + * of the frag are PAGE_SIZE, so we disable the hole >>> mechanism. >>> */ >>> - len += hole; >>> + if (!headroom) >>> + len += hole; >> >> >> Is this only a requirement of multi-buffer XDP? If not, it need to be >> backported to stable. > > It applies to single buffer xdp and multi-buffer xdp, but even if > single buffer xdp has a hole > mechanism, there will be no problem (limiting mtu and turning off > GUEST GSO), so there is > no need to backport it. Let's add this in the changelog. With that, Acked-by: Jason Wang <jasowang@...hat.com> Thanks > > Thanks. > >> >> Thanks >> >> >>> alloc_frag->offset += hole; >>> } >
Powered by blists - more mailing lists