On Wed, Jul 07, 2021 at 08:57:29PM +0200, David Hildenbrand wrote: > On 07.07.21 20:02, Peter Xu wrote: > > On Wed, Jul 07, 2021 at 04:06:55PM +0200, David Hildenbrand wrote: > > > As it never worked properly, let's disable it via the postcopy notifier on > > > the destination. Trying to set "migrate_set_capability postcopy-ram on" > > > on the destination now results in "virtio-balloon: 'free-page-hint' does > > > not support postcopy Error: Postcopy is not supported". > > > > Would it be possible to do this in reversed order? Say, dynamically disable > > free-page-hinting if postcopy capability is set when migration starts? > > Perhaps > > it can also be re-enabled automatically when migration completes? > > I remember that this might be quite racy. We would have to make sure that no > hinting happens before we enable the capability. > > As soon as we messed with the dirty bitmap (during precopy), postcopy is no > longer safe. As noted in the patch, the only runtime alternative is to > disable postcopy as soon as we actually do clear a bit. Alternatively, we > could ignore any hints if the postcopy capability was enabled. > > Whatever we do, we have to make sure that a user cannot trick the system > into an inconsistent state. Like enabling hinting, starting migration, then > enabling the postcopy capability and kicking of postcopy. I did not check if > we allow for that, though.
What bothers me with limitations like this is we train users about this lack of orthogonality, it's then very hard to retrain them that a given feature is safe to use. > -- > Thanks, > > David / dhildenb