On Tue, Jun 20, 2023 at 02:36:58PM -0400, Steven Sistare wrote: > On 6/15/2023 10:50 AM, Fabiano Rosas wrote: > > Peter Xu <pet...@redhat.com> writes: > > > >> On Wed, Jun 14, 2023 at 02:59:54PM -0300, Fabiano Rosas wrote: > >>> In this message Daniel mentions virDomainSnapshotXXX which would benefit > >>> from using the same "file" migration, but being done live: > >>> > >>> https://lore.kernel.org/r/zd7mrgq+4qsdb...@redhat.com > >>> > >>> And from your response here: > >>> https://lore.kernel.org/r/ZEA759BSs75ldW6Y@x1n > >>> > >>> I had understood that having a new SUSPEND cap to decide whether to do > >>> it live or non-live would be enough to cover all use-cases. > >> > >> Oh, I probably lost some of the contexts there, sorry about that - so it's > >> about not being able to live snapshot on !LINUX worlds properly, am I > >> right? > >> > > > > Right, so that gives us for now a reasonable use-case for keeping live > > migration behavior possible with "file:". > > > >> In the ideal world where we can always synchronously tracking guest pages > >> (like what we do with userfaultfd wr-protections on modern Linux), the > >> !SUSPEND case should always be covered by CAP_BACKGROUND_SNAPSHOT already > >> in a more performant way. IOW, !SUSPEND seems to be not useful to Linux, > >> because whenever we want to set !SUSPEND we should just use BG_SNAPSHOT. > >> > > > > I agree. > > > >> But I think indeed the live snapshot support is not good enough. Even on > >> Linux, it lacks different memory type supports, multi-process support, and > >> also no-go on very old kernels. So I assume the fallback makes sense, and > >> then we can't always rely on that. > >> > >> Then I agree we can keep "file:" the same as others like proposed here, but > >> I'd like to double check with all of us so we're on the same page.. > > > > +1 > > > >> And maybe we should mention some discussions into commit message or > >> comments where proper in the code, so we can track what has happened > >> easier. > >> > > > > I'll add some words where appropriate in my series as well. A v2 is > > already overdue with all the refactorings that have happened in the > > migration code. > > Peter, should one of us proceed to submit the file URI as a stand-alone > patch, > since we both need it, and it has some value on its own? > > My version adds a watch on the incoming channel so we do not block monitor > commands. > It also adds tracepoints like the other URI's. > > Fabiano's version adds a nice unit test. > > Maybe we should submit a small series with both.
I fully agree. I didn't check the details, but if we know the shared bits it'll be great if we arrange it before-hand, and then it might also be the best too for all sides. Thanks for raising this. -- Peter Xu