From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bruno Alvisio Subject: [PATCH RFC v3 RESEND 10/12] Migration with Local Disks Mirroring: libxl save flow support Date: Sat, 23 Dec 2017 14:03:34 +0000 Message-ID: <1514037816-40864-11-git-send-email-bruno.alvisio@gmail.com> References: <1514037816-40864-1-git-send-email-bruno.alvisio@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1514037816-40864-1-git-send-email-bruno.alvisio@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xen.org, wei.liu2@citrix.com, dave@recoil.org, ian.jackson@eu.citrix.com List-Id: xen-devel@lists.xenproject.org VGhlIGRvbWFpbiBzYXZlIHN0YXRlIGNvbnRhaW5zIGEgbmV3ICdtaXJyb3JfZGlza3MnIGZpZWxk LiBJdCBkZXRlcm1pbmVzIHRoZQpmbG93IG9mIHRoZSBkb21haW4gc2F2ZS4gSWYgZmFsc2UsIHRo ZSBzYXZlIGZsb3cgd2lsbCBpbnZva2UgdGhlIERFRkFVTFQgcGhhc2UKbGlieGwvbGlieGMgc3Ry ZWFtIHR5cGUuIElmIHRydWUsIHRoZSBzYXZlIGZsb3cgaW52b2tlcyB0aGUgUFJFX01JUlJPUl9E SVNLUwpwaGFzZSBzdHJlYW0gdHlwZSBmaXJzdC4gVXBvbiByZWNlcHRpb24gb2YgdGhlIHNpZ25h bCBmcm9tIHRoZSBzb3VyY2UgdGhhdCB0aGUKTkJEIHNlcnZlciBoYXMgYmVlbiBzdGFydGVkIGl0 IHRyaWdnZXJzIHRoZSBkaXNrcyBtaXJyb3Jpbmcgam9iLiBPbmNlIGl0CnJlY2VpdmVzIGFuIGV2 ZW50IGZyb20gUUVNVSB0aGF0IHRoZSBtaXJyb3Jpbmcgam9iIGlzIGNvbXBsZXRlLCB0aGUKUE9T VF9NSVJST1JfRElTS1MgcGhhc2Ugc3RyZWFtIHR5cGUgaXMgaW52b2tlZC4KClNpZ25lZC1vZmYt Ynk6IEJydW5vIEFsdmlzaW8gPGJydW5vLmFsdmlzaW9AZ21haWwuY29tPgotLS0KIHRvb2xzL2xp YnhsL2xpYnhsX2RvbV9zYXZlLmMgfCA1MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystLQogdG9vbHMvbGlieGwvbGlieGxfZG9tYWluLmMgICB8ICAyICsrCiB0b29s cy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5oIHwgIDQgKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA1NyBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xp YnhsX2RvbV9zYXZlLmMgYi90b29scy9saWJ4bC9saWJ4bF9kb21fc2F2ZS5jCmluZGV4IDY0ODc2 NzIuLjc4YzRlODYgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2RvbV9zYXZlLmMKKysr IGIvdG9vbHMvbGlieGwvbGlieGxfZG9tX3NhdmUuYwpAQCAtMjUsNiArMjUsOSBAQCBzdGF0aWMg dm9pZCBzdHJlYW1fZG9uZShsaWJ4bF9fZWdjICplZ2MsCiAgICAgICAgICAgICAgICAgICAgICAg ICBsaWJ4bF9fc3RyZWFtX3dyaXRlX3N0YXRlICpzd3MsIGludCByYyk7CiBzdGF0aWMgdm9pZCBk b21haW5fc2F2ZV9kb25lKGxpYnhsX19lZ2MgKmVnYywKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbGlieGxfX2RvbWFpbl9zYXZlX3N0YXRlICpkc3MsIGludCByYyk7CitzdGF0aWMgdm9p ZCBkb21haW5fcHJlX21pcnJvcl9kaXNrc19kb25lKGxpYnhsX19lZ2MgKmVnYywKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX3N0cmVhbV93cml0ZV9zdGF0 ZSAqc3dzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmMp OwogCiAvKi0tLS0tIGNvbXBsaWNhdGVkIGNhbGxiYWNrLCBjYWxsZWQgYnkgeGNfZG9tYWluX3Nh dmUgLS0tLS0qLwogCkBAIC00MTEsMTQgKzQxNCw2MCBAQCB2b2lkIGxpYnhsX19kb21haW5fc2F2 ZShsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19kb21haW5fc2F2ZV9zdGF0ZSAqZHNzKQogICAgIGRz cy0+c3dzLmZkICA9IGRzcy0+ZmQ7CiAgICAgZHNzLT5zd3MuYmFja19jaGFubmVsID0gZmFsc2U7 CiAgICAgZHNzLT5zd3MuY29tcGxldGlvbl9jYWxsYmFjayA9IHN0cmVhbV9kb25lOwotCi0gICAg bGlieGxfX3N0cmVhbV93cml0ZV9zdGFydChlZ2MsICZkc3MtPnN3cyk7CisgICAgZHNzLT5zd3Mu bWlycm9yX2Rpc2tzID0gMDsKKworICAgIGlmICghZHNzLT5taXJyb3JfZGlza3MpIHsKKyAgICAg ICAgbGlieGxfX3N0cmVhbV93cml0ZV9zdGFydChlZ2MsICZkc3MtPnN3cyk7CisgICAgfSBlbHNl IHsKKyAgICAgICAgZHNzLT5zd3NfbWlycm9yX2Rpc2tzLmFvICA9IGRzcy0+YW87CisgICAgICAg IGRzcy0+c3dzX21pcnJvcl9kaXNrcy5kc3MgPSBkc3M7CisgICAgICAgIGRzcy0+c3dzX21pcnJv cl9kaXNrcy5mZCAgPSBkc3MtPmZkOworICAgICAgICBkc3MtPnN3c19taXJyb3JfZGlza3MuYmFj a19jaGFubmVsID0gZmFsc2U7CisgICAgICAgIGRzcy0+c3dzX21pcnJvcl9kaXNrcy5taXJyb3Jf ZGlza3MgPSAxOworICAgICAgICBkc3MtPnN3c19taXJyb3JfZGlza3MuY29tcGxldGlvbl9jYWxs YmFjayA9IGRvbWFpbl9wcmVfbWlycm9yX2Rpc2tzX2RvbmU7CisKKyAgICAgICAgbGlieGxfX3N0 cmVhbV93cml0ZV9zdGFydChlZ2MsICZkc3MtPnN3c19taXJyb3JfZGlza3MpOworICAgIH0KICAg ICByZXR1cm47CiAKICBvdXQ6CiAgICAgZG9tYWluX3NhdmVfZG9uZShlZ2MsIGRzcywgcmMpOwog fQogCitzdGF0aWMgdm9pZCBkb21haW5fcHJlX21pcnJvcl9kaXNrc19kb25lKGxpYnhsX19lZ2Mg KmVnYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX3N0 cmVhbV93cml0ZV9zdGF0ZSAqc3dzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBpbnQgcmMpCit7CisgICAgbGlieGxfX2RvbWFpbl9zYXZlX3N0YXRlICpkc3MgPSBz d3MtPmRzczsKKyAgICBTVEFURV9BT19HQyhkc3MtPmFvKTsKKyAgICBjb25zdCB1aW50MzJfdCBk b21pZCA9IGRzcy0+ZG9taWQ7CisgICAgY2hhciogdGFyZ2V0OworCisgICAgaWYgKHJjKQorICAg ICAgICBnb3RvIGVycjsKKworICAgIHJjID0gbGlieGxfcmVhZF9maXhlZG1lc3NhZ2UoQ1RYLCBk c3MtPnJlY3ZfZmQsIG5iZF9zZXJ2ZXJfc3RhcnRlZF9iYW5uZXIsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzaXplb2YobmJkX3NlcnZlcl9zdGFydGVkX2Jhbm5lciktMSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtaWdyYXRpb24gc3RyZWFtIiwgMCk7Cisg ICAgaWYgKHJjKQorICAgICAgICBnb3RvIGVycjsKKworICAgIHRhcmdldCA9IEdDU1BSSU5URigi bmJkOiVzOiVzOmV4cG9ydG5hbWU9JXMiLCBkc3MtPmhvc3RuYW1lLAorICAgICAgICAgICAgICAg ICAgICAgICBEUklWRV9NSVJST1JfUE9SVCwgRFJJVkVfTUlSUk9SX0RFVklDRSk7CisgICAgcmMg PSBsaWJ4bF9fcW1wX2RyaXZlX21pcnJvcihnYywgZHNzLT5kb21pZCwgRFJJVkVfTUlSUk9SX0RF VklDRSwgdGFyZ2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJhdyIpOwor ICAgIGlmIChyYykgeworICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIlNlbmRpbmcgUU1QIGRy aXZlIG1pcnJvciBjb21tYW5kIGZhaWxlZCIpOworICAgICAgICBnb3RvIGVycjsKKyAgICB9CisK KyAgICBsaWJ4bF9fc3RyZWFtX3dyaXRlX3N0YXJ0KGVnYywgJnN3cy0+ZHNzLT5zd3MpOworICAg IHJldHVybjsKKworIGVycjoKKyAgIGRzcy0+Y2FsbGJhY2soZWdjLCBkc3MsIHJjKTsKK30KKwog c3RhdGljIHZvaWQgc3RyZWFtX2RvbmUobGlieGxfX2VnYyAqZWdjLAogICAgICAgICAgICAgICAg ICAgICAgICAgbGlieGxfX3N0cmVhbV93cml0ZV9zdGF0ZSAqc3dzLCBpbnQgcmMpCiB7CmRpZmYg LS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9kb21haW4uYyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2Rv bWFpbi5jCmluZGV4IGQxMjA5Y2QuLjM0MWVkNTIgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xp YnhsX2RvbWFpbi5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RvbWFpbi5jCkBAIC01MTEsNiAr NTExLDggQEAgaW50IGxpYnhsX2RvbWFpbl9zdXNwZW5kKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJf dCBkb21pZCwgaW50IGZkLCBpbnQgcmVjdl9mZCwKICAgICBkc3MtPnR5cGUgPSB0eXBlOwogICAg IGRzcy0+bGl2ZSA9IGZsYWdzICYgTElCWExfU1VTUEVORF9MSVZFOwogICAgIGRzcy0+ZGVidWcg PSBmbGFncyAmIExJQlhMX1NVU1BFTkRfREVCVUc7CisgICAgZHNzLT5taXJyb3JfZGlza3MgPSAo ZmxhZ3MgJiBMSUJYTF9TVVNQRU5EX01JUlJPUl9ESVNLUykgPyAxIDogMDsKKyAgICBkc3MtPmhv c3RuYW1lID0gaG9zdG5hbWU7CiAgICAgZHNzLT5jaGVja3BvaW50ZWRfc3RyZWFtID0gTElCWExf Q0hFQ0tQT0lOVEVEX1NUUkVBTV9OT05FOwogCiAgICAgcmMgPSBsaWJ4bF9fZmRfZmxhZ3NfbW9k aWZ5X3NhdmUoZ2MsIGRzcy0+ZmQsCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9pbnRl cm5hbC5oIGIvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaAppbmRleCA3NmJiZTQ4Li4wYTMy MTVmIDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5oCisrKyBiL3Rvb2xz L2xpYnhsL2xpYnhsX2ludGVybmFsLmgKQEAgLTMxOTcsNiArMzE5Nyw3IEBAIHN0cnVjdCBsaWJ4 bF9fc3RyZWFtX3dyaXRlX3N0YXRlIHsKICAgICBsaWJ4bF9fZG9tYWluX3NhdmVfc3RhdGUgKmRz czsKICAgICBpbnQgZmQ7CiAgICAgYm9vbCBiYWNrX2NoYW5uZWw7CisgICAgaW50IG1pcnJvcl9k aXNrczsKICAgICB2b2lkICgqY29tcGxldGlvbl9jYWxsYmFjaykobGlieGxfX2VnYyAqZWdjLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fc3RyZWFtX3dyaXRlX3N0YXRl ICpzd3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCByYyk7CkBAIC0zMjk2 LDYgKzMyOTcsOCBAQCBzdHJ1Y3QgbGlieGxfX2RvbWFpbl9zYXZlX3N0YXRlIHsKICAgICBsaWJ4 bF9kb21haW5fdHlwZSB0eXBlOwogICAgIGludCBsaXZlOwogICAgIGludCBkZWJ1ZzsKKyAgICBp bnQgbWlycm9yX2Rpc2tzOworICAgIGNvbnN0IGNoYXIqIGhvc3RuYW1lOwogICAgIGludCBjaGVj a3BvaW50ZWRfc3RyZWFtOwogICAgIGNvbnN0IGxpYnhsX2RvbWFpbl9yZW11c19pbmZvICpyZW11 czsKICAgICAvKiBwcml2YXRlICovCkBAIC0zMzExLDYgKzMzMTQsNyBAQCBzdHJ1Y3QgbGlieGxf X2RvbWFpbl9zYXZlX3N0YXRlIHsKICAgICB9OwogICAgIGxpYnhsX19jaGVja3BvaW50X2Rldmlj ZXNfc3RhdGUgY2RzOwogICAgIGxpYnhsX19zdHJlYW1fd3JpdGVfc3RhdGUgc3dzOworICAgIGxp YnhsX19zdHJlYW1fd3JpdGVfc3RhdGUgc3dzX21pcnJvcl9kaXNrczsKICAgICBsaWJ4bF9fbG9n ZGlydHlfc3dpdGNoIGxvZ2RpcnR5OwogfTsKIAotLSAKMi4zLjIgKEFwcGxlIEdpdC01NSkKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwg bWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs