From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH v6 08/24] xsplice: Add helper elf routines Date: Fri, 8 Apr 2016 23:10:20 +0100 Message-ID: <57082C4C.7020309@citrix.com> References: <1460000983-28170-1-git-send-email-konrad.wilk@oracle.com> <1460000983-28170-9-git-send-email-konrad.wilk@oracle.com> <5707C5F8.2070604@citrix.com> <20160408212657.GG27946@char.us.oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aoebg-0001XH-Vj for xen-devel@lists.xenproject.org; Fri, 08 Apr 2016 22:10:25 +0000 In-Reply-To: <20160408212657.GG27946@char.us.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 Cc: Keir Fraser , Tim Deegan , Ian Jackson , mpohlack@amazon.de, ross.lagerwall@citrix.com, Jan Beulich , sasha.levin@oracle.com, xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org T24gMDgvMDQvMTYgMjI6MjYsIEtvbnJhZCBSemVzenV0ZWsgV2lsayB3cm90ZToKPiBPbiBGcmks IEFwciAwOCwgMjAxNiBhdCAwMzo1Mzo0NFBNICswMTAwLCBBbmRyZXcgQ29vcGVyIHdyb3RlOgo+ PiBPbiAwNy8wNC8xNiAwNDo0OSwgS29ucmFkIFJ6ZXN6dXRlayBXaWxrIHdyb3RlOgo+Pj4gK3N0 YXRpYyBpbnQgZWxmX3Jlc29sdmVfc2VjdGlvbnMoc3RydWN0IHhzcGxpY2VfZWxmICplbGYsIGNv bnN0IHZvaWQgKmRhdGEpCj4+PiArewo+Pj4gKyAgICBzdHJ1Y3QgeHNwbGljZV9lbGZfc2VjICpz ZWM7Cj4+PiArICAgIHVuc2lnbmVkIGludCBpOwo+Pj4gKyAgICBFbGZfT2ZmIGRlbHRhOwo+Pj4g KyAgICBpbnQgcmM7Cj4+PiArCj4+PiArICAgIC8qIHhzcGxpY2VfZWxmX2xvYWQgc2FuaXR5IGNo ZWNrZWQgZV9zaG51bS4gKi8KPj4+ICsgICAgc2VjID0geG1hbGxvY19hcnJheShzdHJ1Y3QgeHNw bGljZV9lbGZfc2VjLCBlbGYtPmhkci0+ZV9zaG51bSk7Cj4+PiArICAgIGlmICggIXNlYyApCj4+ PiArICAgIHsKPj4+ICsgICAgICAgIHByaW50ayhYRU5MT0dfRVJSIFhTUExJQ0UiJXM6IENvdWxk IG5vdCBhbGxvY2F0ZSBtZW1vcnkgZm9yIHNlY3Rpb24gdGFibGUhXG4iLAo+Pj4gKyAgICAgICAg ICAgICAgIGVsZi0+bmFtZSk7Cj4+PiArICAgICAgICByZXR1cm4gLUVOT01FTTsKPj4+ICsgICAg fQo+Pj4gKwo+Pj4gKyAgICBlbGYtPnNlYyA9IHNlYzsKPj4+ICsKPj4+ICsgICAgZGVsdGEgPSBl bGYtPmhkci0+ZV9zaG9mZiArIGVsZi0+aGRyLT5lX3NobnVtICogZWxmLT5oZHItPmVfc2hlbnRz aXplOwo+PiBIYXZlIHdlIHZlcmlmaWVkIGFueSBvZiB0aGVzZSB0byBiZSBzYW5lIHlldD8gIChp LmUuIHdoYXQgYWJvdXQKPj4gY2FsY3VsYXRpb24gb3ZlcmZsb3c/KQo+Pgo+PiAoRWRpdDogZV9z aG51bSB5ZXMsIGVfc2hlbnRzaXplIGFuZCBlX3Nob2ZmIGxvb2sgdG8gYmUgbm8pCj4gZV9zaGVu dHNpemUgaXMgdWludDE2X3QKPiBlX3Nob2ZmIGlzIHVpbnQ2NF90IG9yIHVpbnQzMl90Lgo+Cj4g V2hlcmUgeW91IHRoaW5rIGEgY2hlY2sgYWdhaW5zdCBVSU5UX01BWC9VTE9OR19NQVggZm9yIHRo ZSBlX3Nob2ZmPwoKZV9zaG9mZiBuZWVkcyBjaGVja2luZyB0byBiZSB3aXRoaW4gZWxmLT5sZW4g YWxvbmUsIGJlZm9yZSBhIGNhbGN1bGF0aW9uCmludm9sdmluZyBlX3Nob2ZmIGlzIGNoZWNrZWQg YWdhaW5zdCBlbGYtPmxlbi4KClNwZWNpZmljYWxseSwgaWYgaXQgd2VyZSBzYXkgKHVpbnQ2NF90 KS0xIGluIHRoZSBlbGYgaGVhZGVyLCB0aGVuIHRoaXMKY2FsY3VsYXRpb24gd291bGQgb3ZlcmZs b3cgYW5kIHRoZSBjaGVjayBiZWxvdyB3b3VsZCBwYXNzLgoKU2ltaWxhcmx5LCBzb21ldGhpbmcg c2hvdWxkIGNoZWNrIGVfc2hlbnRzaXplIGFnYWluc3QgYW4gZXhhY3QgdmFsdWUsCmdpdmVuIHRo YXQgaXRzIHNpemUgaXMgdXNlZCB0byBpbmZlciB0aGUgbGF5b3V0IG9mIHRoZSBzZWN0aW9uIGhl YWRlcgpmaWVsZHMuCgo+Cj4+PiArICAgIGlmICggZGVsdGEgPj0gZWxmLT5sZW4gKQo+IFRoaXMg c2hvdWxkIGhhdmUgYmVlbiA+Cj4KPiBBcyBJIGZvdW5kIG91dCBzb21lIGxpbmtlcnMgYXJlIGhh cHB5IHRvIHBsYWNlIHRoYXQgd2hvbGUgc2VjdGlvbiB0YWJsZQo+IGF0IHRoZSBlbmQgb2YgdGhl IGZpbGUuIFdoaWNoIG1lYW5zIHRoYXQgdGhpcyBjaGVja3MgZ2V0cyB0cmlnZ2VyZWQuCgpUaGlz IGlzIG5vcm1hbC4gIFRyYWRpdGlvbmFsbHksIHByb2dyYW0gaGVhZGVycyBsaXZlIGF0IHRoZSBz dGFydCBvZiB0aGUKaW1hZ2UsIGFuZCBzZWN0aW9uIGhlYWRlcnMgYXQgdGhlIGVuZC4KClRoZSBz cGVjIGRvZXNuJ3QgZW5mb3JjZSB0aGlzIGhvd2V2ZXIuCgo+Pj4gKyAgICB7Cj4+PiArICAgICAg ICAgICAgZHByaW50ayhYRU5MT0dfREVCVUcsIFhTUExJQ0UgIiVzOiBTZWN0aW9uIHRhYmxlIGlz IHBhc3QgZW5kIG9mIHBheWxvYWQhXG4iLAo+Pj4gKyAgICAgICAgICAgICAgICAgICAgZWxmLT5u YW1lKTsKPj4+ICsgICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKPj4+ICsgICAgfQo+PiAoTWlz KS1hbGlnbm1lbnQKPj4KPj4KPj4+ICtzdGF0aWMgaW50IGVsZl9nZXRfc3ltKHN0cnVjdCB4c3Bs aWNlX2VsZiAqZWxmLCBjb25zdCB2b2lkICpkYXRhKQo+Pj4gK3sKPj4+ICsgICAgY29uc3Qgc3Ry dWN0IHhzcGxpY2VfZWxmX3NlYyAqc3ltdGFiX3NlYywgKnN0cnRhYl9zZWM7Cj4+PiArICAgIHN0 cnVjdCB4c3BsaWNlX2VsZl9zeW0gKnN5bTsKPj4+ICsgICAgdW5zaWduZWQgaW50IGksIGRlbHRh LCBvZmZzZXQsIG5zeW07Cj4+PiArCj4+PiArICAgIHN5bXRhYl9zZWMgPSBlbGYtPnN5bXRhYjsK Pj4+ICsgICAgc3RydGFiX3NlYyA9IGVsZi0+c3RydGFiOwo+Pj4gKwo+Pj4gKyAgICAvKiBQb2lu dGVycyBhcml0aG1ldGljIHRvIGdldCBmaWxlIG9mZnNldC4gKi8KPj4+ICsgICAgb2Zmc2V0ID0g c3RydGFiX3NlYy0+ZGF0YSAtIGRhdGE7Cj4+PiArCj4+PiArICAgIC8qIENoZWNrZWQgYWxyZWFk eSBpbiBlbGZfcmVzb2x2ZV9zZWN0aW9ucywgYnV0IGp1c3QgaW4gY2FzZS4gKi8KPj4+ICsgICAg QVNTRVJUKG9mZnNldCA9PSBzdHJ0YWJfc2VjLT5zZWMtPnNoX29mZnNldCk7Cj4+PiArICAgIEFT U0VSVChvZmZzZXQgPCBlbGYtPmxlbiAmJiAob2Zmc2V0ICsgc3RydGFiX3NlYy0+c2VjLT5zaF9z aXplIDw9IGVsZi0+bGVuKSk7Cj4+PiArCj4+PiArICAgIC8qIHN5bXRhYl9zZWMtPmRhdGEgd2Fz IGNvbXB1dGVkIGluIGVsZl9yZXNvbHZlX3NlY3Rpb25zLiAqLwo+Pj4gKyAgICBBU1NFUlQoKHN5 bXRhYl9zZWMtPnNlYy0+c2hfb2Zmc2V0ICsgZGF0YSkgPT0gc3ltdGFiX3NlYy0+ZGF0YSk7Cj4+ PiArCj4+PiArICAgIC8qIE5vIG5lZWQgdG8gY2hlY2sgdmFsdWVzIGFzIGVsZl9yZXNvbHZlX3Nl Y3Rpb25zIGRpZCBpdC4gKi8KPj4+ICsgICAgbnN5bSA9IHN5bXRhYl9zZWMtPnNlYy0+c2hfc2l6 ZSAvIHN5bXRhYl9zZWMtPnNlYy0+c2hfZW50c2l6ZTsKPj4gSGFzIGFueXRoaW5nIGNoZWNrZWQg c2hfZW50c2l6ZSBmb3IgYmVpbmcgMCBvciAtMSA/Cj4gTGV0IG1lIGRvdWJsZS1jaGVjay4KCkdp dCBncmVwIHNheXMgZWxmX3Jlc29sdmVfc2VjdGlvbnMoKSBoYXMKCiAgICBpZiAoICFlbGYtPnN5 bXRhYi0+c2VjLT5zaF9zaXplIHx8CiAgICAgICAgIGVsZi0+c3ltdGFiLT5zZWMtPnNoX2VudHNp emUgPCBzaXplb2YoRWxmX1N5bSkgKQogICAgewogICAgICAgIGRwcmludGsoWEVOTE9HX0RFQlVH LCBYU1BMSUNFICIlczogU3ltYm9sIHRhYmxlIGhlYWRlciBpcwpjb3JydXB0ZWQhXG4iLAogICAg ICAgICAgICAgICAgZWxmLT5uYW1lKTsKICAgICAgICByZXR1cm4gLUVJTlZBTDsKICAgIH0KCkkg d291bGQgY2hlY2sgZm9yICE9LCByYXRoZXIgdGhhbiA8CgpOb3RoaW5nIGdvb2QgY2FuIGNvbWUg b2YgaGF2aW5nIHNoX2VudHNpemUgYmVpbmcgYmlnZ2VyIHRoYW4gd2hhdCB3ZQpleHBlY3QgYW4g RWxmX1N5bSB0byBiZS4KCkFsc28gYmUgYXdhcmUgdGhhdCBFbGZfU3ltLnNoX2VudHNpemUgYW5k IEVoZHIuZV9zaGVudHNpemUgYXBwZWFyIHRvIGJlCm11bHRpcGxlIGxvY2F0aW9ucyBjb250YWlu aW5nIHRoZSBzYW1lIGluZm9ybWF0aW9uLiAgSSB3b3VsZCBhbHNvIGNyb3NzCmNoZWNrIHRoZW0u Cgp+QW5kcmV3CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9s aXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=