From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH v6 09/24] xsplice: Implement payload loading Date: Fri, 8 Apr 2016 16:31:46 +0100 Message-ID: <5707CEE2.50303@citrix.com> References: <1460000983-28170-1-git-send-email-konrad.wilk@oracle.com> <1460000983-28170-10-git-send-email-konrad.wilk@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta14.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aoYO4-0000yo-67 for xen-devel@lists.xenproject.org; Fri, 08 Apr 2016 15:31:56 +0000 In-Reply-To: <1460000983-28170-10-git-send-email-konrad.wilk@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Konrad Rzeszutek Wilk , xen-devel@lists.xenproject.org, konrad@kernel.org, ross.lagerwall@citrix.com, mpohlack@amazon.de, sasha.levin@oracle.com Cc: Keir Fraser , Julien Grall , Stefano Stabellini , Jan Beulich List-Id: xen-devel@lists.xenproject.org T24gMDcvMDQvMTYgMDQ6NDksIEtvbnJhZCBSemVzenV0ZWsgV2lsayB3cm90ZToKPiBkaWZmIC0t Z2l0IGEveGVuL2FyY2gveDg2L3hzcGxpY2UuYyBiL3hlbi9hcmNoL3g4Ni94c3BsaWNlLmMKPiBu ZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLmNhZGYxZjEKPiAtLS0gL2Rldi9u dWxsCj4gKysrIGIveGVuL2FyY2gveDg2L3hzcGxpY2UuYwo+IEBAIC0wLDAgKzEsMTk5IEBACj4g Ky8qCj4gKyAqIENvcHlyaWdodCAoQykgMjAxNiBDaXRyaXggU3lzdGVtcyBSJkQgTHRkLgo+ICsg Ki8KPiArCj4gKyNpbmNsdWRlIDx4ZW4vZXJybm8uaD4KPiArI2luY2x1ZGUgPHhlbi9saWIuaD4K PiArI2luY2x1ZGUgPHhlbi9tbS5oPgo+ICsjaW5jbHVkZSA8eGVuL3Bmbi5oPgo+ICsjaW5jbHVk ZSA8eGVuL3ZtYXAuaD4KPiArI2luY2x1ZGUgPHhlbi94c3BsaWNlX2VsZi5oPgo+ICsjaW5jbHVk ZSA8eGVuL3hzcGxpY2UuaD4KPiArCj4gK2ludCBhcmNoX3hzcGxpY2VfdmVyaWZ5X2VsZihjb25z dCBzdHJ1Y3QgeHNwbGljZV9lbGYgKmVsZikKPiArewo+ICsKPiArICAgIGNvbnN0IEVsZl9FaGRy ICpoZHIgPSBlbGYtPmhkcjsKPiArCj4gKyAgICBpZiAoIGhkci0+ZV9tYWNoaW5lICE9IEVNX1g4 Nl82NCApCj4gKyAgICB7Cj4gKyAgICAgICAgcHJpbnRrKFhFTkxPR19FUlIgWFNQTElDRSAiJXM6 IEludmFsaWQgRUxGIHBheWxvYWQhXG4iLCBlbGYtPm5hbWUpOwoKV291bGQgYmUgbmljZXIgYXMg IlVuc3VwcG9ydGVkIEVMRiBNYWNoaW5lIHR5cGUgJXUiLgoKPiArICAgICAgICByZXR1cm4gLUVP UE5PVFNVUFA7Cj4gKyAgICB9Cj4gKwo+ICsgICAgcmV0dXJuIDA7Cj4gK30KPiArCj4gK2ludCBh cmNoX3hzcGxpY2VfcGVyZm9ybV9yZWwoc3RydWN0IHhzcGxpY2VfZWxmICplbGYsCj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhzcGxpY2VfZWxmX3NlYyAqYmFz ZSwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeHNwbGljZV9l bGZfc2VjICpyZWxhKQo+ICt7Cj4gKyAgICBkcHJpbnRrKFhFTkxPR19FUlIsIFhTUExJQ0UgIiVz OiBTSFRfUkVMIHJlbG9jYXRpb24gdW5zdXBwb3J0ZWRcbiIsCj4gKyAgICAgICAgICAgIGVsZi0+ bmFtZSk7Cj4gKyAgICByZXR1cm4gLUVOT1NZUzsKPiArfQo+ICsKPiAraW50IGFyY2hfeHNwbGlj ZV9wZXJmb3JtX3JlbGEoc3RydWN0IHhzcGxpY2VfZWxmICplbGYsCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4c3BsaWNlX2VsZl9zZWMgKmJhc2UsCj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4c3BsaWNlX2VsZl9zZWMg KnJlbGEpCj4gK3sKPiArICAgIGNvbnN0IEVsZl9SZWxBICpyOwo+ICsgICAgdW5zaWduZWQgaW50 IHN5bW5keCwgaTsKPiArICAgIHVpbnQ2NF90IHZhbDsKPiArICAgIHVpbnQ4X3QgKmRlc3Q7Cj4g Kwo+ICsgICAgaWYgKCAhcmVsYS0+c2VjLT5zaF9lbnRzaXplIHx8ICFyZWxhLT5zZWMtPnNoX3Np emUgfHwKPiArICAgICAgICAgcmVsYS0+c2VjLT5zaF9lbnRzaXplICE9IHNpemVvZihFbGZfUmVs QSkgKQo+ICsgICAgewo+ICsgICAgICAgIGRwcmludGsoWEVOTE9HX0RFQlVHLCBYU1BMSUNFICIl czogU2VjdGlvbiByZWxhdGl2ZSBoZWFkZXIgaXMgY29ycnVwdGVkIVxuIiwKPiArICAgICAgICAg ICAgICAgIGVsZi0+bmFtZSk7CgpYRU5MT0dfRVJSIHN1cmVseT8gKGFuZCB0aGUgb3RoZXIgZXhh bXBsZXMpLgoKPiArLyoKPiArICogT25jZSB0aGUgcmVzb2x2aW5nIHN5bWJvbHMsIHBlcmZvcm1p bmcgcmVsb2NhdGlvbnMsIGV0YyBpcyBjb21wbGV0ZQo+ICsgKiB3ZSBzZWN1cmUgdGhlIG1lbW9y eSBieSBwdXR0aW5nIGluIHRoZSBwcm9wZXIgcGFnZSB0YWJsZSBhdHRyaWJ1dGVzCj4gKyAqIGZv ciB0aGUgZGVzaXJlZCB0eXBlLgo+ICsgKi8KPiAraW50IGFyY2hfeHNwbGljZV9zZWN1cmUodm9p ZCAqdmEsIHVuc2lnbmVkIGludCBwYWdlcywgZW51bSB2YV90eXBlIHR5cGUsCj4gKyAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IG1mbl90ICptZm4pCj4gK3sKPiArICAgIHVuc2lnbmVkIGxv bmcgY3VyOwo+ICsgICAgdW5zaWduZWQgbG9uZyBzdGFydCA9ICh1bnNpZ25lZCBsb25nKXZhOwo+ ICsgICAgaW50IGZsYWc7Cj4gKwo+ICsgICAgQVNTRVJUKHZhKTsKPiArICAgIEFTU0VSVChwYWdl cyk7Cj4gKwo+ICsgICAgaWYgKCB0eXBlID09IFhTUExJQ0VfVkFfUlggKQo+ICsgICAgICAgIGZs YWcgPSBQQUdFX0hZUEVSVklTT1JfUlg7Cj4gKyAgICBlbHNlIGlmICggdHlwZSA9PSBYU1BMSUNF X1ZBX1JXICkKPiArICAgICAgICBmbGFnID0gUEFHRV9IWVBFUlZJU09SX1JXOwo+ICsgICAgZWxz ZQo+ICsgICAgICAgIGZsYWcgPSBQQUdFX0hZUEVSVklTT1JfUk87Cj4gKwo+ICsgICAgLyoKPiAr ICAgICAqIFdlIGNvdWxkIHdhbGsgdGhlIHBhZ2V0YWJsZSBhbmQgZG8gdGhlIHBhZ2V0YWJsZSBt YW5pcHVsYXRpb25zCj4gKyAgICAgKiAoc3RyaXAgdGhlIF9QQUdFX1JXKSwgd2hpY2ggd291bGQg bWVhbiBhbHNvIG5vdCBuZWVkaW5nIHRoZSBtZm4KPiArICAgICAqIGFycmF5LCBidXQgdGhlcmUg YXJlIG5vIGdlbmVyaWMgY29kZSBmb3IgdGhpcyB5ZXQgKFRPRE8pLgo+ICsgICAgICoKPiArICAg ICAqIEZvciByaWdodCBub3cgdGVhciBkb3duIHRoZSBwYWdldGFibGVzIGFuZCByZWNyZWF0ZSB0 aGVtLgo+ICsgICAgICovCj4gKyAgICBkZXN0cm95X3hlbl9tYXBwaW5ncyhzdGFydCwgc3RhcnQg KyBwYWdlcyAqIFBBR0VfU0laRSk7Cj4gKwo+ICsgICAgZm9yICggY3VyID0gc3RhcnQ7IHBhZ2Vz LS07ICsrbWZuLCBjdXIgKz0gUEFHRV9TSVpFICkKPiArICAgIHsKPiArICAgICAgICBpZiAoIG1h cF9wYWdlc190b194ZW4oY3VyLCBtZm5feCgqbWZuKSwgMSwgZmxhZykgKQo+ICsgICAgICAgIHsK PiArICAgICAgICAgICAgaWYgKCBjdXIgIT0gc3RhcnQgKQo+ICsgICAgICAgICAgICAgICAgZGVz dHJveV94ZW5fbWFwcGluZ3Moc3RhcnQsIGN1cik7Cj4gKyAgICAgICAgICAgIHJldHVybiAtRUlO VkFMOwo+ICsgICAgICAgIH0KPiArICAgIH0KCjopIE11Y2ggbmljZXIgdGhhbiBiZWZvcmUuCgo+ ICsKPiArICAgIHJldHVybiAwOwo+ICt9Cj4gKwo+ICt2b2lkIGFyY2hfeHNwbGljZV9mcmVlX3Bh eWxvYWQodm9pZCAqdmEpCj4gK3sKPiArICAgIHZmcmVlX3R5cGUodmEsIFZNQVBfWEVOKTsKPiAr fQo+ICsKPiArdm9pZCBhcmNoX3hzcGxpY2VfaW5pdCh2b2lkKQo+ICt7Cj4gKyAgICB2b2lkICpz dGFydCwgKmVuZDsKPiArCj4gKyAgICBzdGFydCA9ICh2b2lkICopeGVuX3ZpcnRfZW5kOwo+ICsg ICAgZW5kID0gKHZvaWQgKikoWEVOX1ZJUlRfRU5EIC0gTlJfQ1BVUyAqIFBBR0VfU0laRSk7CgpB bm90aGVyIFRPRE8gZm9yIHRoZSBmdXR1cmUuICBNYWtlIGEgY29uc3RhbnQgdG8gY292ZXIgdGhl IFZBIHNwYWNlCm9jY3VwaWVkIGJ5IHRoZSBwZXItY3B1IHN0dWJzLgoKPiBAQCAtMjc2LDYgKzM3 NCwyNiBAQCBzdGF0aWMgaW50IHhzcGxpY2VfaGVhZGVyX2NoZWNrKGNvbnN0IHN0cnVjdCB4c3Bs aWNlX2VsZiAqZWxmKQo+ICAgICAgICAgIHJldHVybiAtRU9QTk9UU1VQUDsKPiAgICAgIH0KPiAg Cj4gKyAgICBpZiAoICFJU19FTEYoKmhkcikgKQo+ICsgICAgewo+ICsgICAgICAgIHByaW50ayhY RU5MT0dfRVJSIFhTUExJQ0UgIiVzOiBOb3QgYW4gRUxGIHBheWxvYWQhXG4iLCBlbGYtPm5hbWUp Owo+ICsgICAgICAgIHJldHVybiAtRUlOVkFMOwo+ICsgICAgfQo+ICsKPiArICAgIGlmICggaGRy LT5lX2lkZW50W0VJX0NMQVNTXSAhPSBFTEZDTEFTUzY0IHx8Cj4gKyAgICAgICAgIGhkci0+ZV9p ZGVudFtFSV9EQVRBXSAhPSBFTEZEQVRBMkxTQiB8fAo+ICsgICAgICAgICBoZHItPmVfaWRlbnRb RUlfT1NBQkldICE9IEVMRk9TQUJJX1NZU1YgfHwKPiArICAgICAgICAgaGRyLT5lX3R5cGUgIT0g RVRfUkVMIHx8Cj4gKyAgICAgICAgIGhkci0+ZV9waG51bSAhPSAwICkKPiArICAgIHsKPiArICAg ICAgICBwcmludGsoWEVOTE9HX0VSUiBYU1BMSUNFICIlczogSW52YWxpZCBFTEYgcGF5bG9hZCFc biIsIGVsZi0+bmFtZSk7Cj4gKyAgICAgICAgcmV0dXJuIC1FT1BOT1RTVVBQOwo+ICsgICAgfQoK VGhpcyBodW5rIHVwIHRvIHRoaXMgcG9pbnQgaXMgYSByZWJhc2luZyBlcnJvciBvdmVyIHRoZSBw cmV2aW91cyBwYXRjaC4gClRoZXNlIHR3byBjaGVja3MgYXJlIGN1cnJlbnRseSBkdXBsaWNhdGVk LiAgKENsZWFybHkgbWFraW5nIGRvdWJseSBzdXJlCml0IGlzIGEgdmFsaWQgRUxGIHBheWxvYWQg O3ApLgoKV2l0aCB0aGVzZSBtaW5vciBiaXRzIGZpeGVkLCBSZXZpZXdlZC1ieTogQW5kcmV3IENv b3Blcgo8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVs QGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==