diff options
| author | Xuan Zhuo <xuanzhuo@linux.alibaba.com> | 2023-05-08 14:14:03 +0800 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2023-05-09 19:44:26 -0700 |
| commit | 363d8ce4b94719a87dad865e2829f1dba0f7ef71 (patch) | |
| tree | d023fc957ad518e3ac37fe0b22464153654fe464 /lib/mpi/mpi-sub-ui.c | |
| parent | 559ae55cfc334c91c62d2ea054a3345611363ee0 (diff) | |
virtio_net: mergeable xdp: put old page immediately
In the xdp implementation of virtio-net mergeable, it always checks
whether two page is used and a page is selected to release. This is
complicated for the processing of action, and be careful.
In the entire process, we have such principles:
* If xdp_page is used (PASS, TX, Redirect), then we release the old
page.
* If it is a drop case, we will release two. The old page obtained from
buf is release inside err_xdp, and xdp_page needs be relased by us.
But in fact, when we allocate a new page, we can release the old page
immediately. Then just one is using, we just need to release the new
page for drop case. On the drop path, err_xdp will release the variable
"page", so we only need to let "page" point to the new xdp_page in
advance.
Signed-off-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'lib/mpi/mpi-sub-ui.c')
0 files changed, 0 insertions, 0 deletions
