Message ID | 20220920223800.47467-4-peterx@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | migration: Bug fixes (prepare for preempt-full) | expand |
* Peter Xu (peterx@redhat.com) wrote: > It's not supported since the 1st day, as ram_load_postcopy does not handle > RAM_SAVE_FLAG_XBZRLE. Mark it disabled explicitly. We've already got a check in ram_save_page: if (rs->xbzrle_enabled && !migration_in_postcopy()) { pages = save_xbzrle_page(rs, &p, current_addr, block, offset); so that's supposed to allow you to enable xbzrle with postcopy and take advantage of xbzrle during the precopy phase. Dave > Signed-off-by: Peter Xu <peterx@redhat.com> > --- > migration/migration.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/migration/migration.c b/migration/migration.c > index bb8bbddfe4..fb4066dfb4 100644 > --- a/migration/migration.c > +++ b/migration/migration.c > @@ -1268,6 +1268,11 @@ static bool migrate_caps_check(bool *cap_list, > error_setg(errp, "Postcopy is not compatible with ignore-shared"); > return false; > } > + > + if (cap_list[MIGRATION_CAPABILITY_XBZRLE]) { > + error_setg(errp, "Postcopy is not compatible with xbzrle"); > + return false; > + } > } > > if (cap_list[MIGRATION_CAPABILITY_BACKGROUND_SNAPSHOT]) { > -- > 2.32.0 >
On Thu, Sep 22, 2022 at 04:56:21PM +0100, Dr. David Alan Gilbert wrote: > * Peter Xu (peterx@redhat.com) wrote: > > It's not supported since the 1st day, as ram_load_postcopy does not handle > > RAM_SAVE_FLAG_XBZRLE. Mark it disabled explicitly. > > We've already got a check in ram_save_page: > > if (rs->xbzrle_enabled && !migration_in_postcopy()) { > pages = save_xbzrle_page(rs, &p, current_addr, block, > offset); > > so that's supposed to allow you to enable xbzrle with postcopy and take > advantage of xbzrle during the precopy phase. Ah! Makes sense. I'll drop this one.
diff --git a/migration/migration.c b/migration/migration.c index bb8bbddfe4..fb4066dfb4 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -1268,6 +1268,11 @@ static bool migrate_caps_check(bool *cap_list, error_setg(errp, "Postcopy is not compatible with ignore-shared"); return false; } + + if (cap_list[MIGRATION_CAPABILITY_XBZRLE]) { + error_setg(errp, "Postcopy is not compatible with xbzrle"); + return false; + } } if (cap_list[MIGRATION_CAPABILITY_BACKGROUND_SNAPSHOT]) {
It's not supported since the 1st day, as ram_load_postcopy does not handle RAM_SAVE_FLAG_XBZRLE. Mark it disabled explicitly. Signed-off-by: Peter Xu <peterx@redhat.com> --- migration/migration.c | 5 +++++ 1 file changed, 5 insertions(+)