[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [PATCH 0/2] Selective queue enabling
On Wed, 7 Jun 2023 07:35:58 +0200, Eugenio Perez Martin <eperezma@redhat.com> wrote: > On Tue, Jun 6, 2023 at 9:10âPM Michael S. Tsirkin <mst@redhat.com> wrote: > > > > On Tue, Jun 06, 2023 at 07:55:09PM +0200, Eugenio PÃrez wrote: > > > This series allows the driver to start the device (as set DRIVER_OK) with only > > > some queues enabled, and then enable another queues later. > > > > > > This is the current way to migrate net device state through control > > > virtqueue, in a software assisted framework with vDPA: > > > * First, only net CVQ is enabled at DRIVER_OK > > > * All the control commands (mac address, mq, etc) needed for the device > > > to behave the same as the source of migration are sent > > > * Finally all the dataplane queues are enabled. > > > > In my opinion, this is somewhat problematic. Specifically, currently > > devices tend to deduce how many queues are needed by looking > > at the state at DRIVER_OK time. > > > > Question: what is wrong with enabling queues initially and then > > doing a reset right after DRIVER_OK? You can even allocate > > memory for just one queue (zeroing it out). > > > > Granted this looks kind of ugly but side-steps this problem with > > no need for spec changes. > > > > The problem is that the rx queues can start receiving, as the guest > already has buffers there. Can we reset the vq before filling buffers to it? > Apart from that, the back and forth > introduces latencies. > > Maybe a better angle is to start all the queues as if they're reset, > write 1 just to CVQ, configure the device, and then write 1 to all > dataplane vqs? write to what? Thanks. > > Thanks! > > > > Eugenio PÃrez (2): > > > virtio: introduce selective queue enabling > > > virtio: pci support virtqueue selective enabling > > > > > > content.tex | 15 +++++++++++++-- > > > transport-pci.tex | 4 ++++ > > > 2 files changed, 17 insertions(+), 2 deletions(-) > > > > > > -- > > > 2.31.1 > > > > > >
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]