From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joao Martins Subject: [PATCH RFC 18/39] x86/xen: make hypercall_page generic Date: Wed, 20 Feb 2019 20:15:48 +0000 Message-ID: <20190220201609.28290-19-joao.m.martins__2962.58323812566$1550693938$gmane$org@oracle.com> References: <20190220201609.28290-1-joao.m.martins@oracle.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 1gwYJj-0005vc-7o for xen-devel@lists.xenproject.org; Wed, 20 Feb 2019 20:18:07 +0000 In-Reply-To: <20190220201609.28290-1-joao.m.martins@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: kvm@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Juergen Gross , Joao Martins , Stefano Stabellini , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , x86@kernel.org, Ankur Arora , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Paolo Bonzini , Boris Ostrovsky , Thomas Gleixner List-Id: xen-devel@lists.xenproject.org RnJvbTogQW5rdXIgQXJvcmEgPGFua3VyLmEuYXJvcmFAb3JhY2xlLmNvbT4KCkV4cG9ydCBoeXBl cmNhbGxfcGFnZSBhcyBhIGdlbmVyaWMgaW50ZXJmYWNlIHdoaWNoIGNhbiBiZSBpbXBsZW1lbnRl ZApieSBvdGhlciBoeXBlcnZpc29ycy4gV2l0aCB0aGlzIGNoYW5nZSwgaHlwZXJjYWxsX3BhZ2Ug bm93IHBvaW50cyB0bwp0aGUgbmV3bHkgaW50cm9kdWNlZCB4ZW5faHlwZXJjYWxsX3BhZ2Ugd2hp Y2ggaXMgc2VlZGVkIGJ5IFhlbiwgb3IgdG8Kb25lIHRoYXQgaXMgZmlsbGVkIGluIGJ5IGEgZGlm ZmVyZW50IGh5cGVydmlzb3IuCgpTaWduZWQtb2ZmLWJ5OiBBbmt1ciBBcm9yYSA8YW5rdXIuYS5h cm9yYUBvcmFjbGUuY29tPgotLS0KIGFyY2gveDg2L2luY2x1ZGUvYXNtL3hlbi9oeXBlcmNhbGwu aCB8IDEyICsrKysrKystLS0tLQogYXJjaC94ODYveGVuL2VubGlnaHRlbi5jICAgICAgICAgICAg IHwgIDEgKwogYXJjaC94ODYveGVuL2VubGlnaHRlbl9odm0uYyAgICAgICAgIHwgIDMgKystCiBh cmNoL3g4Ni94ZW4vZW5saWdodGVuX3B2LmMgICAgICAgICAgfCAgMSArCiBhcmNoL3g4Ni94ZW4v ZW5saWdodGVuX3B2aC5jICAgICAgICAgfCAgMyArKy0KIGFyY2gveDg2L3hlbi94ZW4tYXNtXzMy LlMgICAgICAgICAgICB8ICAyICstCiBhcmNoL3g4Ni94ZW4veGVuLWFzbV82NC5TICAgICAgICAg ICAgfCAgMiArLQogYXJjaC94ODYveGVuL3hlbi1oZWFkLlMgICAgICAgICAgICAgIHwgIDggKysr Ky0tLS0KIDggZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvYXJjaC94ODYvaW5jbHVkZS9hc20veGVuL2h5cGVyY2FsbC5oIGIvYXJj aC94ODYvaW5jbHVkZS9hc20veGVuL2h5cGVyY2FsbC5oCmluZGV4IGVmMDViZWE3MDEwZC4uMWEz Y2Q2NjgwZTZmIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS94ZW4vaHlwZXJjYWxs LmgKKysrIGIvYXJjaC94ODYvaW5jbHVkZS9hc20veGVuL2h5cGVyY2FsbC5oCkBAIC04NiwxMSAr ODYsMTMgQEAgc3RydWN0IHhlbl9kbV9vcF9idWY7CiAgKiB0aGVyZSBhcmVuJ3QgbW9yZSB0aGFu IDUgYXJndW1lbnRzLi4uKQogICovCiAKLWV4dGVybiBzdHJ1Y3QgeyBjaGFyIF9lbnRyeVszMl07 IH0gaHlwZXJjYWxsX3BhZ2VbXTsKK3N0cnVjdCBoeXBlcmNhbGxfZW50cnkgeyBjaGFyIF9lbnRy eVszMl07IH07CitleHRlcm4gc3RydWN0IGh5cGVyY2FsbF9lbnRyeSB4ZW5faHlwZXJjYWxsX3Bh Z2VbMTI4XTsKK2V4dGVybiBzdHJ1Y3QgaHlwZXJjYWxsX2VudHJ5ICpoeXBlcmNhbGxfcGFnZTsK IAotI2RlZmluZSBfX0hZUEVSQ0FMTAkJImNhbGwgaHlwZXJjYWxsX3BhZ2UrJWNbb2Zmc2V0XSIK KyNkZWZpbmUgX19IWVBFUkNBTEwJQ0FMTF9OT1NQRUMKICNkZWZpbmUgX19IWVBFUkNBTExfRU5U UlkoeCkJCQkJCQlcCi0JW29mZnNldF0gImkiIChfX0hZUEVSVklTT1JfIyN4ICogc2l6ZW9mKGh5 cGVyY2FsbF9wYWdlWzBdKSkKKwlbdGh1bmtfdGFyZ2V0XSAiMCIgKGh5cGVyY2FsbF9wYWdlICsg X19IWVBFUlZJU09SXyMjeCkKIAogI2lmZGVmIENPTkZJR19YODZfMzIKICNkZWZpbmUgX19IWVBF UkNBTExfUkVUUkVHCSJlYXgiCkBAIC0xMTYsNyArMTE4LDcgQEAgZXh0ZXJuIHN0cnVjdCB7IGNo YXIgX2VudHJ5WzMyXTsgfSBoeXBlcmNhbGxfcGFnZVtdOwogCXJlZ2lzdGVyIHVuc2lnbmVkIGxv bmcgX19hcmc0IGFzbShfX0hZUEVSQ0FMTF9BUkc0UkVHKSA9IF9fYXJnNDsgXAogCXJlZ2lzdGVy IHVuc2lnbmVkIGxvbmcgX19hcmc1IGFzbShfX0hZUEVSQ0FMTF9BUkc1UkVHKSA9IF9fYXJnNTsK IAotI2RlZmluZSBfX0hZUEVSQ0FMTF8wUEFSQU0JIj1yIiAoX19yZXMpLCBBU01fQ0FMTF9DT05T VFJBSU5UCisjZGVmaW5lIF9fSFlQRVJDQUxMXzBQQVJBTQkiPSZyIiAoX19yZXMpLCBBU01fQ0FM TF9DT05TVFJBSU5UCiAjZGVmaW5lIF9fSFlQRVJDQUxMXzFQQVJBTQlfX0hZUEVSQ0FMTF8wUEFS QU0sICIrciIgKF9fYXJnMSkKICNkZWZpbmUgX19IWVBFUkNBTExfMlBBUkFNCV9fSFlQRVJDQUxM XzFQQVJBTSwgIityIiAoX19hcmcyKQogI2RlZmluZSBfX0hZUEVSQ0FMTF8zUEFSQU0JX19IWVBF UkNBTExfMlBBUkFNLCAiK3IiIChfX2FyZzMpCkBAIC0yMDgsNyArMjEwLDcgQEAgeGVuX3Npbmds ZV9jYWxsKHVuc2lnbmVkIGludCBjYWxsLAogCiAJYXNtIHZvbGF0aWxlKENBTExfTk9TUEVDCiAJ CSAgICAgOiBfX0hZUEVSQ0FMTF81UEFSQU0KLQkJICAgICA6IFt0aHVua190YXJnZXRdICJhIiAo Jmh5cGVyY2FsbF9wYWdlW2NhbGxdKQorCQkgICAgIDogW3RodW5rX3RhcmdldF0gIjAiIChoeXBl cmNhbGxfcGFnZSArIGNhbGwpCiAJCSAgICAgOiBfX0hZUEVSQ0FMTF9DTE9CQkVSNSk7CiAKIAly ZXR1cm4gKGxvbmcpX19yZXM7CmRpZmYgLS1naXQgYS9hcmNoL3g4Ni94ZW4vZW5saWdodGVuLmMg Yi9hcmNoL3g4Ni94ZW4vZW5saWdodGVuLmMKaW5kZXggNzNiOTczNmU4OWQyLi5iMzZhMTBlNmI1 ZDcgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L3hlbi9lbmxpZ2h0ZW4uYworKysgYi9hcmNoL3g4Ni94 ZW4vZW5saWdodGVuLmMKQEAgLTIwLDYgKzIwLDcgQEAKICNpbmNsdWRlICJzbXAuaCIKICNpbmNs dWRlICJwbXUuaCIKIAorc3RydWN0IGh5cGVyY2FsbF9lbnRyeSAqaHlwZXJjYWxsX3BhZ2U7CiBF WFBPUlRfU1lNQk9MX0dQTChoeXBlcmNhbGxfcGFnZSk7CiAKIC8qCmRpZmYgLS1naXQgYS9hcmNo L3g4Ni94ZW4vZW5saWdodGVuX2h2bS5jIGIvYXJjaC94ODYveGVuL2VubGlnaHRlbl9odm0uYwpp bmRleCAwZTc1NjQyZDQyYTMuLjQwODQ1ZTNlOWE5NiAxMDA2NDQKLS0tIGEvYXJjaC94ODYveGVu L2VubGlnaHRlbl9odm0uYworKysgYi9hcmNoL3g4Ni94ZW4vZW5saWdodGVuX2h2bS5jCkBAIC0x MDUsOCArMTA1LDkgQEAgc3RhdGljIHZvaWQgX19pbml0IGluaXRfaHZtX3B2X2luZm8odm9pZCkK IAogCQlwdl9pbmZvLm5hbWUgPSAiWGVuIEhWTSI7CiAJCW1zciA9IGNwdWlkX2VieChiYXNlICsg Mik7Ci0JCXBmbiA9IF9fcGEoaHlwZXJjYWxsX3BhZ2UpOworCQlwZm4gPSBfX3BhKHhlbl9oeXBl cmNhbGxfcGFnZSk7CiAJCXdybXNyX3NhZmUobXNyLCAodTMyKXBmbiwgKHUzMikocGZuID4+IDMy KSk7CisJCWh5cGVyY2FsbF9wYWdlID0geGVuX2h5cGVyY2FsbF9wYWdlOwogCX0KIAogCXhlbl9z ZXR1cF9mZWF0dXJlcygpOwpkaWZmIC0tZ2l0IGEvYXJjaC94ODYveGVuL2VubGlnaHRlbl9wdi5j IGIvYXJjaC94ODYveGVuL2VubGlnaHRlbl9wdi5jCmluZGV4IGM1NGE0OTNlMTM5YS4uZTE1Mzc3 MTNiNTdkIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni94ZW4vZW5saWdodGVuX3B2LmMKKysrIGIvYXJj aC94ODYveGVuL2VubGlnaHRlbl9wdi5jCkBAIC0xMTk3LDYgKzExOTcsNyBAQCBhc21saW5rYWdl IF9fdmlzaWJsZSB2b2lkIF9faW5pdCB4ZW5fc3RhcnRfa2VybmVsKHZvaWQpCiAKIAlpZiAoIXhl bl9zdGFydF9pbmZvKQogCQlyZXR1cm47CisJaHlwZXJjYWxsX3BhZ2UgPSB4ZW5faHlwZXJjYWxs X3BhZ2U7CiAKIAl4ZW5fZG9tYWluX3R5cGUgPSBYRU5fUFZfRE9NQUlOOwogCXhlbl9zdGFydF9m bGFncyA9IHhlbl9zdGFydF9pbmZvLT5mbGFnczsKZGlmZiAtLWdpdCBhL2FyY2gveDg2L3hlbi9l bmxpZ2h0ZW5fcHZoLmMgYi9hcmNoL3g4Ni94ZW4vZW5saWdodGVuX3B2aC5jCmluZGV4IDM1Yjc1 OTlkMmQwYi4uZDU3YThhZDE3NjllIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni94ZW4vZW5saWdodGVu X3B2aC5jCisrKyBiL2FyY2gveDg2L3hlbi9lbmxpZ2h0ZW5fcHZoLmMKQEAgLTMwLDggKzMwLDkg QEAgdm9pZCBfX2luaXQgeGVuX3B2aF9pbml0KHZvaWQpCiAJeGVuX3N0YXJ0X2ZsYWdzID0gcHZo X3N0YXJ0X2luZm8uZmxhZ3M7CiAKIAltc3IgPSBjcHVpZF9lYngoeGVuX2NwdWlkX2Jhc2UoKSAr IDIpOwotCXBmbiA9IF9fcGEoaHlwZXJjYWxsX3BhZ2UpOworCXBmbiA9IF9fcGEoeGVuX2h5cGVy Y2FsbF9wYWdlKTsKIAl3cm1zcl9zYWZlKG1zciwgKHUzMilwZm4sICh1MzIpKHBmbiA+PiAzMikp OworCWh5cGVyY2FsbF9wYWdlID0geGVuX2h5cGVyY2FsbF9wYWdlOwogfQogCiB2b2lkIF9faW5p dCBtZW1fbWFwX3ZpYV9oY2FsbChzdHJ1Y3QgYm9vdF9wYXJhbXMgKmJvb3RfcGFyYW1zX3ApCmRp ZmYgLS1naXQgYS9hcmNoL3g4Ni94ZW4veGVuLWFzbV8zMi5TIGIvYXJjaC94ODYveGVuL3hlbi1h c21fMzIuUwppbmRleCBjMTVkYjA2MGEyNDIuLmVlNDk5ODA1NWVhOSAxMDA2NDQKLS0tIGEvYXJj aC94ODYveGVuL3hlbi1hc21fMzIuUworKysgYi9hcmNoL3g4Ni94ZW4veGVuLWFzbV8zMi5TCkBA IC0xMjEsNyArMTIxLDcgQEAgeGVuX2lyZXRfZW5kX2NyaXQ6CiAKIGh5cGVyX2lyZXQ6CiAJLyog cHV0IHRoaXMgb3V0IG9mIGxpbmUgc2luY2UgaXRzIHZlcnkgcmFyZWx5IHVzZWQgKi8KLQlqbXAg aHlwZXJjYWxsX3BhZ2UgKyBfX0hZUEVSVklTT1JfaXJldCAqIDMyCisJam1wIHhlbl9oeXBlcmNh bGxfcGFnZSArIF9fSFlQRVJWSVNPUl9pcmV0ICogMzIKIAogCS5nbG9ibCB4ZW5faXJldF9zdGFy dF9jcml0LCB4ZW5faXJldF9lbmRfY3JpdAogCmRpZmYgLS1naXQgYS9hcmNoL3g4Ni94ZW4veGVu LWFzbV82NC5TIGIvYXJjaC94ODYveGVuL3hlbi1hc21fNjQuUwppbmRleCAxZTllZjBiYTMwYTUu LjIxNzJkNmFlYzlhMyAxMDA2NDQKLS0tIGEvYXJjaC94ODYveGVuL3hlbi1hc21fNjQuUworKysg Yi9hcmNoL3g4Ni94ZW4veGVuLWFzbV82NC5TCkBAIC03MCw3ICs3MCw3IEBAIEVOVFJZKHhlbl9l YXJseV9pZHRfaGFuZGxlcl9hcnJheSkKIEVORCh4ZW5fZWFybHlfaWR0X2hhbmRsZXJfYXJyYXkp CiAJX19GSU5JVAogCi1oeXBlcmNhbGxfaXJldCA9IGh5cGVyY2FsbF9wYWdlICsgX19IWVBFUlZJ U09SX2lyZXQgKiAzMgoraHlwZXJjYWxsX2lyZXQgPSB4ZW5faHlwZXJjYWxsX3BhZ2UgKyBfX0hZ UEVSVklTT1JfaXJldCAqIDMyCiAvKgogICogWGVuNjQgaXJldCBmcmFtZToKICAqCmRpZmYgLS1n aXQgYS9hcmNoL3g4Ni94ZW4veGVuLWhlYWQuUyBiL2FyY2gveDg2L3hlbi94ZW4taGVhZC5TCmlu ZGV4IDUwNzdlYWQ1ZTU5Yy4uN2ZmNTQzN2JkODNmIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni94ZW4v eGVuLWhlYWQuUworKysgYi9hcmNoL3g4Ni94ZW4veGVuLWhlYWQuUwpAQCAtNTgsMTggKzU4LDE4 IEBAIEVORChzdGFydHVwX3hlbikKIAogLnB1c2hzZWN0aW9uIC50ZXh0CiAJLmJhbGlnbiBQQUdF X1NJWkUKLUVOVFJZKGh5cGVyY2FsbF9wYWdlKQorRU5UUlkoeGVuX2h5cGVyY2FsbF9wYWdlKQog CS5yZXB0IChQQUdFX1NJWkUgLyAzMikKIAkJVU5XSU5EX0hJTlRfRU1QVFkKIAkJLnNraXAgMzIK IAkuZW5kcgogCiAjZGVmaW5lIEhZUEVSQ0FMTChuKSBcCi0JLmVxdSB4ZW5faHlwZXJjYWxsXyMj biwgaHlwZXJjYWxsX3BhZ2UgKyBfX0hZUEVSVklTT1JfIyNuICogMzI7IFwKKwkuZXF1IHhlbl9o eXBlcmNhbGxfIyNuLCB4ZW5faHlwZXJjYWxsX3BhZ2UgKyBfX0hZUEVSVklTT1JfIyNuICogMzI7 IFwKIAkudHlwZSB4ZW5faHlwZXJjYWxsXyMjbiwgQGZ1bmN0aW9uOyAuc2l6ZSB4ZW5faHlwZXJj YWxsXyMjbiwgMzIKICNpbmNsdWRlIDxhc20veGVuLWh5cGVyY2FsbHMuaD4KICN1bmRlZiBIWVBF UkNBTEwKLUVORChoeXBlcmNhbGxfcGFnZSkKK0VORCh4ZW5faHlwZXJjYWxsX3BhZ2UpCiAucG9w c2VjdGlvbgogCiAJRUxGTk9URShYZW4sIFhFTl9FTEZOT1RFX0dVRVNUX09TLCAgICAgICAuYXNj aXogImxpbnV4IikKQEAgLTg1LDcgKzg1LDcgQEAgRU5EKGh5cGVyY2FsbF9wYWdlKQogI2lmZGVm IENPTkZJR19YRU5fUFYKIAlFTEZOT1RFKFhlbiwgWEVOX0VMRk5PVEVfRU5UUlksICAgICAgICAg IF9BU01fUFRSIHN0YXJ0dXBfeGVuKQogI2VuZGlmCi0JRUxGTk9URShYZW4sIFhFTl9FTEZOT1RF X0hZUEVSQ0FMTF9QQUdFLCBfQVNNX1BUUiBoeXBlcmNhbGxfcGFnZSkKKwlFTEZOT1RFKFhlbiwg WEVOX0VMRk5PVEVfSFlQRVJDQUxMX1BBR0UsIF9BU01fUFRSIHhlbl9oeXBlcmNhbGxfcGFnZSkK IAlFTEZOT1RFKFhlbiwgWEVOX0VMRk5PVEVfRkVBVFVSRVMsCiAJCS5hc2NpaSAiIXdyaXRhYmxl X3BhZ2VfdGFibGVzfHBhZV9wZ2Rpcl9hYm92ZV80Z2IiKQogCUVMRk5PVEUoWGVuLCBYRU5fRUxG Tk9URV9TVVBQT1JURURfRkVBVFVSRVMsCi0tIAoyLjExLjAKCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1k ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h aWxtYW4vbGlzdGluZm8veGVuLWRldmVs