From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH 1/2] x86/mm: Use mfn_t for new_guest_cr3() Date: Wed, 30 Aug 2017 13:19:32 +0100 Message-ID: <1504095573-14153-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper , Wei Liu , Jan Beulich List-Id: xen-devel@lists.xenproject.org Tm8gZnVuY3Rpb25hbCBjaGFuZ2UgKGFzIGNvbmZpcm1lZCBieSBkaWZmaW5nIHRoZSBhc3NlbWJs eSkuCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXgu Y29tPgotLS0KQ0M6IEphbiBCZXVsaWNoIDxKQmV1bGljaEBzdXNlLmNvbT4KQ0M6IFdlaSBMaXUg PHdlaS5saXUyQGNpdHJpeC5jb20+CgpGb3Igc29tZSByZWFzb24gYmVzdCBrbm93biB0byBHQ0Ms IHRoZXJlIGlzIG9uZSBzaW5nbGUgY2hhbmdlOgoKQEAgLTE0NTgzNSw3ICsxNDU4MzUsNyBAQAog ZmZmZjgyZDA4MDI4NjRmODogICAgICA4NSBjMCAgICAgICAgICAgICAgICAgICB0ZXN0ICAgJWVh eCwlZWF4CiBmZmZmODJkMDgwMjg2NGZhOiAgICAgIDc1IGUwICAgICAgICAgICAgICAgICAgIGpu ZSAgICBmZmZmODJkMDgwMjg2NGRjIDxuZXdfZ3Vlc3RfY3IzKzB4N2M+CiBmZmZmODJkMDgwMjg2 NGZjOiAgICAgIDRjIDhiIGFkIDA4IDBiIDAwIDAwICAgIG1vdiAgICAweGIwOCglcmJwKSwlcjEz Ci1mZmZmODJkMDgwMjg2NTAzOiAgICAgIDQ5IDM5IGRkICAgICAgICAgICAgICAgIGNtcCAgICAl cmJ4LCVyMTMKK2ZmZmY4MmQwODAyODY1MDM6ICAgICAgNGMgMzkgZWIgICAgICAgICAgICAgICAg Y21wICAgICVyMTMsJXJieAogZmZmZjgyZDA4MDI4NjUwNjogICAgICAwZiA4NCA3NCAwMSAwMCAw MCAgICAgICBqZSAgICAgZmZmZjgyZDA4MDI4NjY4MCA8bmV3X2d1ZXN0X2NyMysweDIyMD4KIGZm ZmY4MmQwODAyODY1MGM6ICAgICAgNDEgZjYgODQgMjQgMTkgMDYgMDAgICAgdGVzdGIgICQweDgs MHg2MTkoJXIxMikKIGZmZmY4MmQwODAyODY1MTM6ICAgICAgMDAgMDgKClRoaXMgaXMgZnJvbSB0 aGUgbWZuX2VxKCkgYWx0ZXJhdGlvbiwgYW5kIG11c3QgYmUgYSBzaWRlIGVmZmVjdCBmcm9tIHVz aW5nIGFuCmlubGluZSBmdW5jdGlvbi4gIFRoZSBuZXQgcmVzdWx0IGlzIHN0aWxsIGNvcnJlY3Qs IGFzIG9ubHkgdGhlIHplcm8gZmxhZyBpcwpjaGVja2VkLgotLS0KIHhlbi9hcmNoL3g4Ni9tbS5j ICAgICAgICAgICAgICB8IDM1ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCiB4 ZW4vYXJjaC94ODYvcHYvZW11bC1wcml2LW9wLmMgfCAgMiArLQogeGVuL2luY2x1ZGUvYXNtLXg4 Ni9tbS5oICAgICAgIHwgIDIgKy0KIDMgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwg MTkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21tLmMgYi94ZW4vYXJj aC94ODYvbW0uYwppbmRleCAxZjIzNDcwLi5kYzA3YjRmIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94 ODYvbW0uYworKysgYi94ZW4vYXJjaC94ODYvbW0uYwpAQCAtMjc3MiwyMyArMjc3MiwyMyBAQCBp bnQgdmNwdV9kZXN0cm95X3BhZ2V0YWJsZXMoc3RydWN0IHZjcHUgKnYpCiAgICAgcmV0dXJuIHJj ICE9IC1FSU5UUiA/IHJjIDogLUVSRVNUQVJUOwogfQogCi1pbnQgbmV3X2d1ZXN0X2NyMyh1bnNp Z25lZCBsb25nIG1mbikKK2ludCBuZXdfZ3Vlc3RfY3IzKG1mbl90IG1mbikKIHsKICAgICBzdHJ1 Y3QgdmNwdSAqY3VyciA9IGN1cnJlbnQ7CiAgICAgc3RydWN0IGRvbWFpbiAqZCA9IGN1cnItPmRv bWFpbjsKICAgICBpbnQgcmM7Ci0gICAgdW5zaWduZWQgbG9uZyBvbGRfYmFzZV9tZm47CisgICAg bWZuX3Qgb2xkX2Jhc2VfbWZuOwogCiAgICAgaWYgKCBpc19wdl8zMmJpdF9kb21haW4oZCkgKQog ICAgIHsKLSAgICAgICAgdW5zaWduZWQgbG9uZyBndF9tZm4gPSBwYWdldGFibGVfZ2V0X3Bmbihj dXJyLT5hcmNoLmd1ZXN0X3RhYmxlKTsKLSAgICAgICAgbDRfcGdlbnRyeV90ICpwbDRlID0gbWFw X2RvbWFpbl9wYWdlKF9tZm4oZ3RfbWZuKSk7CisgICAgICAgIG1mbl90IG1tZm4gPSBwYWdldGFi bGVfZ2V0X21mbihjdXJyLT5hcmNoLmd1ZXN0X3RhYmxlKTsKKyAgICAgICAgbDRfcGdlbnRyeV90 ICpwbDRlID0gbWFwX2RvbWFpbl9wYWdlKG1tZm4pOwogCiAgICAgICAgIHJjID0gbW9kX2w0X2Vu dHJ5KHBsNGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGw0ZV9mcm9tX3BmbihtZm4sCisg ICAgICAgICAgICAgICAgICAgICAgICAgIGw0ZV9mcm9tX21mbihtZm4sCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAoX1BBR0VfUFJFU0VOVCB8IF9QQUdFX1JXIHwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfUEFHRV9VU0VSIHwgX1BBR0Vf QUNDRVNTRUQpKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZ3RfbWZuLCAwLCBjdXJyKTsK KyAgICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3gobW1mbiksIDAsIGN1cnIpOwogICAgICAg ICB1bm1hcF9kb21haW5fcGFnZShwbDRlKTsKICAgICAgICAgc3dpdGNoICggcmMgKQogICAgICAg ICB7CkBAIC0yODAwLDcgKzI4MDAsNyBAQCBpbnQgbmV3X2d1ZXN0X2NyMyh1bnNpZ25lZCBsb25n IG1mbikKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGdkcHJpbnRrKFhFTkxPR19XQVJO SU5HLAogICAgICAgICAgICAgICAgICAgICAgIkVycm9yIHdoaWxlIGluc3RhbGxpbmcgbmV3IGNv bXBhdCBiYXNlcHRyICUiIFBSSV9tZm4gIlxuIiwKLSAgICAgICAgICAgICAgICAgICAgIG1mbik7 CisgICAgICAgICAgICAgICAgICAgICBtZm5feChtZm4pKTsKICAgICAgICAgICAgIHJldHVybiBy YzsKICAgICAgICAgfQogCkBAIC0yODE0LDIwICsyODE0LDIwIEBAIGludCBuZXdfZ3Vlc3RfY3Iz KHVuc2lnbmVkIGxvbmcgbWZuKQogICAgIGlmICggdW5saWtlbHkocmMpICkKICAgICAgICAgcmV0 dXJuIHJjOwogCi0gICAgb2xkX2Jhc2VfbWZuID0gcGFnZXRhYmxlX2dldF9wZm4oY3Vyci0+YXJj aC5ndWVzdF90YWJsZSk7CisgICAgb2xkX2Jhc2VfbWZuID0gcGFnZXRhYmxlX2dldF9tZm4oY3Vy ci0+YXJjaC5ndWVzdF90YWJsZSk7CiAgICAgLyoKICAgICAgKiBUaGlzIGlzIHBhcnRpY3VsYXJs eSBpbXBvcnRhbnQgd2hlbiBnZXR0aW5nIHJlc3RhcnRlZCBhZnRlciB0aGUKICAgICAgKiBwcmV2 aW91cyBhdHRlbXB0IGdvdCBwcmVlbXB0ZWQgaW4gdGhlIHB1dC1vbGQtTUZOIHBoYXNlLgogICAg ICAqLwotICAgIGlmICggb2xkX2Jhc2VfbWZuID09IG1mbiApCisgICAgaWYgKCBtZm5fZXEob2xk X2Jhc2VfbWZuLCBtZm4pICkKICAgICB7CiAgICAgICAgIHdyaXRlX3B0YmFzZShjdXJyKTsKICAg ICAgICAgcmV0dXJuIDA7CiAgICAgfQogCiAgICAgcmMgPSBwYWdpbmdfbW9kZV9yZWZjb3VudHMo ZCkKLSAgICAgICAgID8gKGdldF9wYWdlX2Zyb21fbWZuKF9tZm4obWZuKSwgZCkgPyAwIDogLUVJ TlZBTCkKLSAgICAgICAgIDogZ2V0X3BhZ2VfYW5kX3R5cGVfZnJvbV9tZm4oX21mbihtZm4pLCBQ R1Rfcm9vdF9wYWdlX3RhYmxlLCBkLCAwLCAxKTsKKyAgICAgICAgID8gKGdldF9wYWdlX2Zyb21f bWZuKG1mbiwgZCkgPyAwIDogLUVJTlZBTCkKKyAgICAgICAgIDogZ2V0X3BhZ2VfYW5kX3R5cGVf ZnJvbV9tZm4obWZuLCBQR1Rfcm9vdF9wYWdlX3RhYmxlLCBkLCAwLCAxKTsKICAgICBzd2l0Y2gg KCByYyApCiAgICAgewogICAgIGNhc2UgMDoKQEAgLTI4MzcsMjIgKzI4MzcsMjMgQEAgaW50IG5l d19ndWVzdF9jcjModW5zaWduZWQgbG9uZyBtZm4pCiAgICAgICAgIHJldHVybiAtRVJFU1RBUlQ7 CiAgICAgZGVmYXVsdDoKICAgICAgICAgZ2RwcmludGsoWEVOTE9HX1dBUk5JTkcsCi0gICAgICAg ICAgICAgICAgICJFcnJvciB3aGlsZSBpbnN0YWxsaW5nIG5ldyBiYXNlcHRyICUiIFBSSV9tZm4g IlxuIiwgbWZuKTsKKyAgICAgICAgICAgICAgICAgIkVycm9yIHdoaWxlIGluc3RhbGxpbmcgbmV3 IGJhc2VwdHIgJSIgUFJJX21mbiAiXG4iLAorICAgICAgICAgICAgICAgICBtZm5feChtZm4pKTsK ICAgICAgICAgcmV0dXJuIHJjOwogICAgIH0KIAogICAgIGludmFsaWRhdGVfc2hhZG93X2xkdChj dXJyLCAwKTsKIAogICAgIGlmICggIVZNX0FTU0lTVChkLCBtMnBfc3RyaWN0KSAmJiAhcGFnaW5n X21vZGVfcmVmY291bnRzKGQpICkKLSAgICAgICAgZmlsbF9yb19tcHQoX21mbihtZm4pKTsKLSAg ICBjdXJyLT5hcmNoLmd1ZXN0X3RhYmxlID0gcGFnZXRhYmxlX2Zyb21fcGZuKG1mbik7CisgICAg ICAgIGZpbGxfcm9fbXB0KG1mbik7CisgICAgY3Vyci0+YXJjaC5ndWVzdF90YWJsZSA9IHBhZ2V0 YWJsZV9mcm9tX21mbihtZm4pOwogICAgIHVwZGF0ZV9jcjMoY3Vycik7CiAKICAgICB3cml0ZV9w dGJhc2UoY3Vycik7CiAKLSAgICBpZiAoIGxpa2VseShvbGRfYmFzZV9tZm4gIT0gMCkgKQorICAg IGlmICggbGlrZWx5KG1mbl94KG9sZF9iYXNlX21mbikgIT0gMCkgKQogICAgIHsKLSAgICAgICAg c3RydWN0IHBhZ2VfaW5mbyAqcGFnZSA9IG1mbl90b19wYWdlKF9tZm4ob2xkX2Jhc2VfbWZuKSk7 CisgICAgICAgIHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UgPSBtZm5fdG9fcGFnZShvbGRfYmFzZV9t Zm4pOwogCiAgICAgICAgIGlmICggcGFnaW5nX21vZGVfcmVmY291bnRzKGQpICkKICAgICAgICAg ICAgIHB1dF9wYWdlKHBhZ2UpOwpAQCAtMzE4MCw3ICszMTgxLDcgQEAgbG9uZyBkb19tbXVleHRf b3AoCiAgICAgICAgICAgICBlbHNlIGlmICggdW5saWtlbHkocGFnaW5nX21vZGVfdHJhbnNsYXRl KGN1cnJkKSkgKQogICAgICAgICAgICAgICAgIHJjID0gLUVJTlZBTDsKICAgICAgICAgICAgIGVs c2UKLSAgICAgICAgICAgICAgICByYyA9IG5ld19ndWVzdF9jcjMob3AuYXJnMS5tZm4pOworICAg ICAgICAgICAgICAgIHJjID0gbmV3X2d1ZXN0X2NyMyhfbWZuKG9wLmFyZzEubWZuKSk7CiAgICAg ICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIE1NVUVYVF9ORVdfVVNFUl9CQVNFUFRSOiB7 CmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvcHYvZW11bC1wcml2LW9wLmMgYi94ZW4vYXJjaC94 ODYvcHYvZW11bC1wcml2LW9wLmMKaW5kZXggYWYxNjI0YS4uNTRhNjNjMiAxMDA2NDQKLS0tIGEv eGVuL2FyY2gveDg2L3B2L2VtdWwtcHJpdi1vcC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9wdi9lbXVs LXByaXYtb3AuYwpAQCAtNzc0LDcgKzc3NCw3IEBAIHN0YXRpYyBpbnQgcHJpdl9vcF93cml0ZV9j cih1bnNpZ25lZCBpbnQgcmVnLCB1bnNpZ25lZCBsb25nIHZhbCwKICAgICAgICAgcGFnZSA9IGdl dF9wYWdlX2Zyb21fZ2ZuKGN1cnJkLCBnZm4sIE5VTEwsIFAyTV9BTExPQyk7CiAgICAgICAgIGlm ICggIXBhZ2UgKQogICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIHJjID0gbmV3X2d1ZXN0X2Ny MyhtZm5feChwYWdlX3RvX21mbihwYWdlKSkpOworICAgICAgICByYyA9IG5ld19ndWVzdF9jcjMo cGFnZV90b19tZm4ocGFnZSkpOwogICAgICAgICBwdXRfcGFnZShwYWdlKTsKIAogICAgICAgICBz d2l0Y2ggKCByYyApCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L21tLmggYi94ZW4v aW5jbHVkZS9hc20teDg2L21tLmgKaW5kZXggZWM3Y2UzYy4uNGMwM2EzMyAxMDA2NDQKLS0tIGEv eGVuL2luY2x1ZGUvYXNtLXg4Ni9tbS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaApA QCAtNTM5LDcgKzUzOSw3IEBAIHZvaWQgYXVkaXRfZG9tYWlucyh2b2lkKTsKIAogI2VuZGlmCiAK LWludCBuZXdfZ3Vlc3RfY3IzKHVuc2lnbmVkIGxvbmcgcGZuKTsKK2ludCBuZXdfZ3Vlc3RfY3Iz KG1mbl90IG1mbik7CiB2b2lkIG1ha2VfY3IzKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25n IG1mbik7CiB2b2lkIHVwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYpOwogaW50IHZjcHVfZGVzdHJv eV9wYWdldGFibGVzKHN0cnVjdCB2Y3B1ICopOwotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhl bi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK