On Tue, 3 Feb 2026 13:03:26 +0100 Laurent Vivier <[email protected]> wrote:
> On 1/27/26 19:21, Stefano Brivio wrote: > > [Cc'ing Laurent and David] > > > > On Tue, 27 Jan 2026 15:03:06 +0100 > > Juraj Marcin <[email protected]> wrote: > > > >> During switchover there is a period during which both source and > >> destination side VMs are paused. During this period, all network packets > >> are still routed to the source side, but it will never process them. > >> Once the destination resumes, it is not aware of these packets and they > >> are lost. This can cause packet loss in unreliable protocols and > >> extended delays due to retransmission in reliable protocols. > >> > >> This series resolves this problem by caching packets received once the > >> source VM pauses and then passing and injecting them on the destination > >> side. This feature is implemented in the last patch. The caching and > >> injecting is implemented using network filter interface and should work > >> with any backend with vhost=off, but only TAP network backend was > >> explicitly tested. > > > > I haven't had a chance to try this change with passt(1) yet (the > > backend can be enabled using "-net passt" or by starting it > > separately). > > > > Given that passt implements migration on its own (in deeper detail in > > some sense, as TCP connections are preserved if IP addresses match), I > > wonder if it this might affect or break it somehow. > > passt implements migration only with the vhost-user backend ("-netdev > vhost-user") that is > not supported by netpass. All the vhost-* cannot be supported because netpass > cannot catch > packets on the virtio queues. Thanks for having a look! On this point... right, hence my question in: https://lore.kernel.org/qemu-devel/20260131032700.12f27487@elisabeth/ that is, is there a plan to add vhost support *for netpass*, eventually? It looks like yes: https://lore.kernel.org/qemu-devel/caclfguuzpt-3sj4c8g8e+lb5ghpbfe_hklohyz9qyr8bgkt...@mail.gmail.com/ but I'm not sure I got it right (Cindy? Jason?). > passt with "-netdev stream" doesn't implement migration, but QEMU can be > migrated with it > and all the connections are lost. So netpass will forward packets for > connections that > will be broken. Realistically, I don't think anybody will ever try to migrate VMs using -netdev stream with passt, so I guess we don't really have to care about this (it might help with some protocols, probably make UDP usage a bit worse, waste a bit of bandwidth with TCP... but that's it). The only existing (known) user of passt's migration feature is KubeVirt, which switched to passt's vhost-user interface entirely. > "-netdev passt" is only some kind of wrapper on top of "-netdev stream" and > "-netdev > vhost-user" that starts the passt backend by itself (rather than expecting it > has been > started by the user). -- Stefano
