From: "Michael S. Tsirkin" <mst@redhat.com>
To: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Cc: netdev@vger.kernel.org, Jason Wang <jasowang@redhat.com>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Jesper Dangaard Brouer <hawk@kernel.org>,
John Fastabend <john.fastabend@gmail.com>,
virtualization@lists.linux-foundation.org, bpf@vger.kernel.org
Subject: Re: [PATCH net-next v2 00/14] virtio_net: refactor xdp codes
Date: Tue, 18 Apr 2023 07:49:28 -0400 [thread overview]
Message-ID: <20230418074911-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20230418065327.72281-1-xuanzhuo@linux.alibaba.com>
On Tue, Apr 18, 2023 at 02:53:13PM +0800, Xuan Zhuo wrote:
> Due to historical reasons, the implementation of XDP in virtio-net is relatively
> chaotic. For example, the processing of XDP actions has two copies of similar
> code. Such as page, xdp_page processing, etc.
>
> The purpose of this patch set is to refactor these code. Reduce the difficulty
> of subsequent maintenance. Subsequent developers will not introduce new bugs
> because of some complex logical relationships.
>
> In addition, the supporting to AF_XDP that I want to submit later will also need
> to reuse the logic of XDP, such as the processing of actions, I don't want to
> introduce a new similar code. In this way, I can reuse these codes in the
> future.
>
> Please review.
>
> Thanks.
Big refactoring, pls allow a bit more time for review. Thanks!
> v2:
> 1. re-split to make review more convenient
>
> v1:
> 1. fix some variables are uninitialized
>
> Xuan Zhuo (14):
> virtio_net: mergeable xdp: put old page immediately
> virtio_net: introduce mergeable_xdp_prepare()
> virtio_net: optimize mergeable_xdp_prepare()
> virtio_net: introduce virtnet_xdp_handler() to seprate the logic of
> run xdp
> virtio_net: introduce xdp res enums
> virtio_net: separate the logic of freeing xdp shinfo
> virtio_net: separate the logic of freeing the rest mergeable buf
> virtio_net: auto release xdp shinfo
> virtio_net: introduce receive_mergeable_xdp()
> virtio_net: merge: remove skip_xdp
> virtio_net: introduce receive_small_xdp()
> virtio_net: small: optimize code
> virtio_net: small: optimize code
> virtio_net: small: remove skip_xdp
>
> drivers/net/virtio_net.c | 625 +++++++++++++++++++++++----------------
> 1 file changed, 362 insertions(+), 263 deletions(-)
>
> --
> 2.32.0.3.g01195cf9f
WARNING: multiple messages have this Message-ID (diff)
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Cc: Jesper Dangaard Brouer <hawk@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
netdev@vger.kernel.org, John Fastabend <john.fastabend@gmail.com>,
Alexei Starovoitov <ast@kernel.org>,
virtualization@lists.linux-foundation.org,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
bpf@vger.kernel.org, Paolo Abeni <pabeni@redhat.com>,
"David S. Miller" <davem@davemloft.net>
Subject: Re: [PATCH net-next v2 00/14] virtio_net: refactor xdp codes
Date: Tue, 18 Apr 2023 07:49:28 -0400 [thread overview]
Message-ID: <20230418074911-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20230418065327.72281-1-xuanzhuo@linux.alibaba.com>
On Tue, Apr 18, 2023 at 02:53:13PM +0800, Xuan Zhuo wrote:
> Due to historical reasons, the implementation of XDP in virtio-net is relatively
> chaotic. For example, the processing of XDP actions has two copies of similar
> code. Such as page, xdp_page processing, etc.
>
> The purpose of this patch set is to refactor these code. Reduce the difficulty
> of subsequent maintenance. Subsequent developers will not introduce new bugs
> because of some complex logical relationships.
>
> In addition, the supporting to AF_XDP that I want to submit later will also need
> to reuse the logic of XDP, such as the processing of actions, I don't want to
> introduce a new similar code. In this way, I can reuse these codes in the
> future.
>
> Please review.
>
> Thanks.
Big refactoring, pls allow a bit more time for review. Thanks!
> v2:
> 1. re-split to make review more convenient
>
> v1:
> 1. fix some variables are uninitialized
>
> Xuan Zhuo (14):
> virtio_net: mergeable xdp: put old page immediately
> virtio_net: introduce mergeable_xdp_prepare()
> virtio_net: optimize mergeable_xdp_prepare()
> virtio_net: introduce virtnet_xdp_handler() to seprate the logic of
> run xdp
> virtio_net: introduce xdp res enums
> virtio_net: separate the logic of freeing xdp shinfo
> virtio_net: separate the logic of freeing the rest mergeable buf
> virtio_net: auto release xdp shinfo
> virtio_net: introduce receive_mergeable_xdp()
> virtio_net: merge: remove skip_xdp
> virtio_net: introduce receive_small_xdp()
> virtio_net: small: optimize code
> virtio_net: small: optimize code
> virtio_net: small: remove skip_xdp
>
> drivers/net/virtio_net.c | 625 +++++++++++++++++++++++----------------
> 1 file changed, 362 insertions(+), 263 deletions(-)
>
> --
> 2.32.0.3.g01195cf9f
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
next prev parent reply other threads:[~2023-04-18 11:56 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-18 6:53 [PATCH net-next v2 00/14] virtio_net: refactor xdp codes Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-18 6:53 ` [PATCH net-next v2 01/14] virtio_net: mergeable xdp: put old page immediately Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 5:58 ` Jason Wang
2023-04-20 5:58 ` Jason Wang
2023-04-18 6:53 ` [PATCH net-next v2 02/14] virtio_net: introduce mergeable_xdp_prepare() Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 5:58 ` Jason Wang
2023-04-20 5:58 ` Jason Wang
2023-04-18 6:53 ` [PATCH net-next v2 03/14] virtio_net: optimize mergeable_xdp_prepare() Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 5:59 ` Jason Wang
2023-04-20 5:59 ` Jason Wang
2023-04-18 6:53 ` [PATCH net-next v2 04/14] virtio_net: introduce virtnet_xdp_handler() to seprate the logic of run xdp Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 5:59 ` Jason Wang
2023-04-20 5:59 ` Jason Wang
2023-04-18 6:53 ` [PATCH net-next v2 05/14] virtio_net: introduce xdp res enums Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 5:59 ` Jason Wang
2023-04-20 5:59 ` Jason Wang
2023-04-21 7:00 ` Michael S. Tsirkin
2023-04-21 7:00 ` Michael S. Tsirkin
2023-04-21 7:24 ` Xuan Zhuo
2023-04-21 7:24 ` Xuan Zhuo
2023-04-21 11:54 ` Michael S. Tsirkin
2023-04-21 11:54 ` Michael S. Tsirkin
2023-04-23 1:57 ` Xuan Zhuo
2023-04-23 1:57 ` Xuan Zhuo
2023-04-23 5:28 ` Jason Wang
2023-04-23 5:28 ` Jason Wang
2023-04-23 6:27 ` Xuan Zhuo
2023-04-23 6:27 ` Xuan Zhuo
2023-04-18 6:53 ` [PATCH net-next v2 06/14] virtio_net: separate the logic of freeing xdp shinfo Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-18 6:53 ` [PATCH net-next v2 07/14] virtio_net: separate the logic of freeing the rest mergeable buf Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-18 6:53 ` [PATCH net-next v2 08/14] virtio_net: auto release xdp shinfo Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 5:59 ` Jason Wang
2023-04-20 5:59 ` Jason Wang
2023-04-20 9:10 ` Xuan Zhuo
2023-04-20 9:10 ` Xuan Zhuo
2023-04-18 6:53 ` [PATCH net-next v2 09/14] virtio_net: introduce receive_mergeable_xdp() Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 6:01 ` Jason Wang
2023-04-20 6:01 ` Jason Wang
2023-04-18 6:53 ` [PATCH net-next v2 10/14] virtio_net: merge: remove skip_xdp Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 6:10 ` Jason Wang
2023-04-20 6:10 ` Jason Wang
2023-04-18 6:53 ` [PATCH net-next v2 11/14] virtio_net: introduce receive_small_xdp() Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 6:23 ` Jason Wang
2023-04-20 6:23 ` Jason Wang
2023-04-18 6:53 ` [PATCH net-next v2 12/14] virtio_net: small: optimize code Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 6:28 ` Jason Wang
2023-04-20 6:28 ` Jason Wang
2023-04-18 6:53 ` [PATCH net-next v2 13/14] " Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-20 6:32 ` Jason Wang
2023-04-20 6:32 ` Jason Wang
2023-04-20 8:56 ` Xuan Zhuo
2023-04-20 8:56 ` Xuan Zhuo
2023-04-18 6:53 ` [PATCH net-next v2 14/14] virtio_net: small: remove skip_xdp Xuan Zhuo
2023-04-18 6:53 ` Xuan Zhuo
2023-04-18 11:49 ` Michael S. Tsirkin [this message]
2023-04-18 11:49 ` [PATCH net-next v2 00/14] virtio_net: refactor xdp codes Michael S. Tsirkin
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=20230418074911-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=hawk@kernel.org \
--cc=jasowang@redhat.com \
--cc=john.fastabend@gmail.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=virtualization@lists.linux-foundation.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.