From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Garzarella Subject: Re: [RFC 3/3] pvh: Boot uncompressed kernel using direct boot ABI Date: Wed, 12 Dec 2018 16:28:07 +0100 Message-ID: References: <1544049446-6359-1-git-send-email-liam.merwick@oracle.com> <1544049446-6359-4-git-send-email-liam.merwick@oracle.com> <33fb9ea4-d6c5-ed23-2fb5-6f818e250043@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gX6Qv-00039Z-Ir for xen-devel@lists.xenproject.org; Wed, 12 Dec 2018 15:28:21 +0000 Received: by mail-ot1-f66.google.com with SMTP id k98so17988943otk.3 for ; Wed, 12 Dec 2018 07:28:20 -0800 (PST) In-Reply-To: <33fb9ea4-d6c5-ed23-2fb5-6f818e250043@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: maran.wilson@oracle.com Cc: Eduardo Habkost , Michael Tsirkin , qemu-devel@nongnu.org, Paolo Bonzini , Stefan Hajnoczi , xen-devel@lists.xenproject.org, liam.merwick@oracle.com, rth@twiddle.net List-Id: xen-devel@lists.xenproject.org T24gVHVlLCBEZWMgMTEsIDIwMTggYXQgNzozNSBQTSBNYXJhbiBXaWxzb24gPG1hcmFuLndpbHNv bkBvcmFjbGUuY29tPiB3cm90ZToKPgo+IE9uIDEyLzExLzIwMTggOToxMSBBTSwgU3RlZmFubyBH YXJ6YXJlbGxhIHdyb3RlOgo+ID4gSGkgTGlhbSwKPiA+IGluIG9yZGVyIHRvIHN1cHBvcnQgUFZI IGFsc28gd2l0aCBTZWFCSU9TLCBJJ20gZ29pbmcgdG8gd29yayBvbiBhIG5ldwo+ID4gb3B0aW9u IHJvbSAobGlrZSBsaW51eGJvb3QvbXVsdGlib290KSB0aGF0IGNhbiBiZSB1c2VkIGluIHRoaXMg Y2FzZS4KPgo+IFRoYXQgaXMgYXdlc29tZS4gWWVzLCBwbGVhc2Uga2VlcCB1cyBwb3N0ZWQgd2hl biB5b3UgaGF2ZSBzb21ldGhpbmcgd29ya2luZy4KClllcywgSSdsbCBrZWVwIHlvdSB1cGRhdGVk IQoKPgo+IEp1c3QgRllJLCBiZWZvcmUgc3dpdGNoaW5nIG92ZXIgdG8gdXNpbmcgUWVtdStxYm9v dCwgd2UgaGFkIGJlZW4gdXNpbmcgYQo+IFFlbXUgb25seSBzb2x1dGlvbiAoYnV0IG5vdCB1c2lu ZyBhbiBvcHRpb24gcm9tKSBpbnRlcm5hbGx5IHRoYXQgd29ya2VkCj4gdmVyeSB3ZWxsIHVzaW5n IG5vIEZXIGF0IGFsbC4gV2UgaGFkIFFlbXUgc2ltcGx5IHBhcnNlIHRoZSBFTEYgZmlsZSBhbmQK PiBqdW1wIHRvIHRoZSBQVkggZW50cnkgcG9pbnQgaWYgb25lIGlzIGZvdW5kLiBUaGUgb25seSBn b3RjaGEgd2FzIHRoYXQgd2UKPiBoYWQgdG8gaW5jbHVkZSBhIHBhaXIgb2YgcGF0Y2hlcyB0aGF0 IHdlcmUgb3JpZ2luYWxseSB3cml0dGVuIGJ5IGZvbGtzCj4gYXQgSW50ZWwgYXMgcGFydCBvZiB0 aGUgY2xlYXIgY29udGFpbmVycyB3b3JrLiBTcGVjaWZpY2FsbHksIGluIG9yZGVyIHRvCj4gYmUg YWJsZSB0byBza2lwIGZpcm13YXJlIGVudGlyZWx5LCB3ZSBoYWQgdG8gZG8gMiBhZGRpdGlvbmFs IHRoaW5nczogKDEpCj4gQUNQSSB0YWJsZXMgZ2VuZXJhdGVkIGJ5IFFlbXUgYXJlIHVzdWFsbHkg cGF0Y2hlZCB1cCBieSBGVy4gU2luY2Ugd2UKPiB3ZXJlIHJ1bm5pbmcgbm8gRlcsIHdlIG5lZWRl ZCB0byBkbyB0aGF0IHBhdGNoaW5nIHVwIG9mIHRoZSBBQ1BJIHRhYmxlcwo+IGluIFFlbXUgd2hl biBpdCB3YXMgZGV0ZWN0ZWQgdGhhdCB3ZSB3ZXJlIGdvaW5nIHRvIGVudGVyIHRoZSBPUyB2aWEg dGhlCj4gUFZIIGVudHJ5IHBvaW50LiAoMikgV2UgYWxzbyBuZWVkZWQgdG8gYWRkIGEgcGF0Y2gg dG8gUWVtdSB0byBlbmFibGUgYQo+IGZldyBQTSByZWdpc3RlcnMgLS0gc29tZXRoaW5nIHR5cGlj YWxseSBkb25lIGJ5IEZXLgoKSSBoYWQgYSBsb29rIG9mIHFlbXUtbGl0ZSwgYXJlIHlvdSByZWZl cnJpbmcgdG8gdGhpcz8KCj4KPiBCdXQgaWYgU2VhQklPUyBpcyBpbnZvbHZlZCBpbiB0aGUgc29s dXRpb24geW91IGFyZSB3b3JraW5nIG9uLCBJIGd1ZXNzCj4geW91IHdvbid0IHJlYWxseSBuZWVk IHRob3NlIGV4dHJhIHBhdGNoZXMuIEp1c3QgZmlndXJlZCBJJ2QgbWVudGlvbiBpdAo+IHNvIHlv dSBoYXZlIHRoZSBmdWxsIHBpY3R1cmUuCgpUaGFuayB5b3UgdmVyeSBtdWNoIHRvIHNoYXJlIHdp dGggbWUgdGhlc2UgZGV0YWlscyEKCkNoZWVycywKU3RlZmFubwoKPgo+IFRoYW5rcywKPiAtTWFy YW4KPgo+ID4gSSdsbCBrZWVwIHlvdSB1cGRhdGVkIG9uIGl0IQo+ID4KPiA+IENoZWVycywKPiA+ IFN0ZWZhbm8KPiA+IE9uIFdlZCwgRGVjIDUsIDIwMTggYXQgMTE6MzggUE0gTGlhbSBNZXJ3aWNr IDxsaWFtLm1lcndpY2tAb3JhY2xlLmNvbT4gd3JvdGU6Cj4gPj4gVGhlc2UgY2hhbmdlcyAoYWxv bmcgd2l0aCBjb3JyZXNwb25kaW5nIHFib290IGFuZCBMaW51eCBrZXJuZWwgY2hhbmdlcykKPiA+ PiBlbmFibGUgYSBndWVzdCB0byBiZSBib290ZWQgdXNpbmcgdGhlIHg4Ni9IVk0gZGlyZWN0IGJv b3QgQUJJLgo+ID4+Cj4gPj4gVGhpcyBjb21taXQgYWRkcyBhIGxvYWRfZWxmYm9vdCgpIHJvdXRp bmUgdG8gcGFzcyB0aGUgc2l6ZSBhbmQKPiA+PiBsb2NhdGlvbiBvZiB0aGUga2VybmVsIGVudHJ5 IHBvaW50IHRvIHFib290ICh3aGljaCB3aWxsIGZpbGwgaW4KPiA+PiB0aGUgc3RhcnRfaW5mbyBz dHJ1Y3QgaW5mb3JtYXRpb24gbmVlZGVkIHRvIHRvIGJvb3QgdGhlIGd1ZXN0KS4KPiA+PiBIYXZp bmcgbG9hZGVkIHRoZSBFTEYgYmluYXJ5LCBsb2FkX2xpbnV4KCkgd2lsbCBydW4gcWJvb3QKPiA+ PiB3aGljaCBjb250aW51ZXMgdGhlIGJvb3QuCj4gPj4KPiA+PiBUaGUgYWRkcmVzcyBmb3IgdGhl IGtlcm5lbCBlbnRyeSBwb2ludCBoYXMgYWxyZWFkeSBiZWVuIHJlYWQKPiA+PiBmcm9tIGFuIEVM RiBOb3RlIGluIHRoZSB1bmNvbXByZXNzZWQga2VybmVsIGJpbmFyeSBlYXJsaWVyCj4gPj4gaW4g cGNfbWVtb3J5X2luaXQoKS4KPiA+Pgo+ID4+IFNpZ25lZC1vZmYtYnk6IEdlb3JnZSBLZW5uZWR5 IDxHZW9yZ2UuS2VubmVkeUBvcmFjbGUuY29tPgo+ID4+IFNpZ25lZC1vZmYtYnk6IExpYW0gTWVy d2ljayA8TGlhbS5NZXJ3aWNrQG9yYWNsZS5jb20+Cj4gPj4gLS0tCj4gPj4gICBody9pMzg2L3Bj LmMgfCA3MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysKPiA+PiAgIDEgZmlsZSBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCspCj4gPj4K PiA+PiBkaWZmIC0tZ2l0IGEvaHcvaTM4Ni9wYy5jIGIvaHcvaTM4Ni9wYy5jCj4gPj4gaW5kZXgg MDU2YWE0NmQ5OWI5Li5kMzAxMmNiZDg1OTcgMTAwNjQ0Cj4gPj4gLS0tIGEvaHcvaTM4Ni9wYy5j Cj4gPj4gKysrIGIvaHcvaTM4Ni9wYy5jCj4gPj4gQEAgLTU0LDYgKzU0LDcgQEAKPiA+PiAgICNp bmNsdWRlICJzeXNlbXUvcXRlc3QuaCIKPiA+PiAgICNpbmNsdWRlICJrdm1faTM4Ni5oIgo+ID4+ ICAgI2luY2x1ZGUgImh3L3hlbi94ZW4uaCIKPiA+PiArI2luY2x1ZGUgImh3L3hlbi9zdGFydF9p bmZvLmgiCj4gPj4gICAjaW5jbHVkZSAidWkvcWVtdS1zcGljZS5oIgo+ID4+ICAgI2luY2x1ZGUg ImV4ZWMvbWVtb3J5LmgiCj4gPj4gICAjaW5jbHVkZSAiZXhlYy9hZGRyZXNzLXNwYWNlcy5oIgo+ ID4+IEBAIC0xMDk4LDYgKzEwOTksNTAgQEAgZG9uZToKPiA+PiAgICAgICByZXR1cm4gcHZoX3N0 YXJ0X2FkZHIgIT0gMDsKPiA+PiAgIH0KPiA+Pgo+ID4+ICtzdGF0aWMgYm9vbCBsb2FkX2VsZmJv b3QoY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLAo+ID4+ICsgICAgICAgICAgICAgICAgICAg aW50IGtlcm5lbF9maWxlX3NpemUsCj4gPj4gKyAgICAgICAgICAgICAgICAgICB1aW50OF90ICpo ZWFkZXIsCj4gPj4gKyAgICAgICAgICAgICAgICAgICBzaXplX3QgcHZoX3hlbl9zdGFydF9hZGRy LAo+ID4+ICsgICAgICAgICAgICAgICAgICAgRldDZmdTdGF0ZSAqZndfY2ZnKQo+ID4+ICt7Cj4g Pj4gKyAgICB1aW50MzJfdCBmbGFncyA9IDA7Cj4gPj4gKyAgICB1aW50MzJfdCBtaF9sb2FkX2Fk ZHIgPSAwOwo+ID4+ICsgICAgdWludDMyX3QgZWxmX2tlcm5lbF9zaXplID0gMDsKPiA+PiArICAg IHVpbnQ2NF90IGVsZl9lbnRyeTsKPiA+PiArICAgIHVpbnQ2NF90IGVsZl9sb3csIGVsZl9oaWdo Owo+ID4+ICsgICAgaW50IGtlcm5lbF9zaXplOwo+ID4+ICsKPiA+PiArICAgIGlmIChsZGxfcCho ZWFkZXIpICE9IDB4NDY0YzQ1N2YpIHsKPiA+PiArICAgICAgICByZXR1cm4gZmFsc2U7IC8qIG5v IGVsZmJvb3QgKi8KPiA+PiArICAgIH0KPiA+PiArCj4gPj4gKyAgICBib29sIGVsZl9pczY0ID0g aGVhZGVyW0VJX0NMQVNTXSA9PSBFTEZDTEFTUzY0Owo+ID4+ICsgICAgZmxhZ3MgPSBlbGZfaXM2 NCA/Cj4gPj4gKyAgICAgICAgKChFbGY2NF9FaGRyICopaGVhZGVyKS0+ZV9mbGFncyA6ICgoRWxm MzJfRWhkciAqKWhlYWRlciktPmVfZmxhZ3M7Cj4gPj4gKwo+ID4+ICsgICAgaWYgKGZsYWdzICYg MHgwMDAxMDAwNCkgeyAvKiBMT0FEX0VMRl9IRUFERVJfSEFTX0FERFIgKi8KPiA+PiArICAgICAg ICBlcnJvcl9yZXBvcnQoImVsZmJvb3QgdW5zdXBwb3J0ZWQgZmxhZ3MgPSAleCIsIGZsYWdzKTsK PiA+PiArICAgICAgICBleGl0KDEpOwo+ID4+ICsgICAgfQo+ID4+ICsKPiA+PiArICAgIGtlcm5l bF9zaXplID0gbG9hZF9lbGYoa2VybmVsX2ZpbGVuYW1lLCBOVUxMLCBOVUxMLCAmZWxmX2VudHJ5 LAo+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAmZWxmX2xvdywgJmVsZl9oaWdoLCAw LCBJMzg2X0VMRl9NQUNISU5FLAo+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAw KTsKPiA+PiArCj4gPj4gKyAgICBpZiAoa2VybmVsX3NpemUgPCAwKSB7Cj4gPj4gKyAgICAgICAg ZXJyb3JfcmVwb3J0KCJFcnJvciB3aGlsZSBsb2FkaW5nIGVsZiBrZXJuZWwiKTsKPiA+PiArICAg ICAgICBleGl0KDEpOwo+ID4+ICsgICAgfQo+ID4+ICsgICAgbWhfbG9hZF9hZGRyID0gZWxmX2xv dzsKPiA+PiArICAgIGVsZl9rZXJuZWxfc2l6ZSA9IGVsZl9oaWdoIC0gZWxmX2xvdzsKPiA+PiAr Cj4gPj4gKyAgICBmd19jZmdfYWRkX2kzMihmd19jZmcsIEZXX0NGR19LRVJORUxfRU5UUlksIHB2 aF94ZW5fc3RhcnRfYWRkcik7Cj4gPj4gKyAgICBmd19jZmdfYWRkX2kzMihmd19jZmcsIEZXX0NG R19LRVJORUxfQUREUiwgbWhfbG9hZF9hZGRyKTsKPiA+PiArICAgIGZ3X2NmZ19hZGRfaTMyKGZ3 X2NmZywgRldfQ0ZHX0tFUk5FTF9TSVpFLCBlbGZfa2VybmVsX3NpemUpOwo+ID4+ICsKPiA+PiAr ICAgIHJldHVybiB0cnVlOwo+ID4+ICt9Cj4gPj4gKwo+ID4+ICAgc3RhdGljIHZvaWQgbG9hZF9s aW51eChQQ01hY2hpbmVTdGF0ZSAqcGNtcywKPiA+PiAgICAgICAgICAgICAgICAgICAgICAgICAg RldDZmdTdGF0ZSAqZndfY2ZnKQo+ID4+ICAgewo+ID4+IEBAIC0xMTM4LDYgKzExODMsMzMgQEAg c3RhdGljIHZvaWQgbG9hZF9saW51eChQQ01hY2hpbmVTdGF0ZSAqcGNtcywKPiA+PiAgICAgICBp ZiAobGRsX3AoaGVhZGVyKzB4MjAyKSA9PSAweDUzNzI2NDQ4KSB7Cj4gPj4gICAgICAgICAgIHBy b3RvY29sID0gbGR1d19wKGhlYWRlcisweDIwNik7Cj4gPj4gICAgICAgfSBlbHNlIHsKPiA+PiAr ICAgICAgICAvKiBJZiB0aGUga2VybmVsIGFkZHJlc3MgZm9yIHVzaW5nIHRoZSB4ODYvSFZNIGRp cmVjdCBib290IEFCSSBoYXMKPiA+PiArICAgICAgICAgKiBiZWVuIHNhdmVkIHRoZW4gcHJvY2Vl ZCB3aXRoIGJvb3RpbmcgdGhlIHVuY29tcHJlc3NlZCBrZXJuZWwgKi8KPiA+PiArICAgICAgICBp ZiAocHZoX3N0YXJ0X2FkZHIpIHsKPiA+PiArICAgICAgICAgICAgaWYgKGxvYWRfZWxmYm9vdChr ZXJuZWxfZmlsZW5hbWUsIGtlcm5lbF9zaXplLAo+ID4+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGhlYWRlciwgcHZoX3N0YXJ0X2FkZHIsIGZ3X2NmZykpIHsKPiA+PiArICAgICAgICAg ICAgICAgIHN0cnVjdCBodm1fbW9kbGlzdF9lbnRyeSByYW1kaXNrX21vZCA9IHsgMCB9Owo+ID4+ ICsKPiA+PiArICAgICAgICAgICAgICAgIGZjbG9zZShmKTsKPiA+PiArCj4gPj4gKyAgICAgICAg ICAgICAgICBmd19jZmdfYWRkX2kzMihmd19jZmcsIEZXX0NGR19DTURMSU5FX1NJWkUsCj4gPj4g KyAgICAgICAgICAgICAgICAgICAgc3RybGVuKGtlcm5lbF9jbWRsaW5lKSArIDEpOwo+ID4+ICsg ICAgICAgICAgICAgICAgZndfY2ZnX2FkZF9zdHJpbmcoZndfY2ZnLCBGV19DRkdfQ01ETElORV9E QVRBLCBrZXJuZWxfY21kbGluZSk7Cj4gPj4gKwo+ID4+ICsgICAgICAgICAgICAgICAgYXNzZXJ0 KG1hY2hpbmUtPmRldmljZV9tZW1vcnkgIT0gTlVMTCk7Cj4gPj4gKyAgICAgICAgICAgICAgICBy YW1kaXNrX21vZC5wYWRkciA9IG1hY2hpbmUtPmRldmljZV9tZW1vcnktPmJhc2U7Cj4gPj4gKyAg ICAgICAgICAgICAgICByYW1kaXNrX21vZC5zaXplID0KPiA+PiArICAgICAgICAgICAgICAgICAg ICBtZW1vcnlfcmVnaW9uX3NpemUoJm1hY2hpbmUtPmRldmljZV9tZW1vcnktPm1yKTsKPiA+PiAr Cj4gPj4gKyAgICAgICAgICAgICAgICBmd19jZmdfYWRkX2J5dGVzKGZ3X2NmZywgRldfQ0ZHX0tF Uk5FTF9EQVRBLCAmcmFtZGlza19tb2QsCj4gPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHNpemVvZihyYW1kaXNrX21vZCkpOwo+ID4+ICsgICAgICAgICAgICAgICAgZndfY2Zn X2FkZF9pMzIoZndfY2ZnLCBGV19DRkdfU0VUVVBfU0laRSwgc2l6ZW9mKGhlYWRlcikpOwo+ID4+ ICsgICAgICAgICAgICAgICAgZndfY2ZnX2FkZF9ieXRlcyhmd19jZmcsIEZXX0NGR19TRVRVUF9E QVRBLAo+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXIsIHNpemVv ZihoZWFkZXIpKTsKPiA+PiArCj4gPj4gKyAgICAgICAgICAgICAgICByZXR1cm47Cj4gPj4gKyAg ICAgICAgICAgIH0KPiA+PiArICAgICAgICB9Cj4gPj4gICAgICAgICAgIC8qIFRoaXMgbG9va3Mg bGlrZSBhIG11bHRpYm9vdCBrZXJuZWwuIElmIGl0IGlzLCBsZXQncyBzdG9wCj4gPj4gICAgICAg ICAgICAgIHRyZWF0aW5nIGl0IGxpa2UgYSBMaW51eCBrZXJuZWwuICovCj4gPj4gICAgICAgICAg IGlmIChsb2FkX211bHRpYm9vdChmd19jZmcsIGYsIGtlcm5lbF9maWxlbmFtZSwgaW5pdHJkX2Zp bGVuYW1lLAo+ID4+IC0tCj4gPj4gMS44LjMuMQo+ID4+Cj4gPgo+CgoKLS0gClN0ZWZhbm8gR2Fy emFyZWxsYQpSZWQgSGF0CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0 Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRl dmVs