Message ID | 20221122074348.88601-4-hengqi@linux.alibaba.com (mailing list archive) |
---|---|
State | RFC |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | virtio_net: support multi buffer xdp | expand |
On Tue, Nov 22, 2022 at 3:44 PM Heng Qi <hengqi@linux.alibaba.com> wrote: > > Update relative record value for xdp_frame as basis > for multi-buffer xdp transmission. > > Signed-off-by: Heng Qi <hengqi@linux.alibaba.com> > Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com> Acked-by: Jason Wang <jasowang@redhat.com> Thanks > --- > drivers/net/virtio_net.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c > index 8f7d207d58d6..d3e8c63b9c4b 100644 > --- a/drivers/net/virtio_net.c > +++ b/drivers/net/virtio_net.c > @@ -658,7 +658,7 @@ static int virtnet_xdp_xmit(struct net_device *dev, > if (likely(is_xdp_frame(ptr))) { > struct xdp_frame *frame = ptr_to_xdp(ptr); > > - bytes += frame->len; > + bytes += xdp_get_frame_len(frame); > xdp_return_frame(frame); > } else { > struct sk_buff *skb = ptr; > @@ -1604,7 +1604,7 @@ static void free_old_xmit_skbs(struct send_queue *sq, bool in_napi) > } else { > struct xdp_frame *frame = ptr_to_xdp(ptr); > > - bytes += frame->len; > + bytes += xdp_get_frame_len(frame); > xdp_return_frame(frame); > } > packets++; > -- > 2.19.1.6.gb485710b >
在 2022/12/6 下午1:31, Jason Wang 写道: > On Tue, Nov 22, 2022 at 3:44 PM Heng Qi <hengqi@linux.alibaba.com> wrote: >> Update relative record value for xdp_frame as basis >> for multi-buffer xdp transmission. >> >> Signed-off-by: Heng Qi <hengqi@linux.alibaba.com> >> Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com> > Acked-by: Jason Wang <jasowang@redhat.com> Thanks for your energy, you are awesome. > > Thanks > >> --- >> drivers/net/virtio_net.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c >> index 8f7d207d58d6..d3e8c63b9c4b 100644 >> --- a/drivers/net/virtio_net.c >> +++ b/drivers/net/virtio_net.c >> @@ -658,7 +658,7 @@ static int virtnet_xdp_xmit(struct net_device *dev, >> if (likely(is_xdp_frame(ptr))) { >> struct xdp_frame *frame = ptr_to_xdp(ptr); >> >> - bytes += frame->len; >> + bytes += xdp_get_frame_len(frame); >> xdp_return_frame(frame); >> } else { >> struct sk_buff *skb = ptr; >> @@ -1604,7 +1604,7 @@ static void free_old_xmit_skbs(struct send_queue *sq, bool in_napi) >> } else { >> struct xdp_frame *frame = ptr_to_xdp(ptr); >> >> - bytes += frame->len; >> + bytes += xdp_get_frame_len(frame); >> xdp_return_frame(frame); >> } >> packets++; >> -- >> 2.19.1.6.gb485710b >>
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index 8f7d207d58d6..d3e8c63b9c4b 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -658,7 +658,7 @@ static int virtnet_xdp_xmit(struct net_device *dev, if (likely(is_xdp_frame(ptr))) { struct xdp_frame *frame = ptr_to_xdp(ptr); - bytes += frame->len; + bytes += xdp_get_frame_len(frame); xdp_return_frame(frame); } else { struct sk_buff *skb = ptr; @@ -1604,7 +1604,7 @@ static void free_old_xmit_skbs(struct send_queue *sq, bool in_napi) } else { struct xdp_frame *frame = ptr_to_xdp(ptr); - bytes += frame->len; + bytes += xdp_get_frame_len(frame); xdp_return_frame(frame); } packets++;