From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH for-4.9 1/4] tools/libxc: Tolerate specific zero-content records in migration v2 streams Date: Thu, 30 Mar 2017 17:32:31 +0100 Message-ID: <1490891554-28597-2-git-send-email-andrew.cooper3@citrix.com> References: <1490891554-28597-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1490891554-28597-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper , Julien Grall , Ian Jackson List-Id: xen-devel@lists.xenproject.org VGhlIG1pZ3JhdGlvbiB2MiBzYXZlIGNvZGUgd2FzIHdyaXR0ZW4gdG8gYXZvaWQgc2VuZGluZyBk YXRhIHJlY29yZHMgd2l0aCBubwpjb250ZW50LCBhcyBzdWNoIHJlY29yZHMgc2VydmUgbm8gcHVy cG9zZSBidXQgY29tZSB3aXRoIGEgcGVyZm9ybWFuY2UgaGl0LgpUaGUgcmVzdG9yZSBjb2RlIHNh bml0eSBjaGVja3MgdGhpcyBleHBlY3RhdGlvbi4KClVuZGVyIHNvbWUgY2lyY3Vtc3RhbmNlcyAo bW9zdCBub3RhYmx5LCBvbiBBTUQgaGFyZHdhcmUgd2l0aCBEZWJ1ZyBFeHRlbnNpb25zLAphbmQg YSBQViBndWVzdCBrZXJuZWwgd2hpY2ggaXMgbm90IHVzaW5nIHRoZSBmZWF0dXJlKSwgdGhlIHNh dmUgY29kZSB3b3VsZApnZW5lcmF0ZSBhIHJlY29yZCB3aXRoIG5vIGNvbnRlbnQsIHdoaWNoIHRy aXBzIHRoZSBzYW5pdHkgY2hlY2sgaW4gdGhlIHJlc3RvcmUKY29kZS4KCkFzIHRoZSBzdHJlYW0g aXMgb3RoZXJ3aXNlIGZpbmUsIHRvbGVyYXRlIHRoZXNlIHJlY29yZHMgYW5kIGF2b2lkIGZhaWxp bmcgdGhlCm1pZ3JhdGlvbi4KClNpZ25lZC1vZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5j b29wZXIzQGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXgu Y29tPgotLS0KQ0M6IElhbiBKYWNrc29uIDxJYW4uSmFja3NvbkBldS5jaXRyaXguY29tPgpDQzog SnVsaWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxAYXJtLmNvbT4KClRoaXMgbmVlZHMgYmFja3BvcnRp bmcgdG8gWGVuIDQuNiwgYW5kIGZpeGVzIFhFTi01Ci0tLQogdG9vbHMvbGlieGMveGNfc3JfcmVz dG9yZV94ODZfaHZtLmMgfCAyNSArKysrKysrKysrKysrKysrKysrKysrLS0tCiB0b29scy9saWJ4 Yy94Y19zcl9yZXN0b3JlX3g4Nl9wdi5jICB8IDE3ICsrKysrKysrKysrKysrLS0tCiAyIGZpbGVz IGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv dG9vbHMvbGlieGMveGNfc3JfcmVzdG9yZV94ODZfaHZtLmMgYi90b29scy9saWJ4Yy94Y19zcl9y ZXN0b3JlX3g4Nl9odm0uYwppbmRleCA0OWQyMmM3Li4xZGNhODUzIDEwMDY0NAotLS0gYS90b29s cy9saWJ4Yy94Y19zcl9yZXN0b3JlX3g4Nl9odm0uYworKysgYi90b29scy9saWJ4Yy94Y19zcl9y ZXN0b3JlX3g4Nl9odm0uYwpAQCAtMzksMTMgKzM5LDMyIEBAIHN0YXRpYyBpbnQgaGFuZGxlX2h2 bV9wYXJhbXMoc3RydWN0IHhjX3NyX2NvbnRleHQgKmN0eCwKICAgICB1bnNpZ25lZCBpbnQgaTsK ICAgICBpbnQgcmM7CiAKLSAgICBpZiAoIHJlYy0+bGVuZ3RoIDwgc2l6ZW9mKCpoZHIpCi0gICAg ICAgICB8fCByZWMtPmxlbmd0aCA8IHNpemVvZigqaGRyKSArIGhkci0+Y291bnQgKiBzaXplb2Yo KmVudHJ5KSApCisgICAgaWYgKCByZWMtPmxlbmd0aCA8IHNpemVvZigqaGRyKSApCiAgICAgewot ICAgICAgICBFUlJPUigiaHZtX3BhcmFtcyByZWNvcmQgaXMgdG9vIHNob3J0Iik7CisgICAgICAg IEVSUk9SKCJIVk1fUEFSQU1TIHJlY29yZCB0cnVuY2F0ZWQ6IGxlbmd0aCAldSwgaGVhZGVyIHNp emUgJXp1IiwKKyAgICAgICAgICAgICAgcmVjLT5sZW5ndGgsIHNpemVvZigqaGRyKSk7CiAgICAg ICAgIHJldHVybiAtMTsKICAgICB9CiAKKyAgICBpZiAoIHJlYy0+bGVuZ3RoICE9IChzaXplb2Yo KmhkcikgKyBoZHItPmNvdW50ICogc2l6ZW9mKCplbnRyeSkpICkKKyAgICB7CisgICAgICAgIEVS Uk9SKCJIVk1fUEFSQU1TIHJlY29yZCB0cnVuY2F0ZWQ6IGhlYWRlciAlenUsIGNvdW50ICV1LCAi CisgICAgICAgICAgICAgICJleHBlY3RlZCBsZW4gJXp1LCBnb3QgJXUiLAorICAgICAgICAgICAg ICBzaXplb2YoKmhkciksIGhkci0+Y291bnQsIGhkci0+Y291bnQgKiBzaXplb2YoKmVudHJ5KSwK KyAgICAgICAgICAgICAgcmVjLT5sZW5ndGgpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQor CisgICAgLyoKKyAgICAgKiBUb2xlcmF0ZSBlbXB0eSByZWNvcmRzLiAgT2xkZXIgc2VuZGluZyBz aWRlcyB1c2VkIHRvIGFjY2lkZW50YWxseQorICAgICAqIGdlbmVyYXRlIHRoZW0uCisgICAgICov CisgICAgaWYgKCBoZHItPmNvdW50ID09IDAgKQorICAgIHsKKyAgICAgICAgREJHUFJJTlRGKCJT a2lwcGluZyBlbXB0eSBIVk1fUEFSQU1TIHJlY29yZFxuIik7CisgICAgICAgIHJldHVybiAwOwor ICAgIH0KKwogICAgIGZvciAoIGkgPSAwOyBpIDwgaGRyLT5jb3VudDsgaSsrLCBlbnRyeSsrICkK ICAgICB7CiAgICAgICAgIHN3aXRjaCAoIGVudHJ5LT5pbmRleCApCmRpZmYgLS1naXQgYS90b29s cy9saWJ4Yy94Y19zcl9yZXN0b3JlX3g4Nl9wdi5jIGIvdG9vbHMvbGlieGMveGNfc3JfcmVzdG9y ZV94ODZfcHYuYwppbmRleCBiYzYwNGIzLi41MGUyNWMxIDEwMDY0NAotLS0gYS90b29scy9saWJ4 Yy94Y19zcl9yZXN0b3JlX3g4Nl9wdi5jCisrKyBiL3Rvb2xzL2xpYnhjL3hjX3NyX3Jlc3RvcmVf eDg2X3B2LmMKQEAgLTc1MywxNSArNzUzLDI2IEBAIHN0YXRpYyBpbnQgaGFuZGxlX3g4Nl9wdl92 Y3B1X2Jsb2Ioc3RydWN0IHhjX3NyX2NvbnRleHQgKmN0eCwKICAgICB9CiAKICAgICAvKiBDb25m aXJtIHRoYXQgdGhlcmUgaXMgYSBjb21wbGV0ZSBoZWFkZXIuICovCi0gICAgaWYgKCByZWMtPmxl bmd0aCA8PSBzaXplb2YoKnZoZHIpICkKKyAgICBpZiAoIHJlYy0+bGVuZ3RoIDwgc2l6ZW9mKCp2 aGRyKSApCiAgICAgewotICAgICAgICBFUlJPUigiJXMgcmVjb3JkIHRydW5jYXRlZDogbGVuZ3Ro ICV1LCBtaW4gJXp1IiwKLSAgICAgICAgICAgICAgcmVjX25hbWUsIHJlYy0+bGVuZ3RoLCBzaXpl b2YoKnZoZHIpICsgMSk7CisgICAgICAgIEVSUk9SKCIlcyByZWNvcmQgdHJ1bmNhdGVkOiBsZW5n dGggJXUsIGhlYWRlciBzaXplICV6dSIsCisgICAgICAgICAgICAgIHJlY19uYW1lLCByZWMtPmxl bmd0aCwgc2l6ZW9mKCp2aGRyKSk7CiAgICAgICAgIGdvdG8gb3V0OwogICAgIH0KIAogICAgIGJs b2JzeiA9IHJlYy0+bGVuZ3RoIC0gc2l6ZW9mKCp2aGRyKTsKIAorICAgIC8qCisgICAgICogVG9s ZXJhdGUgZW1wdHkgcmVjb3Jkcy4gIE9sZGVyIHNlbmRpbmcgc2lkZXMgdXNlZCB0byBhY2NpZGVu dGFsbHkKKyAgICAgKiBnZW5lcmF0ZSB0aGVtLgorICAgICAqLworICAgIGlmICggYmxvYnN6ID09 IDAgKQorICAgIHsKKyAgICAgICAgREJHUFJJTlRGKCJTa2lwcGluZyBlbXB0eSAlcyByZWNvcmQg Zm9yIHZjcHUgJXVcbiIsCisgICAgICAgICAgICAgICAgICByZWNfdHlwZV90b19zdHIocmVjLT50 eXBlKSwgdmhkci0+dmNwdV9pZCk7CisgICAgICAgIGdvdG8gb3V0OworICAgIH0KKwogICAgIC8q IENoZWNrIHRoYXQgdGhlIHZjcHUgaWQgaXMgd2l0aGluIHJhbmdlLiAqLwogICAgIGlmICggdmhk ci0+dmNwdV9pZCA+PSBjdHgtPng4Nl9wdi5yZXN0b3JlLm5yX3ZjcHVzICkKICAgICB7Ci0tIAoy LjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhl bi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0 cy54ZW4ub3JnL3hlbi1kZXZlbAo=