From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Vrabel Subject: Re: [PATCHv2] x86/xen: avoid m2p lookup when setting early page table entries Date: Wed, 22 Jun 2016 11:54:34 +0100 Message-ID: <576A6E6A.8030502@citrix.com> References: <1466525353-27751-1-git-send-email-david.vrabel@citrix.com> <57699624.4060500@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 1bFfns-0000Nw-RN for xen-devel@lists.xenproject.org; Wed, 22 Jun 2016 10:54:40 +0000 In-Reply-To: <57699624.4060500@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Boris Ostrovsky , David Vrabel , xen-devel@lists.xenproject.org Cc: Juergen Gross List-Id: xen-devel@lists.xenproject.org T24gMjEvMDYvMTYgMjA6MzEsIEJvcmlzIE9zdHJvdnNreSB3cm90ZToKPiBPbiAwNi8yMS8yMDE2 IDEyOjA5IFBNLCBEYXZpZCBWcmFiZWwgd3JvdGU6Cj4+IFdoZW4gcGFnZSB0YWJsZXMgZW50cmll cyBhcmUgc2V0IHVzaW5nIHhlbl9zZXRfcHRlX2luaXQoKSBkdXJpbmcgZWFybHkKPj4gYm9vdCB0 aGVyZSBpcyBubyBwYWdlIGZhdWx0IGhhbmRsZXIgdGhhdCBjb3VsZCBoYW5kbGUgYSBmYXVsdCB3 aGVuCj4+IHBlcmZvcm1pbmcgYW4gTTJQIGxvb2t1cC4KPj4KPj4gSW4gNjQgZ3Vlc3QgKHVzdWFs bHkgZG9tMCkgZWFybHlfaW9yZW1hcCgpIHdvdWxkIGZhdWx0IGluCj4+IHhlbl9zZXRfcHRlX2lu aXQoKSBiZWNhdXNlIGFuIE0yUCBsb29rdXAgZmF1bHRzIGJlY2F1c2UgdGhlIE1GTiBpcyBpbgo+ PiBNTUlPIHNwYWNlIGFuZCBub3QgbWFwcGVkIGluIHRoZSBNMlAuICBUaGlzIGxvb2t1cCBpcyBk b25lIHRvIHNlZSBpZgo+PiB0aGUgUEZOIGluIGluIHRoZSByYW5nZSB1c2VkIGZvciB0aGUgaW5p dGlhbCBwYWdlIHRhYmxlIHBhZ2VzLCBzbyB0aGF0Cj4+IHRoZSBQVEUgbWF5IGJlIHNldCBhcyBy ZWFkLW9ubHkuCj4+Cj4+IFRoZSBNMlAgbG9va3VwIGNhbiBiZSBhdm9pZGVkIGJ5IG1vdmluZyB0 aGUgY2hlY2sgKGFuZCBjbGVhciBvZiBSVykKPj4gZWFybGllciB3aGVuIHRoZSBQRk4gaXMgc3Rp bGwgYXZhaWxhYmxlLgpbLi4uXQo+PiAtLS0gYS9hcmNoL3g4Ni94ZW4vbW11LmMKPj4gKysrIGIv YXJjaC94ODYveGVuL21tdS5jCj4+IEBAIC0xNTYyLDcgKzE1NjIsNyBAQCBzdGF0aWMgcHRlX3Qg X19pbml0IG1hc2tfcndfcHRlKHB0ZV90ICpwdGVwLCBwdGVfdCBwdGUpCj4+ICAJcmV0dXJuIHB0 ZTsKPj4gIH0KPj4gICNlbHNlIC8qIENPTkZJR19YODZfNjQgKi8KPj4gLXN0YXRpYyBwdGVfdCBf X2luaXQgbWFza19yd19wdGUocHRlX3QgKnB0ZXAsIHB0ZV90IHB0ZSkKPj4gK3N0YXRpYyBwdGV2 YWxfdCBfX2luaXQgbWFza19yd19wdGUocHRldmFsX3QgcHRlKQo+PiAgewo+PiAgCXVuc2lnbmVk IGxvbmcgcGZuOwo+PiAgCj4+IEBAIC0xNTc3LDEwICsxNTc3LDEwIEBAIHN0YXRpYyBwdGVfdCBf X2luaXQgbWFza19yd19wdGUocHRlX3QgKnB0ZXAsIHB0ZV90IHB0ZSkKPj4gIAkgKiBwYWdlIHRh YmxlcyBmb3IgbWFwcGluZyB0aGUgcDJtIGxpc3QsIHRvbywgYW5kIHBhZ2UgdGFibGVzIE1VU1Qg YmUKPj4gIAkgKiBtYXBwZWQgcmVhZC1vbmx5Lgo+PiAgCSAqLwo+PiAtCXBmbiA9IHB0ZV9wZm4o cHRlKTsKPj4gKwlwZm4gPSAocHRlICYgUFRFX1BGTl9NQVNLKSA+PiBQQUdFX1NISUZUOwo+IAo+ IElzIGl0IG9idmlvdXMgdGhhdCB3ZSBhcmUgaG9sZGluZyB2YWxpZCBQRk4gYXQgdGhpcyBwb2lu dD8gSXQgd2Fzbid0Cj4gaW1tZWRpYXRlbHkgb2J2aW91cyB0byBtZSBzbyBJIHdvbmRlciB3aGV0 aGVyIGEgY29tbWVudCBzdGF0aW5nIHRoaXMKPiB3b3VsZCBiZSB1c2VmdWwgaGVyZSAoeWVzLCB5 b3UgbWVudGlvbiBpdCBpbiB0aGUgY29tbWl0IG1lc3NhZ2VzKS4KCkkgZG9uJ3QgdW5kZXJzdGFu ZCB3aGF0IHlvdSBtZWFuIGJ5IGEgInZhbGlkIFBGTiI/CgpUaGlzIGlzIG9ubHkgY2FsbGVkIGZy b20geGVuX21ha2VfcHRlX2luaXQoKSB3aGljaCBpcyBmb3IgY29udmVydGluZwpwdGV2YWxzIGNv bnRhaW5pbmcgUEZOcyB0byBNRk5zLiAgRGlkIHRoYXQgYW5zd2VyIHlvdXIgcXVlc3Rpb24/CgpX b3VsZCBpdCBiZSBjbGVhcmVyIGlmIEkganVzdCBpbmxpbmVkIHRoZSB0d28gZnVuY3Rpb25zIGxp a2Ugc286Cgo4PC0tLS0tLS0tLS0tLS0tLQp4ODYveGVuOiBhdm9pZCBtMnAgbG9va3VwIHdoZW4g c2V0dGluZyBlYXJseSBwYWdlIHRhYmxlIGVudHJpZXMKCldoZW4gcGFnZSB0YWJsZXMgZW50cmll cyBhcmUgc2V0IHVzaW5nIHhlbl9zZXRfcHRlX2luaXQoKSBkdXJpbmcgZWFybHkKYm9vdCB0aGVy ZSBpcyBubyBwYWdlIGZhdWx0IGhhbmRsZXIgdGhhdCBjb3VsZCBoYW5kbGUgYSBmYXVsdCB3aGVu CnBlcmZvcm1pbmcgYW4gTTJQIGxvb2t1cC4KCkluIDY0IGd1ZXN0ICh1c3VhbGx5IGRvbTApIGVh cmx5X2lvcmVtYXAoKSB3b3VsZCBmYXVsdCBpbgp4ZW5fc2V0X3B0ZV9pbml0KCkgYmVjYXVzZSBh biBNMlAgbG9va3VwIGZhdWx0cyBiZWNhdXNlIHRoZSBNRk4gaXMgaW4KTU1JTyBzcGFjZSBhbmQg bm90IG1hcHBlZCBpbiB0aGUgTTJQLiAgVGhpcyBsb29rdXAgaXMgZG9uZSB0byBzZWUgaWYKdGhl IFBGTiBpbiBpbiB0aGUgcmFuZ2UgdXNlZCBmb3IgdGhlIGluaXRpYWwgcGFnZSB0YWJsZSBwYWdl cywgc28gdGhhdAp0aGUgUFRFIG1heSBiZSBzZXQgYXMgcmVhZC1vbmx5LgoKVGhlIE0yUCBsb29r dXAgY2FuIGJlIGF2b2lkZWQgYnkgbW92aW5nIHRoZSBjaGVjayAoYW5kIGNsZWFyIG9mIFJXKQpl YXJsaWVyIHdoZW4gdGhlIFBGTiBpcyBzdGlsbCBhdmFpbGFibGUuCgpTaWduZWQtb2ZmLWJ5OiBE YXZpZCBWcmFiZWwgPGRhdmlkLnZyYWJlbEBjaXRyaXguY29tPgotLS0KdjM6Ci0gZm9sZCBtYXNr X3J3X3B0ZSgpL21hc2tfcndfcHRldmFsKCkgaW50byB0aGVpciBjYWxsZXJzLgoKdjI6Ci0gUmVt b3ZlIF9faW5pdCBhbm5vdGF0aW9uIGZyb20geGVuX21ha2VfcHRlX2luaXQoKSBzaW5jZQogIFBW X0NBTExFRV9TQVZFX1JFR1NfVEhVTksgYWx3YXlzIHB1dHMgdGhlIHRodW5rIGluIC50ZXh0LgoK LSBtYXNrX3J3X3B0ZSgpIC0+IG1hc2tfcndfcHRldmFsKCkgZm9yIHg4Ni02NC4KLS0tCiBhcmNo L3g4Ni94ZW4vbW11LmMgfCAyOCArKysrKysrKysrKysrKysrKysrKystLS0tLS0tCiAxIGZpbGUg Y2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9h cmNoL3g4Ni94ZW4vbW11LmMgYi9hcmNoL3g4Ni94ZW4vbW11LmMKaW5kZXggNDc4YTJkZS4uYmYw Zjc4ZiAxMDA2NDQKLS0tIGEvYXJjaC94ODYveGVuL21tdS5jCisrKyBiL2FyY2gveDg2L3hlbi9t bXUuYwpAQCAtMTU2Miw3ICsxNTYyLDcgQEAgc3RhdGljIHB0ZV90IF9faW5pdCBtYXNrX3J3X3B0 ZShwdGVfdCAqcHRlcCwgcHRlX3QKcHRlKQogCXJldHVybiBwdGU7CiB9CiAjZWxzZSAvKiBDT05G SUdfWDg2XzY0ICovCi1zdGF0aWMgcHRlX3QgX19pbml0IG1hc2tfcndfcHRlKHB0ZV90ICpwdGVw LCBwdGVfdCBwdGUpCitzdGF0aWMgcHRldmFsX3QgX19pbml0IG1hc2tfcndfcHRldmFsKHB0ZXZh bF90IHB0ZSkKIHsKIAl1bnNpZ25lZCBsb25nIHBmbjsKCkBAIC0xNTc3LDEwICsxNTc3LDEwIEBA IHN0YXRpYyBwdGVfdCBfX2luaXQgbWFza19yd19wdGUocHRlX3QgKnB0ZXAsCnB0ZV90IHB0ZSkK IAkgKiBwYWdlIHRhYmxlcyBmb3IgbWFwcGluZyB0aGUgcDJtIGxpc3QsIHRvbywgYW5kIHBhZ2Ug dGFibGVzIE1VU1QgYmUKIAkgKiBtYXBwZWQgcmVhZC1vbmx5LgogCSAqLwotCXBmbiA9IHB0ZV9w Zm4ocHRlKTsKKwlwZm4gPSAocHRlICYgUFRFX1BGTl9NQVNLKSA+PiBQQUdFX1NISUZUOwogCWlm IChwZm4gPj0geGVuX3N0YXJ0X2luZm8tPmZpcnN0X3AybV9wZm4gJiYKIAkgICAgcGZuIDwgeGVu X3N0YXJ0X2luZm8tPmZpcnN0X3AybV9wZm4gKyB4ZW5fc3RhcnRfaW5mby0+bnJfcDJtX2ZyYW1l cykKLQkJcHRlID0gX19wdGVfbWEocHRlX3ZhbF9tYShwdGUpICYgfl9QQUdFX1JXKTsKKwkJcHRl ICY9IH5fUEFHRV9SVzsKCiAJcmV0dXJuIHB0ZTsKIH0KQEAgLTE2MDAsMTMgKzE2MDAsMjYgQEAg c3RhdGljIHB0ZV90IF9faW5pdCBtYXNrX3J3X3B0ZShwdGVfdCAqcHRlcCwKcHRlX3QgcHRlKQog ICogc28gYWx3YXlzIHdyaXRlIHRoZSBQVEUgZGlyZWN0bHkgYW5kIHJlbHkgb24gWGVuIHRyYXBw aW5nIGFuZAogICogZW11bGF0aW5nIGFueSB1cGRhdGVzIGFzIG5lY2Vzc2FyeS4KICAqLworX192 aXNpYmxlIHB0ZV90IHhlbl9tYWtlX3B0ZV9pbml0KHB0ZXZhbF90IHB0ZSkKK3sKKyNpZmRlZiBD T05GSUdfWDg2XzY0CisJcHRlID0gbWFza19yd19wdGV2YWwocHRlKTsKKyNlbmRpZgorCXB0ZSA9 IHB0ZV9wZm5fdG9fbWZuKHB0ZSk7CisKKwlpZiAoKHB0ZSAmIFBURV9QRk5fTUFTSykgPj4gUEFH RV9TSElGVCA9PSBJTlZBTElEX1AyTV9FTlRSWSkKKwkJcHRlID0gMDsKKworCXJldHVybiBuYXRp dmVfbWFrZV9wdGUocHRlKTsKK30KK1BWX0NBTExFRV9TQVZFX1JFR1NfVEhVTksoeGVuX21ha2Vf cHRlX2luaXQpOworCiBzdGF0aWMgdm9pZCBfX2luaXQgeGVuX3NldF9wdGVfaW5pdChwdGVfdCAq cHRlcCwgcHRlX3QgcHRlKQogeworI2lmZGVmIENPTkZJR19YODZfMzIKIAlpZiAocHRlX21mbihw dGUpICE9IElOVkFMSURfUDJNX0VOVFJZKQogCQlwdGUgPSBtYXNrX3J3X3B0ZShwdGVwLCBwdGUp OwotCWVsc2UKLQkJcHRlID0gX19wdGVfbWEoMCk7Ci0KKyNlbmRpZgogCW5hdGl2ZV9zZXRfcHRl KHB0ZXAsIHB0ZSk7CiB9CgpAQCAtMjQwNyw2ICsyNDIwLDcgQEAgc3RhdGljIHZvaWQgX19pbml0 IHhlbl9wb3N0X2FsbG9jYXRvcl9pbml0KHZvaWQpCiAJcHZfbW11X29wcy5hbGxvY19wdWQgPSB4 ZW5fYWxsb2NfcHVkOwogCXB2X21tdV9vcHMucmVsZWFzZV9wdWQgPSB4ZW5fcmVsZWFzZV9wdWQ7 CiAjZW5kaWYKKwlwdl9tbXVfb3BzLm1ha2VfcHRlID0gUFZfQ0FMTEVFX1NBVkUoeGVuX21ha2Vf cHRlKTsKCiAjaWZkZWYgQ09ORklHX1g4Nl82NAogCXB2X21tdV9vcHMud3JpdGVfY3IzID0gJnhl bl93cml0ZV9jcjM7CkBAIC0yNDU1LDcgKzI0NjksNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHB2 X21tdV9vcHMgeGVuX21tdV9vcHMKX19pbml0Y29uc3QgPSB7CiAJLnB0ZV92YWwgPSBQVl9DQUxM RUVfU0FWRSh4ZW5fcHRlX3ZhbCksCiAJLnBnZF92YWwgPSBQVl9DQUxMRUVfU0FWRSh4ZW5fcGdk X3ZhbCksCgotCS5tYWtlX3B0ZSA9IFBWX0NBTExFRV9TQVZFKHhlbl9tYWtlX3B0ZSksCisJLm1h a2VfcHRlID0gUFZfQ0FMTEVFX1NBVkUoeGVuX21ha2VfcHRlX2luaXQpLAogCS5tYWtlX3BnZCA9 IFBWX0NBTExFRV9TQVZFKHhlbl9tYWtlX3BnZCksCgogI2lmZGVmIENPTkZJR19YODZfUEFFCi0t IAoyLjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Clhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDovL2xp c3RzLnhlbi5vcmcveGVuLWRldmVsCg==