[PATCH v4 2/3] ethdev: add standby state for live migration
Andrew Rybchenko
andrew.rybchenko at oktetlabs.ru
Wed Feb 1 08:32:30 CET 2023
On 2/1/23 01:55, Thomas Monjalon wrote:
> 31/01/2023 19:14, Jerin Jacob:
>> On Wed, Jan 18, 2023 at 9:15 PM Rongwei Liu <rongweil at nvidia.com> wrote:
>>>
>>> When a DPDK application must be upgraded,
>>> the traffic downtime should be shortened as much as possible.
>>> During the migration time, the old application may stay alive
>>> while the new application is starting and being configured.
>>>
>>> In order to optimize the switch to the new application,
>>> the old application may need to be aware of the presence
>>> of the new application being prepared.
>>> This is achieved with a new API allowing the user to change the
>>> new application state to standby and active later.
>>>
>>> The added function is trying to apply the new state to all probed
>>> ethdev ports. To make this API simple and easy to use,
>>> the same flags have to be accepted by all devices.
>>>
>>> This is the scenario of operations in the old and new applications:
>>> . device: already configured by the old application
>>> . new: start as active
>>> . new: probe the same device
>>
>> How to probe same device if is already bind to another application?
>> vfio-pci wont allow this.
>
> I missed that part.
> There is no way to share a VFIO device between 2 applications?
As I understand multi-process shares an VFIO device between
many application. As far as I remember it is just required to
pass corresponding file descriptor to another application.
Anyway I fully agree that the patch requires more documentation
in doc/guides/ with the description of live migration theory of
operations.
>>> . new: set as standby
>>> . new: configure the device
>>> . device: has configurations from old and new applications
>>> . old: clear its device configuration
>>> . device: has only 1 configuration from new application
>>> . new: set as active
>>> . device: downtime for connecting all to the new application
>>> . old: shutdown
>
>
>
More information about the dev
mailing list