From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jesper Dangaard Brouer Subject: Re: [PATCH net] virtio-net: re enable XDP_REDIRECT for mergeable buffer Date: Fri, 2 Mar 2018 08:05:17 +0100 Message-ID: <20180302080517.4526f384@redhat.com> References: <1519971929-15148-1-git-send-email-jasowang@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: mst@redhat.com, virtualization@lists.linux-foundation.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, john.fastabend@gmail.com, brouer@redhat.com To: Jason Wang Return-path: In-Reply-To: <1519971929-15148-1-git-send-email-jasowang@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org On Fri, 2 Mar 2018 14:25:29 +0800 Jason Wang wrote: > @@ -770,6 +774,19 @@ static struct sk_buff *receive_mergeable(struct net_device *dev, > goto err_xdp; > rcu_read_unlock(); > goto xdp_xmit; > + case XDP_REDIRECT: > + err = xdp_do_redirect(dev, &xdp, xdp_prog); > + if (err) { > + trace_xdp_exception(vi->dev, xdp_prog, act); Do not add a trace_xdp_exception here... this is handled inside xdp_do_redirect() invocation. > + if (unlikely(xdp_page != page)) > + put_page(xdp_page); > + goto err_xdp; > + } > + *xdp_xmit = true; > + if (unlikely(xdp_page != page)) > + goto err_xdp; > + rcu_read_unlock(); > + goto xdp_xmit; -- Best regards, Jesper Dangaard Brouer MSc.CS, Principal Kernel Engineer at Red Hat LinkedIn: http://www.linkedin.com/in/brouer