[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <2ecb6621-d118-14aa-e935-3ba09e2150f7@redhat.com>
Date: Mon, 20 Feb 2017 11:47:46 +0800
From: Jason Wang <jasowang@...hat.com>
To: "Michael S. Tsirkin" <mst@...hat.com>
Cc: John Fastabend <john.fastabend@...il.com>,
virtualization@...ts.linux-foundation.org, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next] virito-net: set queues after reset during
xdp_set
On 2017年02月19日 13:08, Michael S. Tsirkin wrote:
>>>> - oxdp_qp = vi->xdp_queue_pairs;
>>>> -
>>>> /* Changing the headroom in buffers is a disruptive operation because
>>>> * existing buffers must be flushed and reallocated. This will happen
>>>> * when a xdp program is initially added or xdp is disabled by removing
>>>> * the xdp program resulting in number of XDP queues changing.
>>>> */
>>>> if (vi->xdp_queue_pairs != xdp_qp) {
>>>> - vi->xdp_queue_pairs = xdp_qp;
>>>> err = virtnet_reset(vi);
>>>> - if (err)
>>>> + if (err) {
>>>> + dev_warn(&dev->dev, "XDP reset failure.\n");
>>>> goto virtio_reset_err;
>>>> + }
>>>> + vi->xdp_queue_pairs = xdp_qp;
>>> But xdp_queue_pairs is being used to detect if we should allocate the XDP
>>> headroom. If we move it here do we have a set of buffers in the ring without
>>> the proper headroom when we assign the xdp program below?
>> Right, so how about passing xdp_queue_pairs as a parameter to
>> virtnet_reset(). Then virtnet_reset() can set it after _remove_vq_common()
>> but before virtnet_restore_up()?
>>
>> Thanks
> Jason, wouldn't you say it's cleaner to avoid resets?
> Would you be interested in completing this work:
>
> 20170207053455-mutt-send-email-mst@...nel.org
>
>
Yes, but this seems still need drop packets, is this acceptable?
Thanks
Powered by blists - more mailing lists