On 14/05/21 11:05, Ashish Kalra wrote:
I absolutely agree with both of your point of view. But what's the alternative ? Ideally we should fail/stop migration even if a single guest page encryption status cannot be notified and that should be the way to proceed in this case, the guest kernel should notify the source userspace VMM to block/stop migration in this case. From a practical side, i do see Qemu's migrate_add_blocker() interface but that looks to be a static interface and also i don't think it will force stop an ongoing migration, is there an existing mechanism to inform userspace VMM from kernel about blocking/stopping migration ?
On the Linux side, all you need to do is WARN and write 0 to the MIGRATION_CONTROL MSR.
QEMU can check the MSR value when migrating the CPU registers at the end, and fail migration if the MSR value is 0.
Paolo