From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH v2 4/6] xen/x86: disable global pages for domains with XPTI active Date: Fri, 2 Mar 2018 09:14:01 +0100 Message-ID: <20180302081403.16953-5-jgross@suse.com> References: <20180302081403.16953-1-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1erfpX-0004HV-1T for xen-devel@lists.xenproject.org; Fri, 02 Mar 2018 08:14:15 +0000 In-Reply-To: <20180302081403.16953-1-jgross@suse.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: Juergen Gross , andrew.cooper3@citrix.com, wei.liu2@citrix.com, jbeulich@suse.com, dfaggioli@suse.com List-Id: xen-devel@lists.xenproject.org SW5zdGVhZCBvZiBmbHVzaGluZyB0aGUgVExCIGZyb20gZ2xvYmFsIHBhZ2VzIHdoZW4gc3dpdGNo aW5nIGFkZHJlc3MKc3BhY2VzIHdpdGggWFBUSSBiZWluZyBhY3RpdmUganVzdCBkaXNhYmxlIGds b2JhbCBwYWdlcyB2aWEgJWNyNApjb21wbGV0ZWx5IHdoZW4gYSBkb21haW4gc3ViamVjdCB0byBY UFRJIGlzIGFjdGl2ZS4gVGhpcyBhdm9pZHMgdGhlCm5lZWQgZm9yIGV4dHJhIFRMQiBmbHVzaGVz IGFzIGxvYWRpbmcgJWNyMyB3aWxsIHJlbW92ZSBhbGwgVExCCmVudHJpZXMuCgpTaWduZWQtb2Zm LWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+Ci0tLQogeGVuL2FyY2gveDg2L2Nw dS9tdHJyL2dlbmVyaWMuYyB8IDMyICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCiB4 ZW4vYXJjaC94ODYvZmx1c2h0bGIuYyAgICAgICAgIHwgMzkgKysrKysrKysrKysrKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tCiB4ZW4vYXJjaC94ODYveDg2XzY0L2VudHJ5LlMgICAgIHwgMTAg LS0tLS0tLS0tLQogeGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaCAgICB8ICAzICsrLQogNCBm aWxlcyBjaGFuZ2VkLCA0OCBpbnNlcnRpb25zKCspLCAzNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS94ZW4vYXJjaC94ODYvY3B1L210cnIvZ2VuZXJpYy5jIGIveGVuL2FyY2gveDg2L2NwdS9t dHJyL2dlbmVyaWMuYwppbmRleCBlOWMwZTVlMDU5Li5kNzA1MTM4MTAwIDEwMDY0NAotLS0gYS94 ZW4vYXJjaC94ODYvY3B1L210cnIvZ2VuZXJpYy5jCisrKyBiL3hlbi9hcmNoL3g4Ni9jcHUvbXRy ci9nZW5lcmljLmMKQEAgLTQwMCw4ICs0MDAsMTAgQEAgc3RhdGljIERFRklORV9TUElOTE9DSyhz ZXRfYXRvbWljaXR5X2xvY2spOwogICogaGFzIGJlZW4gY2FsbGVkLgogICovCiAKLXN0YXRpYyB2 b2lkIHByZXBhcmVfc2V0KHZvaWQpCitzdGF0aWMgYm9vbCBwcmVwYXJlX3NldCh2b2lkKQogewor CXVuc2lnbmVkIGxvbmcgY3I0OworCiAJLyogIE5vdGUgdGhhdCB0aGlzIGlzIG5vdCBpZGVhbCwg c2luY2UgdGhlIGNhY2hlIGlzIG9ubHkgZmx1c2hlZC9kaXNhYmxlZAogCSAgIGZvciB0aGlzIENQ VSB3aGlsZSB0aGUgTVRSUnMgYXJlIGNoYW5nZWQsIGJ1dCBjaGFuZ2luZyB0aGlzIHJlcXVpcmVz CiAJICAgbW9yZSBpbnZhc2l2ZSBjaGFuZ2VzIHRvIHRoZSB3YXkgdGhlIGtlcm5lbCBib290cyAg Ki8KQEAgLTQxMiwxOCArNDE0LDIyIEBAIHN0YXRpYyB2b2lkIHByZXBhcmVfc2V0KHZvaWQpCiAJ d3JpdGVfY3IwKHJlYWRfY3IwKCkgfCBYODZfQ1IwX0NEKTsKIAl3YmludmQoKTsKIAotCS8qICBU TEIgZmx1c2hpbmcgaGVyZSByZWxpZXMgb24gWGVuIGFsd2F5cyB1c2luZyBDUjQuUEdFLiAqLwot CUJVSUxEX0JVR19PTighKFhFTl9NSU5JTUFMX0NSNCAmIFg4Nl9DUjRfUEdFKSk7Ci0Jd3JpdGVf Y3I0KHJlYWRfY3I0KCkgJiB+WDg2X0NSNF9QR0UpOworCWNyNCA9IHJlYWRfY3I0KCk7CisJaWYg KGNyNCAmIFg4Nl9DUjRfUEdFKQorCQl3cml0ZV9jcjQoY3I0ICYgflg4Nl9DUjRfUEdFKTsKKwll bHNlCisJCWFzbSB2b2xhdGlsZSggIm1vdiAlMCwgJSVjcjMiIDogOiAiciIgKHJlYWRfY3IzKCkp IDogIm1lbW9yeSIgKTsKIAogCS8qICBTYXZlIE1UUlIgc3RhdGUgKi8KIAlyZG1zcmwoTVNSX01U UlJkZWZUeXBlLCBkZWZ0eXBlKTsKIAogCS8qICBEaXNhYmxlIE1UUlJzLCBhbmQgc2V0IHRoZSBk ZWZhdWx0IHR5cGUgdG8gdW5jYWNoZWQgICovCiAJbXRycl93cm1zcihNU1JfTVRSUmRlZlR5cGUs IGRlZnR5cGUgJiB+MHhjZmYpOworCisJcmV0dXJuICEhKGNyNCAmIFg4Nl9DUjRfUEdFKTsKIH0K IAotc3RhdGljIHZvaWQgcG9zdF9zZXQodm9pZCkKK3N0YXRpYyB2b2lkIHBvc3Rfc2V0KGJvb2wg cGdlKQogewogCS8qIEludGVsIChQNikgc3RhbmRhcmQgTVRSUnMgKi8KIAltdHJyX3dybXNyKE1T Ul9NVFJSZGVmVHlwZSwgZGVmdHlwZSk7CkBAIC00MzIsNyArNDM4LDEwIEBAIHN0YXRpYyB2b2lk IHBvc3Rfc2V0KHZvaWQpCiAJd3JpdGVfY3IwKHJlYWRfY3IwKCkgJiB+WDg2X0NSMF9DRCk7CiAK IAkvKiAgUmVlbmFibGUgQ1I0LlBHRSAoYWxzbyBmbHVzaGVzIHRoZSBUTEIpICovCi0Jd3JpdGVf Y3I0KHJlYWRfY3I0KCkgfCBYODZfQ1I0X1BHRSk7CisJaWYgKHBnZSkKKwkJd3JpdGVfY3I0KHJl YWRfY3I0KCkgfCBYODZfQ1I0X1BHRSk7CisJZWxzZQorCQlhc20gdm9sYXRpbGUoICJtb3YgJTAs ICUlY3IzIiA6IDogInIiIChyZWFkX2NyMygpKSA6ICJtZW1vcnkiICk7CiAKIAlzcGluX3VubG9j aygmc2V0X2F0b21pY2l0eV9sb2NrKTsKIH0KQEAgLTQ0MSwxNCArNDUwLDE1IEBAIHN0YXRpYyB2 b2lkIGdlbmVyaWNfc2V0X2FsbCh2b2lkKQogewogCXVuc2lnbmVkIGxvbmcgbWFzaywgY291bnQ7 CiAJdW5zaWduZWQgbG9uZyBmbGFnczsKKwlib29sIHBnZTsKIAogCWxvY2FsX2lycV9zYXZlKGZs YWdzKTsKLQlwcmVwYXJlX3NldCgpOworCXBnZSA9IHByZXBhcmVfc2V0KCk7CiAKIAkvKiBBY3R1 YWxseSBzZXQgdGhlIHN0YXRlICovCiAJbWFzayA9IHNldF9tdHJyX3N0YXRlKCk7CiAKLQlwb3N0 X3NldCgpOworCXBvc3Rfc2V0KHBnZSk7CiAJbG9jYWxfaXJxX3Jlc3RvcmUoZmxhZ3MpOwogCiAJ LyogIFVzZSB0aGUgYXRvbWljIGJpdG9wcyB0byB1cGRhdGUgdGhlIGdsb2JhbCBtYXNrICAqLwpA QCAtNDU3LDcgKzQ2Nyw2IEBAIHN0YXRpYyB2b2lkIGdlbmVyaWNfc2V0X2FsbCh2b2lkKQogCQkJ c2V0X2JpdChjb3VudCwgJnNtcF9jaGFuZ2VzX21hc2spOwogCQltYXNrID4+PSAxOwogCX0KLQkK IH0KIAogc3RhdGljIHZvaWQgZ2VuZXJpY19zZXRfbXRycih1bnNpZ25lZCBpbnQgcmVnLCB1bnNp Z25lZCBsb25nIGJhc2UsCkBAIC00NzQsMTEgKzQ4MywxMiBAQCBzdGF0aWMgdm9pZCBnZW5lcmlj X3NldF9tdHJyKHVuc2lnbmVkIGludCByZWcsIHVuc2lnbmVkIGxvbmcgYmFzZSwKIHsKIAl1bnNp Z25lZCBsb25nIGZsYWdzOwogCXN0cnVjdCBtdHJyX3Zhcl9yYW5nZSAqdnI7CisJYm9vbCBwZ2U7 CiAKIAl2ciA9ICZtdHJyX3N0YXRlLnZhcl9yYW5nZXNbcmVnXTsKIAogCWxvY2FsX2lycV9zYXZl KGZsYWdzKTsKLQlwcmVwYXJlX3NldCgpOworCXBnZSA9IHByZXBhcmVfc2V0KCk7CiAKIAlpZiAo c2l6ZSA9PSAwKSB7CiAJCS8qIFRoZSBpbnZhbGlkIGJpdCBpcyBrZXB0IGluIHRoZSBtYXNrLCBz byB3ZSBzaW1wbHkgY2xlYXIgdGhlCkBAIC00OTksNyArNTA5LDcgQEAgc3RhdGljIHZvaWQgZ2Vu ZXJpY19zZXRfbXRycih1bnNpZ25lZCBpbnQgcmVnLCB1bnNpZ25lZCBsb25nIGJhc2UsCiAJCW10 cnJfd3Jtc3IoTVNSX0lBMzJfTVRSUl9QSFlTTUFTSyhyZWcpLCB2ci0+bWFzayk7CiAJfQogCi0J cG9zdF9zZXQoKTsKKwlwb3N0X3NldChwZ2UpOwogCWxvY2FsX2lycV9yZXN0b3JlKGZsYWdzKTsK IH0KIApkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2ZsdXNodGxiLmMgYi94ZW4vYXJjaC94ODYv Zmx1c2h0bGIuYwppbmRleCBlNGVhNGYzMjk3Li4xODZkOTA5OWY2IDEwMDY0NAotLS0gYS94ZW4v YXJjaC94ODYvZmx1c2h0bGIuYworKysgYi94ZW4vYXJjaC94ODYvZmx1c2h0bGIuYwpAQCAtNzIs MjAgKzcyLDM5IEBAIHN0YXRpYyB2b2lkIHBvc3RfZmx1c2godTMyIHQpCiAgICAgdGhpc19jcHUo dGxiZmx1c2hfdGltZSkgPSB0OwogfQogCitzdGF0aWMgdm9pZCBkb19mbHVzaF90bGIodW5zaWdu ZWQgbG9uZyBjcjMpCit7CisgICAgdW5zaWduZWQgbG9uZyBjcjQ7CisKKyAgICBjcjQgPSByZWFk X2NyNCgpOworICAgIGlmICggY3I0ICYgWDg2X0NSNF9QR0UgKQorICAgIHsKKyAgICAgICAgd3Jp dGVfY3I0KGNyNCAmIH5YODZfQ1I0X1BHRSk7CisgICAgICAgIGlmICggY3IzICkKKyAgICAgICAg ICAgIGFzbSB2b2xhdGlsZSAoICJtb3YgJTAsICUlY3IzIiA6IDogInIiIChjcjMpIDogIm1lbW9y eSIgKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgYmFycmllcigpOworICAgICAgICB3cml0 ZV9jcjQoY3I0KTsKKyAgICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgaWYgKCAhY3IzICkK KyAgICAgICAgICAgIGNyMyA9IHJlYWRfY3IzKCk7CisgICAgICAgIGFzbSB2b2xhdGlsZSAoICJt b3YgJTAsICUlY3IzIiA6IDogInIiIChjcjMpIDogIm1lbW9yeSIgKTsKKyAgICB9Cit9CisKIHZv aWQgd3JpdGVfY3IzKHVuc2lnbmVkIGxvbmcgY3IzKQogewotICAgIHVuc2lnbmVkIGxvbmcgZmxh Z3MsIGNyNDsKKyAgICB1bnNpZ25lZCBsb25nIGZsYWdzOwogICAgIHUzMiB0OwogCiAgICAgLyog VGhpcyBub24tcmVlbnRyYW50IGZ1bmN0aW9uIGlzIHNvbWV0aW1lcyBjYWxsZWQgaW4gaW50ZXJy dXB0IGNvbnRleHQuICovCiAgICAgbG9jYWxfaXJxX3NhdmUoZmxhZ3MpOwogCiAgICAgdCA9IHBy ZV9mbHVzaCgpOwotICAgIGNyNCA9IHJlYWRfY3I0KCk7CiAKLSAgICB3cml0ZV9jcjQoY3I0ICYg flg4Nl9DUjRfUEdFKTsKLSAgICBhc20gdm9sYXRpbGUgKCAibW92ICUwLCAlJWNyMyIgOiA6ICJy IiAoY3IzKSA6ICJtZW1vcnkiICk7Ci0gICAgd3JpdGVfY3I0KGNyNCk7CisgICAgZG9fZmx1c2hf dGxiKGNyMyk7CiAKICAgICBwb3N0X2ZsdXNoKHQpOwogCkBAIC0xMjMsMjIgKzE0MiwxNCBAQCB1 bnNpZ25lZCBpbnQgZmx1c2hfYXJlYV9sb2NhbChjb25zdCB2b2lkICp2YSwgdW5zaWduZWQgaW50 IGZsYWdzKQogICAgICAgICAgICAgdTMyIHQgPSBwcmVfZmx1c2goKTsKIAogICAgICAgICAgICAg aWYgKCAhY3B1X2hhc19pbnZwY2lkICkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICB1 bnNpZ25lZCBsb25nIGNyNCA9IHJlYWRfY3I0KCk7Ci0KLSAgICAgICAgICAgICAgICB3cml0ZV9j cjQoY3I0ICYgflg4Nl9DUjRfUEdFKTsKLSAgICAgICAgICAgICAgICBiYXJyaWVyKCk7Ci0gICAg ICAgICAgICAgICAgd3JpdGVfY3I0KGNyNCk7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICAg ICAgZG9fZmx1c2hfdGxiKDApOwogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgewogICAg ICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAgICAgICogVXNpbmcgaW52cGNpZCB0byBmbHVz aCBhbGwgbWFwcGluZ3Mgd29ya3MKICAgICAgICAgICAgICAgICAgKiByZWdhcmRsZXNzIG9mIHdo ZXRoZXIgUENJRCBpcyBlbmFibGVkIG9yIG5vdC4KICAgICAgICAgICAgICAgICAgKiBJdCBpcyBm YXN0ZXIgdGhhbiByZWFkLW1vZGlmeS13cml0ZSBDUjQuCiAgICAgICAgICAgICAgICAgICovCiAg ICAgICAgICAgICAgICAgaW52cGNpZF9mbHVzaF9hbGwoKTsKLSAgICAgICAgICAgIH0KIAogICAg ICAgICAgICAgcG9zdF9mbHVzaCh0KTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gv eDg2L3g4Nl82NC9lbnRyeS5TIGIveGVuL2FyY2gveDg2L3g4Nl82NC9lbnRyeS5TCmluZGV4IGNk Y2RjMmM0MGEuLmE4ZDM4ZTdlYjIgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni94ODZfNjQvZW50 cnkuUworKysgYi94ZW4vYXJjaC94ODYveDg2XzY0L2VudHJ5LlMKQEAgLTczLDEzICs3Myw4IEBA IHJlc3RvcmVfYWxsX2d1ZXN0OgogICAgICAgICAgICAgICAgIFJPT1RfUEFHRVRBQkxFX0xBU1Rf WEVOX1NMT1QgLSAxKSAqIDgsICVyZGkKICAgICAgICAgcmVwIG1vdnNxCiAuTHJhZ19jb3B5X2Rv bmU6Ci0gICAgICAgIG1vdiAgIFNUQUNLX0NQVUlORk9fRklFTEQoY3I0KSglcmR4KSwgJXJkaQog ICAgICAgICBtb3YgICAlcjksIFNUQUNLX0NQVUlORk9fRklFTEQoeGVuX2NyMykoJXJkeCkKLSAg ICAgICAgbW92ICAgJXJkaSwgJXJzaQotICAgICAgICBhbmQgICAkflg4Nl9DUjRfUEdFLCAlcmRp Ci0gICAgICAgIG1vdiAgICVyZGksICVjcjQKICAgICAgICAgbW92ICAgJXJheCwgJWNyMwotICAg ICAgICBtb3YgICAlcnNpLCAlY3I0CiAuTHJhZ19jcjNfZW5kOgogICAgICAgICBBTFRFUk5BVElW RV9OT1AgLkxyYWdfY3IzX3N0YXJ0LCAuTHJhZ19jcjNfZW5kLCBYODZfRkVBVFVSRV9OT19YUFRJ CiAKQEAgLTEzNiwxMiArMTMxLDcgQEAgcmVzdG9yZV9hbGxfeGVuOgogICAgICAgICAgKiBzbyAi ZyIgd2lsbCBoYXZlIHRvIGRvLgogICAgICAgICAgKi8KIFVOTElLRUxZX1NUQVJUKGcsIGV4aXRf Y3IzKQotICAgICAgICBtb3YgICAlY3I0LCAlcmRpCi0gICAgICAgIG1vdiAgICVyZGksICVyc2kK LSAgICAgICAgYW5kICAgJH5YODZfQ1I0X1BHRSwgJXJkaQotICAgICAgICBtb3YgICAlcmRpLCAl Y3I0CiAgICAgICAgIG1vdiAgICVyYXgsICVjcjMKLSAgICAgICAgbW92ICAgJXJzaSwgJWNyNAog VU5MSUtFTFlfRU5EKGV4aXRfY3IzKQogCiAgICAgICAgIC8qIFdBUk5JTkchIGByZXRgLCBgY2Fs bCAqYCwgYGptcCAqYCBub3Qgc2FmZSBiZXlvbmQgdGhpcyBwb2ludC4gKi8KZGlmZiAtLWdpdCBh L3hlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L2RvbWFp bi5oCmluZGV4IDBjYzM3ZGVhMDUuLjMxNjQxOGE2ZmUgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRl L2FzbS14ODYvZG9tYWluLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaApAQCAt NjIyLDcgKzYyMiw4IEBAIHVuc2lnbmVkIGxvbmcgcHZfZ3Vlc3RfY3I0X2ZpeHVwKGNvbnN0IHN0 cnVjdCB2Y3B1ICosIHVuc2lnbmVkIGxvbmcgZ3Vlc3RfY3I0KTsKICAgICAgICAgICAgIFg4Nl9D UjRfU01BUCB8IFg4Nl9DUjRfT1NYU0FWRSB8ICAgICAgICAgICAgICAgIFwKICAgICAgICAgICAg IFg4Nl9DUjRfRlNHU0JBU0UpKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAg IHwgKCh2KS0+ZG9tYWluLT5hcmNoLnZ0c2MgPyBYODZfQ1I0X1RTRCA6IDApKSAgICAgICAgIFwK LSAgICAgJiB+WDg2X0NSNF9ERSkKKyAgICAgJiB+KFg4Nl9DUjRfREUgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICgodiktPmRvbWFpbi0+YXJjaC5w dl9kb21haW4ueHB0aSA/IFg4Nl9DUjRfUEdFIDogMCkpKQogI2RlZmluZSByZWFsX2NyNF90b19w dl9ndWVzdF9jcjQoYykgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICgoYykgJiB+KFg4 Nl9DUjRfUEdFIHwgWDg2X0NSNF9QU0UgfCBYODZfQ1I0X1RTRCB8ICAgICAgXAogICAgICAgICAg ICAgIFg4Nl9DUjRfT1NYU0FWRSB8IFg4Nl9DUjRfU01FUCB8ICAgICAgICAgICAgICAgXAotLSAK Mi4xMy42CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K WGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0 cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==