From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH 02/17] x86emul: fetch all insn bytes during the decode phase Date: Tue, 13 Sep 2016 19:44:04 +0100 Message-ID: <93f6907a-3bb9-d7f2-2822-298098993951@citrix.com> References: <57D17C78020000780010D127@prv-mh.provo.novell.com> <57D17EC6020000780010D14C@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bjsgp-0001m9-9I for xen-devel@lists.xenproject.org; Tue, 13 Sep 2016 18:44:15 +0000 In-Reply-To: <57D17EC6020000780010D14C@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich , xen-devel List-Id: xen-devel@lists.xenproject.org T24gMDgvMDkvMTYgMTQ6MDcsIEphbiBCZXVsaWNoIHdyb3RlOgo+IFRoaXMgd2F5IHdlIGNhbiBv ZmZlciB0byBjYWxsZXJzIHRoZSBzZXJ2aWNlIG9mIGp1c3Qgc2l6aW5nCj4gaW5zdHJ1Y3Rpb25z LCBhbmQgd2UgYWxzbyBjYW4gYmV0dGVyIGd1YXJhbnRlZSBub3QgdG8gcmFpc2UgdGhlIHdyb25n Cj4gZmF1bHQgZHVlIHRvIG5vdCBoYXZpbmcgcmVhZCBhbGwgcmVsZXZhbnQgYnl0ZXMuCj4KPiBT aWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Cj4KPiAtLS0gYS94 ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxhdGUuYwo+ICsrKyBiL3hlbi9hcmNoL3g4 Ni94ODZfZW11bGF0ZS94ODZfZW11bGF0ZS5jCj4gQEAgLTEyOSw4ICsxMjksOCBAQCBzdGF0aWMg Y29uc3Qgb3Bjb2RlX2Rlc2NfdCBvcGNvZGVfdGFibGVbCj4gICAgICBJbXBsaWNpdE9wcywgSW1w bGljaXRPcHMsIEltcGxpY2l0T3BzLCBJbXBsaWNpdE9wcywKPiAgICAgIEltcGxpY2l0T3BzfE1v diwgSW1wbGljaXRPcHN8TW92LCBJbXBsaWNpdE9wcywgSW1wbGljaXRPcHMsCj4gICAgICAvKiAw eEEwIC0gMHhBNyAqLwo+IC0gICAgQnl0ZU9wfERzdEVheHxTcmNJbXBsaWNpdHxNb3YsIERzdEVh eHxTcmNJbXBsaWNpdHxNb3YsCj4gLSAgICBCeXRlT3B8SW1wbGljaXRPcHN8TW92LCBJbXBsaWNp dE9wc3xNb3YsCj4gKyAgICBCeXRlT3B8RHN0RWF4fFNyY01lbXxNb3YsIERzdEVheHxTcmNNZW18 TW92LAo+ICsgICAgQnl0ZU9wfERzdE1lbXxTcmNFYXh8TW92LCBEc3RNZW18U3JjRWF4fE1vdiwK PiAgICAgIEJ5dGVPcHxJbXBsaWNpdE9wc3xNb3YsIEltcGxpY2l0T3BzfE1vdiwKPiAgICAgIEJ5 dGVPcHxJbXBsaWNpdE9wcywgSW1wbGljaXRPcHMsCj4gICAgICAvKiAweEE4IC0gMHhBRiAqLwo+ IEBAIC0xNjAyLDYgKzE2MDIsNDUgQEAgc3RydWN0IHg4Nl9lbXVsYXRlX3N0YXRlIHsKPiAgI2Rl ZmluZSBfcmVncyAoc3RhdGUtPnJlZ3MpCj4gIAo+ICBzdGF0aWMgaW50Cj4gK3g4Nl9kZWNvZGVf YmFzZSgKCldoYXQgZG8geW91IG1lYW4gYnkgZGVjb2RlX2Jhc2UgaGVyZT8KCj4gKyAgICBzdHJ1 Y3QgeDg2X2VtdWxhdGVfc3RhdGUgKnN0YXRlLAo+ICsgICAgc3RydWN0IHg4Nl9lbXVsYXRlX2N0 eHQgKmN0eHQsCj4gKyAgICBjb25zdCBzdHJ1Y3QgeDg2X2VtdWxhdGVfb3BzICpvcHMpCj4gK3sK PiArICAgIGludCByYyA9IFg4NkVNVUxfT0tBWTsKPiArCj4gKyAgICBzd2l0Y2ggKCBzdGF0ZS0+ b3Bjb2RlICkKPiArICAgIHsKPiArICAgIGNhc2UgMHg5YTogLyogY2FsbCAoZmFyLCBhYnNvbHV0 ZSkgKi8KPiArICAgIGNhc2UgMHhlYTogLyogam1wIChmYXIsIGFic29sdXRlKSAqLwo+ICsgICAg ICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZihtb2RlXzY0Yml0KCksIEVYQ19VRCwgLTEpOwo+ICsK PiArICAgICAgICBpbW0xID0gaW5zbl9mZXRjaF9ieXRlcyhvcF9ieXRlcyk7Cj4gKyAgICAgICAg aW1tMiA9IGluc25fZmV0Y2hfdHlwZSh1aW50MTZfdCk7Cj4gKyAgICAgICAgYnJlYWs7Cj4gKwo+ ICsgICAgY2FzZSAweGEwOiBjYXNlIDB4YTE6IC8qIG1vdiBtZW0ub2Zmcyx7JWFsLCVheCwlZWF4 LCVyYXh9ICovCj4gKyAgICBjYXNlIDB4YTI6IGNhc2UgMHhhMzogLyogbW92IHslYWwsJWF4LCVl YXgsJXJheH0sbWVtLm9mZnMgKi8KPiArICAgICAgICAvKiBTb3VyY2UgRUEgaXMgbm90IGVuY29k ZWQgdmlhIE1vZFJNLiAqLwo+ICsgICAgICAgIGVhLm1lbS5vZmYgPSBpbnNuX2ZldGNoX2J5dGVz KGFkX2J5dGVzKTsKPiArICAgICAgICBicmVhazsKPiArCj4gKyAgICBjYXNlIDB4YjggLi4uIDB4 YmY6IC8qIG1vdiBpbW17MTYsMzIsNjR9LHJ7MTYsMzIsNjR9ICovCj4gKyAgICAgICAgaWYgKCBv cF9ieXRlcyA9PSA4ICkgLyogRmV0Y2ggbW9yZSBieXRlcyB0byBvYnRhaW4gaW1tNjQuICovCj4g KyAgICAgICAgICAgIGltbTEgPSAoKHVpbnQzMl90KWltbTEgfAo+ICsgICAgICAgICAgICAgICAg ICAgICgodWludDY0X3QpaW5zbl9mZXRjaF90eXBlKHVpbnQzMl90KSA8PCAzMikpOwo+ICsgICAg ICAgIGJyZWFrOwo+ICsKPiArICAgIGNhc2UgMHhjODogLyogZW50ZXIgaW1tMTYsaW1tOCAqLwo+ ICsgICAgICAgIGltbTIgPSBpbnNuX2ZldGNoX3R5cGUodWludDhfdCk7Cj4gKyAgICAgICAgYnJl YWs7Cj4gKyAgICB9Cj4gKwo+ICsgZG9uZToKPiArICAgIHJldHVybiByYzsKPiArfQo+ICsKPiAr c3RhdGljIGludAo+ICB4ODZfZGVjb2RlKAo+ICAgICAgc3RydWN0IHg4Nl9lbXVsYXRlX3N0YXRl ICpzdGF0ZSwKPiAgICAgIHN0cnVjdCB4ODZfZW11bGF0ZV9jdHh0ICpjdHh0LAo+IEBAIC0xOTk0 LDEwICsyMDMzLDI5IEBAIHg4Nl9kZWNvZGUoCj4gICAgICBzdGF0ZS0+b3Bjb2RlID0gYjsKPiAg ICAgIHN0YXRlLT5kZXNjID0gZDsKPiAgCj4gKyAgICBzd2l0Y2ggKCBleHQgKQo+ICsgICAgewo+ ICsgICAgY2FzZSBleHRfbm9uZToKPiArICAgICAgICByYyA9IHg4Nl9kZWNvZGVfYmFzZShzdGF0 ZSwgY3R4dCwgb3BzKTsKPiArICAgICAgICBicmVhazsKPiArCj4gKyAgICBjYXNlIGV4dF8wZjoK PiArICAgIGNhc2UgZXh0XzBmMzg6Cj4gKyAgICAgICAgYnJlYWs7Cj4gKwo+ICsgICAgZGVmYXVs dDoKPiArICAgICAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKPiArICAgICAgICByZXR1cm4gWDg2 RU1VTF9VTkhBTkRMRUFCTEU7Cj4gKyAgICB9Cj4gKwo+ICAgZG9uZToKPiAgICAgIHJldHVybiBy YzsKPiAgfQo+ICAKPiArLyogTm8gaW5zbiBmZXRjaGluZyBwYXN0IHRoaXMgcG9pbnQuICovCj4g KyN1bmRlZiBpbnNuX2ZldGNoX2J5dGVzCj4gKyN1bmRlZiBpbnNuX2ZldGNoX3R5cGUKPiArCj4g IGludAo+ICB4ODZfZW11bGF0ZSgKPiAgICAgIHN0cnVjdCB4ODZfZW11bGF0ZV9jdHh0ICpjdHh0 LAo+IEBAIC0yNTYwLDYgKzI2MTgsOCBAQCB4ODZfZW11bGF0ZSgKPiAgICAgIGNhc2UgMHhjNiAu Li4gMHhjNzogLyogbW92IChzb2xlIG1lbWJlciBvZiBHcnAxMSkgKi8KPiAgICAgICAgICBnZW5l cmF0ZV9leGNlcHRpb25faWYoKG1vZHJtX3JlZyAmIDcpICE9IDAsIEVYQ19VRCwgLTEpOwo+ICAg ICAgY2FzZSAweDg4IC4uLiAweDhiOiAvKiBtb3YgKi8KPiArICAgIGNhc2UgMHhhMCAuLi4gMHhh MTogLyogbW92IG1lbS5vZmZzLHslYWwsJWF4LCVlYXgsJXJheH0gKi8KPiArICAgIGNhc2UgMHhh MiAuLi4gMHhhMzogLyogbW92IHslYWwsJWF4LCVlYXgsJXJheH0sbWVtLm9mZnMgKi8KPiAgICAg ICAgICBkc3QudmFsID0gc3JjLnZhbDsKPiAgICAgICAgICBicmVhazsKPiAgCj4gQEAgLTI2NDQs MTggKzI3MDQsMTMgQEAgeDg2X2VtdWxhdGUoCj4gIAo+ICAgICAgY2FzZSAweDlhOiAvKiBjYWxs IChmYXIsIGFic29sdXRlKSAqLyB7Cj4gICAgICAgICAgc3RydWN0IHNlZ21lbnRfcmVnaXN0ZXIg cmVnOwo+IC0gICAgICAgIHVpbnQxNl90IHNlbDsKPiAtICAgICAgICB1aW50MzJfdCBlaXA7Cj4g IAo+IC0gICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZihtb2RlXzY0Yml0KCksIEVYQ19VRCwg LTEpOwo+ICsgICAgICAgIEFTU0VSVCghbW9kZV82NGJpdCgpKTsKCkFyZSB3ZSBnb2luZyB0byBz dHJpY3RseSByZXF1aXJlIHRoYXQgbm9vbmUgZXZlciBoYW5kLWNyYWZ0cyBhCng4Nl9lbXVsYXRl X3N0YXRlIGFuZCBoYW5kcyBpdCB0byB4ODZfZW11bGF0ZSgpPwoKSSB3b3VsZCBzdWdnZXN0IGxl YXZpbmcgdGhlIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZihtb2RlXzY0Yml0KCksIEVYQ19VRCwKLTEp OyBhZnRlciB0aGUgQVNTRVJUKCkgc28gZXZlbiBpZiB3ZSBkbyBlbmQgdXAgaW4gYSB3b25reSBz dGF0ZSwgd2UKZG9uJ3QgdHJ5IHRvIGp1bXAgdGhlIGd1ZXN0IHRvIDAuCgpTaW1pbGFybHkgZm9y IGptcC4KCn5BbmRyZXcKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0 cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=