From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH v3 10/16] x86/mm: put nested p2m code under CONFIG_HVM Date: Tue, 4 Sep 2018 17:15:27 +0100 Message-ID: <20180904161533.11575-11-wei.liu2@citrix.com> References: <20180904161533.11575-1-wei.liu2@citrix.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 1fxECL-0005IZ-JC for xen-devel@lists.xenproject.org; Tue, 04 Sep 2018 16:29:01 +0000 In-Reply-To: <20180904161533.11575-1-wei.liu2@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: George Dunlap , Andrew Cooper , Wei Liu , Jan Beulich List-Id: xen-devel@lists.xenproject.org VGhlc2UgZnVuY3Rpb25zIGFyZSBvbmx5IHVzZWZ1bCBmb3IgbmVzdGVkIGh2bSwgd2hpY2ggaXNu J3QgZW5hYmxlZAp3aGVuIENPTkZJR19IVk0gaXMgZmFsc2UuCgpFbmNsb3NlIHJlbGV2YW50IGNv ZGUgYW5kIGZpZWxkcyBpbiBDT05GSUdfSFZNLiBHdWFyZCBucDJtX3NjaGVkdWxlCndpdGggbmVz dGVkaHZtX2VuYWJsZWQuCgpTaWduZWQtb2ZmLWJ5OiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXgu Y29tPgotLS0KIHhlbi9hcmNoL3g4Ni9kb21haW4uYyAgICAgICAgfCAgNiArKysrLS0KIHhlbi9h cmNoL3g4Ni9tbS9wMm0uYyAgICAgICAgfCAxOCArKysrKysrKysrKysrKy0tLS0KIHhlbi9pbmNs dWRlL2FzbS14ODYvZG9tYWluLmggfCAgMiArKwogeGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaCAg ICB8ICAyICsrCiA0IGZpbGVzIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2RvbWFpbi5jIGIveGVuL2FyY2gveDg2L2Rv bWFpbi5jCmluZGV4IDMxM2ViYjMyMjEuLjdjOTQ1YTI0MjggMTAwNjQ0Ci0tLSBhL3hlbi9hcmNo L3g4Ni9kb21haW4uYworKysgYi94ZW4vYXJjaC94ODYvZG9tYWluLmMKQEAgLTE2OTEsNyArMTY5 MSw4IEBAIHZvaWQgY29udGV4dF9zd2l0Y2goc3RydWN0IHZjcHUgKnByZXYsIHN0cnVjdCB2Y3B1 ICpuZXh0KQogICAgIHsKICAgICAgICAgX3VwZGF0ZV9ydW5zdGF0ZV9hcmVhKHByZXYpOwogICAg ICAgICB2cG11X3N3aXRjaF9mcm9tKHByZXYpOwotICAgICAgICBucDJtX3NjaGVkdWxlKE5QMk1f U0NIRURMRV9PVVQpOworICAgICAgICBpZiAoIG5lc3RlZGh2bV9lbmFibGVkKHByZXZkKSApCisg ICAgICAgICAgICBucDJtX3NjaGVkdWxlKE5QMk1fU0NIRURMRV9PVVQpOwogICAgIH0KIAogICAg IGlmICggaXNfaHZtX2RvbWFpbihwcmV2ZCkgJiYgIWxpc3RfZW1wdHkoJnByZXYtPmFyY2guaHZt LnRtX2xpc3QpICkKQEAgLTE3NTgsNyArMTc1OSw4IEBAIHZvaWQgY29udGV4dF9zd2l0Y2goc3Ry dWN0IHZjcHUgKnByZXYsIHN0cnVjdCB2Y3B1ICpuZXh0KQogCiAgICAgICAgIC8qIE11c3QgYmUg ZG9uZSB3aXRoIGludGVycnVwdHMgZW5hYmxlZCAqLwogICAgICAgICB2cG11X3N3aXRjaF90byhu ZXh0KTsKLSAgICAgICAgbnAybV9zY2hlZHVsZShOUDJNX1NDSEVETEVfSU4pOworICAgICAgICBp ZiAoIG5lc3RlZGh2bV9lbmFibGVkKG5leHRkKSApCisgICAgICAgICAgICBucDJtX3NjaGVkdWxl KE5QMk1fU0NIRURMRV9JTik7CiAgICAgfQogCiAgICAgLyogRW5zdXJlIHRoYXQgdGhlIHZjcHUg aGFzIGFuIHVwLXRvLWRhdGUgdGltZSBiYXNlLiAqLwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2 L21tL3AybS5jIGIveGVuL2FyY2gveDg2L21tL3AybS5jCmluZGV4IDc5ZDBlNzIwM2EuLjdhMTJj ZDM3ZTggMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYworKysgYi94ZW4vYXJjaC94 ODYvbW0vcDJtLmMKQEAgLTU4LDIyICs1OCwyMiBAQCBzdGF0aWMgaW50IHAybV9pbml0aWFsaXNl KHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBwMm1fZG9tYWluICpwMm0pCiAjZW5kaWYKIAogICAg IG1tX3J3bG9ja19pbml0KCZwMm0tPmxvY2spOwotICAgIElOSVRfTElTVF9IRUFEKCZwMm0tPm5w Mm1fbGlzdCk7CiAgICAgSU5JVF9QQUdFX0xJU1RfSEVBRCgmcDJtLT5wYWdlcyk7CiAKICNpZmRl ZiBDT05GSUdfSFZNCiAgICAgbW1fbG9ja19pbml0KCZwMm0tPnBvZC5sb2NrKTsKICAgICBJTklU X1BBR0VfTElTVF9IRUFEKCZwMm0tPnBvZC5zdXBlcik7CiAgICAgSU5JVF9QQUdFX0xJU1RfSEVB RCgmcDJtLT5wb2Quc2luZ2xlKTsKKyAgICBJTklUX0xJU1RfSEVBRCgmcDJtLT5ucDJtX2xpc3Qp OworCisgICAgcDJtLT5ucDJtX2Jhc2UgPSBQMk1fQkFTRV9FQUREUjsKKyAgICBwMm0tPm5wMm1f Z2VuZXJhdGlvbiA9IDA7CiAjZW5kaWYKIAogICAgIHAybS0+ZG9tYWluID0gZDsKICAgICBwMm0t PmRlZmF1bHRfYWNjZXNzID0gcDJtX2FjY2Vzc19yd3g7CiAgICAgcDJtLT5wMm1fY2xhc3MgPSBw Mm1faG9zdDsKIAotICAgIHAybS0+bnAybV9iYXNlID0gUDJNX0JBU0VfRUFERFI7Ci0gICAgcDJt LT5ucDJtX2dlbmVyYXRpb24gPSAwOwotCiAjaWZkZWYgQ09ORklHX0hWTQogICAgIGZvciAoIGkg PSAwOyBpIDwgQVJSQVlfU0laRShwMm0tPnBvZC5tcnAubGlzdCk7ICsraSApCiAgICAgICAgIHAy bS0+cG9kLm1ycC5saXN0W2ldID0gZ2ZuX3goSU5WQUxJRF9HRk4pOwpAQCAtMTQ5LDYgKzE0OSw3 IEBAIHN0YXRpYyB2b2lkIHAybV90ZWFyZG93bl9ob3N0cDJtKHN0cnVjdCBkb21haW4gKmQpCiAg ICAgfQogfQogCisjaWZkZWYgQ09ORklHX0hWTQogc3RhdGljIHZvaWQgcDJtX3RlYXJkb3duX25l c3RlZHAybShzdHJ1Y3QgZG9tYWluICpkKQogewogICAgIHVuc2lnbmVkIGludCBpOwpAQCAtMTg2 LDYgKzE4Nyw3IEBAIHN0YXRpYyBpbnQgcDJtX2luaXRfbmVzdGVkcDJtKHN0cnVjdCBkb21haW4g KmQpCiAKICAgICByZXR1cm4gMDsKIH0KKyNlbmRpZgogCiBzdGF0aWMgdm9pZCBwMm1fdGVhcmRv d25fYWx0cDJtKHN0cnVjdCBkb21haW4gKmQpCiB7CkBAIC0yMzMsNiArMjM1LDcgQEAgaW50IHAy bV9pbml0KHN0cnVjdCBkb21haW4gKmQpCiAgICAgaWYgKCByYyApCiAgICAgICAgIHJldHVybiBy YzsKIAorI2lmZGVmIENPTkZJR19IVk0KICAgICAvKiBNdXN0IGluaXRpYWxpc2UgbmVzdGVkcDJt IHVuY29uZGl0aW9uYWxseQogICAgICAqIHNpbmNlIG5lc3RlZGh2bV9lbmFibGVkKGQpIHJldHVy bnMgZmFsc2UgaGVyZS4KICAgICAgKiAocDJtX2luaXQgcnVucyB0b28gZWFybHkgZm9yIEhWTV9Q QVJBTV8qIG9wdGlvbnMpICovCkBAIC0yNDIsMTIgKzI0NSwxNSBAQCBpbnQgcDJtX2luaXQoc3Ry dWN0IGRvbWFpbiAqZCkKICAgICAgICAgcDJtX3RlYXJkb3duX2hvc3RwMm0oZCk7CiAgICAgICAg IHJldHVybiByYzsKICAgICB9CisjZW5kaWYKIAogICAgIHJjID0gcDJtX2luaXRfYWx0cDJtKGQp OwogICAgIGlmICggcmMgKQogICAgIHsKICAgICAgICAgcDJtX3RlYXJkb3duX2hvc3RwMm0oZCk7 CisjaWZkZWYgQ09ORklHX0hWTQogICAgICAgICBwMm1fdGVhcmRvd25fbmVzdGVkcDJtKGQpOwor I2VuZGlmCiAgICAgfQogCiAgICAgcmV0dXJuIHJjOwpAQCAtNjk5LDcgKzcwNSw5IEBAIHZvaWQg cDJtX2ZpbmFsX3RlYXJkb3duKHN0cnVjdCBkb21haW4gKmQpCiAgICAgICogd2UgaW5pdGlhbGlz ZSB0aGVtIHVuY29uZGl0aW9uYWxseS4KICAgICAgKi8KICAgICBwMm1fdGVhcmRvd25fYWx0cDJt KGQpOworI2lmZGVmIENPTkZJR19IVk0KICAgICBwMm1fdGVhcmRvd25fbmVzdGVkcDJtKGQpOwor I2VuZGlmCiAKICAgICAvKiBJdGVyYXRlIG92ZXIgYWxsIHAybSB0YWJsZXMgcGVyIGRvbWFpbiAq LwogICAgIHAybV90ZWFyZG93bl9ob3N0cDJtKGQpOwpAQCAtMTcyNSw2ICsxNzMzLDcgQEAgdm9p ZCBwMm1fYWx0cDJtX2NoZWNrKHN0cnVjdCB2Y3B1ICp2LCB1aW50MTZfdCBpZHgpCiAgICAgICAg IHAybV9zd2l0Y2hfdmNwdV9hbHRwMm1fYnlfaWQodiwgaWR4KTsKIH0KIAorI2lmZGVmIENPTkZJ R19IVk0KIHN0YXRpYyBzdHJ1Y3QgcDJtX2RvbWFpbiAqCiBwMm1fZ2V0bHJ1X25lc3RlZHAybShz dHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtKQogewpAQCAtMTk4Miw2ICsx OTkxLDcgQEAgdm9pZCBucDJtX3NjaGVkdWxlKGludCBkaXIpCiAgICAgICAgIHAybV91bmxvY2so cDJtKTsKICAgICB9CiB9CisjZW5kaWYKIAogdW5zaWduZWQgbG9uZyBwYWdpbmdfZ3ZhX3RvX2dm bihzdHJ1Y3QgdmNwdSAqdiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu ZWQgbG9uZyB2YSwKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmggYi94 ZW4vaW5jbHVkZS9hc20teDg2L2RvbWFpbi5oCmluZGV4IDRkYTQzNTNkZTcuLmI0NmNmYjBjZTQg MTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmgKKysrIGIveGVuL2luY2x1 ZGUvYXNtLXg4Ni9kb21haW4uaApAQCAtMzMzLDkgKzMzMywxMSBAQCBzdHJ1Y3QgYXJjaF9kb21h aW4KICAgICAgICAgdm9pZCAoKnRhaWwpKHN0cnVjdCB2Y3B1ICopOwogICAgIH0gKmN0eHRfc3dp dGNoOwogCisjaWZkZWYgQ09ORklHX0hWTQogICAgIC8qIG5lc3RlZGh2bTogdHJhbnNsYXRlIGwy IGd1ZXN0IHBoeXNpY2FsIHRvIGhvc3QgcGh5c2ljYWwgKi8KICAgICBzdHJ1Y3QgcDJtX2RvbWFp biAqbmVzdGVkX3AybVtNQVhfTkVTVEVEUDJNXTsKICAgICBtbV9sb2NrX3QgbmVzdGVkX3AybV9s b2NrOworI2VuZGlmCiAKICAgICAvKiBhbHRwMm06IGFsbG93IG11bHRpcGxlIGNvcGllcyBvZiBo b3N0IHAybSAqLwogICAgIGJvb2xfdCBhbHRwMm1fYWN0aXZlOwpkaWZmIC0tZ2l0IGEveGVuL2lu Y2x1ZGUvYXNtLXg4Ni9wMm0uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKaW5kZXggMzc4 NTU5OGY1NC4uMjBjZjNmMWEyNSAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0u aAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oCkBAIC0yMDQsNiArMjA0LDcgQEAgc3Ry dWN0IHAybV9kb21haW4gewogCiAgICAgcDJtX2NsYXNzX3QgICAgICAgcDJtX2NsYXNzOyAvKiBo b3N0L25lc3RlZC9hbHRlcm5hdGUgKi8KIAorI2lmZGVmIENPTkZJR19IVk0KICAgICAvKiBOZXN0 ZWQgcDJtcyBvbmx5OiBuZXN0ZWQgcDJtIGJhc2UgdmFsdWUgdGhhdCB0aGlzIHAybSBzaGFkb3dz LgogICAgICAqIFRoaXMgY2FuIGJlIGNsZWFyZWQgdG8gUDJNX0JBU0VfRUFERFIgdW5kZXIgdGhl IHBlci1wMm0gbG9jayBidXQKICAgICAgKiBuZWVkcyBib3RoIHRoZSBwZXItcDJtIGxvY2sgYW5k IHRoZSBwZXItZG9tYWluIG5lc3RlZHAybSBsb2NrCkBAIC0yMTYsNiArMjE3LDcgQEAgc3RydWN0 IHAybV9kb21haW4gewogICAgICAqIFRoZSBob3N0IHAybSBoYXNvbGRzIHRoZSBoZWFkIG9mIHRo ZSBsaXN0IGFuZCB0aGUgbnAybXMgYXJlIAogICAgICAqIHRocmVhZGVkIG9uIGluIExSVSBvcmRl ci4gKi8KICAgICBzdHJ1Y3QgbGlzdF9oZWFkICAgbnAybV9saXN0OworI2VuZGlmCiAKICAgICAv KiBIb3N0IHAybTogTG9nLWRpcnR5IHJhbmdlcyByZWdpc3RlcmVkIGZvciB0aGUgZG9tYWluLiAq LwogICAgIHN0cnVjdCByYW5nZXNldCAgICpsb2dkaXJ0eV9yYW5nZXM7Ci0tIAoyLjExLjAKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwg bWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs