From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: [PATCH 1/2] x86/hvm/viridian: keep APIC assist page mapped... Date: Tue, 15 Mar 2016 16:14:15 +0000 Message-ID: <1458058456-7345-2-git-send-email-paul.durrant@citrix.com> References: <1458058456-7345-1-git-send-email-paul.durrant@citrix.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 1afrlm-0000zm-HT for xen-devel@lists.xenproject.org; Tue, 15 Mar 2016 16:24:30 +0000 In-Reply-To: <1458058456-7345-1-git-send-email-paul.durrant@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Andrew Cooper , Paul Durrant , Keir Fraser , Jan Beulich List-Id: xen-devel@lists.xenproject.org Li4uIGZvciB0aGUgbGlmZXRpbWUgb2YgdGhlIGRvbWFpbi4KCklmIFhlbiBpcyB0byBtYWtlIHVz ZSBvZiB0aGUgQVBJQyBhc3Npc3QgZW5saWdodGVubWVudCB0aGVuIGEgcGVyc2lzdGVudAptYXBw aW5nIG5lZWRzIHRvIGJlIGtlcHQsIHJhdGhlciB0aGFuIHRoZSB0ZW1wb3Jhcnkgb25lIHdoaWNo IGlzIGN1cnJlbnRseQp1c2VkIG9ubHkgdG8gaW5pdGlhbGl6ZSB0aGUgcGFnZSBjb250ZW50LgoK U2lnbmVkLW9mZi1ieTogUGF1bCBEdXJyYW50IDxwYXVsLmR1cnJhbnRAY2l0cml4LmNvbT4KQ2M6 IEtlaXIgRnJhc2VyIDxrZWlyQHhlbi5vcmc+CkNjOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3Vz ZS5jb20+CkNjOiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0K IHhlbi9hcmNoL3g4Ni9odm0vdmlyaWRpYW4uYyAgICAgICAgfCA1NCArKysrKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0tLQogeGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vdmlyaWRpYW4u aCB8ICA2ICsrKystCiAyIGZpbGVzIGNoYW5nZWQsIDQzIGluc2VydGlvbnMoKyksIDE3IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vdmlyaWRpYW4uYyBiL3hlbi9h cmNoL3g4Ni9odm0vdmlyaWRpYW4uYwppbmRleCA2YmQ4NDRiLi5jNzc5MjkwIDEwMDY0NAotLS0g YS94ZW4vYXJjaC94ODYvaHZtL3ZpcmlkaWFuLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS92aXJp ZGlhbi5jCkBAIC0xNjMsNyArMTYzLDcgQEAgc3RhdGljIHZvaWQgZHVtcF9hcGljX2Fzc2lzdChj b25zdCBzdHJ1Y3QgdmNwdSAqdikKIHsKICAgICBjb25zdCB1bmlvbiB2aXJpZGlhbl9hcGljX2Fz c2lzdCAqYWE7CiAKLSAgICBhYSA9ICZ2LT5hcmNoLmh2bV92Y3B1LnZpcmlkaWFuLmFwaWNfYXNz aXN0OworICAgIGFhID0gJnYtPmFyY2guaHZtX3ZjcHUudmlyaWRpYW4uYXBpY19hc3Npc3QubXNy OwogCiAgICAgcHJpbnRrKFhFTkxPR19HX0lORk8gIiVwdjogVklSSURJQU4gQVBJQ19BU1NJU1Q6 IGVuYWJsZWQ6ICV4IHBmbjogJWx4XG4iLAogICAgICAgICAgICB2LCBhYS0+ZmllbGRzLmVuYWJs ZWQsICh1bnNpZ25lZCBsb25nKWFhLT5maWVsZHMucGZuKTsKQEAgLTIxNyw5ICsyMTcsOSBAQCBz dGF0aWMgdm9pZCBlbmFibGVfaHlwZXJjYWxsX3BhZ2Uoc3RydWN0IGRvbWFpbiAqZCkKIHN0YXRp YyB2b2lkIGluaXRpYWxpemVfYXBpY19hc3Npc3Qoc3RydWN0IHZjcHUgKnYpCiB7CiAgICAgc3Ry dWN0IGRvbWFpbiAqZCA9IHYtPmRvbWFpbjsKLSAgICB1bnNpZ25lZCBsb25nIGdtZm4gPSB2LT5h cmNoLmh2bV92Y3B1LnZpcmlkaWFuLmFwaWNfYXNzaXN0LmZpZWxkcy5wZm47CisgICAgdW5zaWdu ZWQgbG9uZyBnbWZuID0gdi0+YXJjaC5odm1fdmNwdS52aXJpZGlhbi5hcGljX2Fzc2lzdC5tc3Iu ZmllbGRzLnBmbjsKICAgICBzdHJ1Y3QgcGFnZV9pbmZvICpwYWdlID0gZ2V0X3BhZ2VfZnJvbV9n Zm4oZCwgZ21mbiwgTlVMTCwgUDJNX0FMTE9DKTsKLSAgICB1aW50OF90ICpwOworICAgIHZvaWQg KnZhOwogCiAgICAgLyoKICAgICAgKiBXZSBkb24ndCB5ZXQgbWFrZSB1c2Ugb2YgdGhlIEFQSUMg YXNzaXN0IHBhZ2UgYnV0IGJ5IHNldHRpbmcKQEAgLTIzMSwyMSArMjMxLDQwIEBAIHN0YXRpYyB2 b2lkIGluaXRpYWxpemVfYXBpY19hc3Npc3Qoc3RydWN0IHZjcHUgKnYpCiAgICAgICogZGV0YWls cyBvZiBob3cgV2luZG93cyB1c2VzIHRoZSBwYWdlLgogICAgICAqLwogCi0gICAgaWYgKCAhcGFn ZSB8fCAhZ2V0X3BhZ2VfdHlwZShwYWdlLCBQR1Rfd3JpdGFibGVfcGFnZSkgKQorICAgIGlmICgg IXBhZ2UgKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoICFnZXRfcGFnZV90eXBlKHBhZ2Us IFBHVF93cml0YWJsZV9wYWdlKSApCiAgICAgewotICAgICAgICBpZiAoIHBhZ2UgKQotICAgICAg ICAgICAgcHV0X3BhZ2UocGFnZSk7Ci0gICAgICAgIGdkcHJpbnRrKFhFTkxPR19XQVJOSU5HLCAi QmFkIEdNRk4gJWx4IChNRk4gJWx4KVxuIiwgZ21mbiwKLSAgICAgICAgICAgICAgICAgcGFnZSA/ IHBhZ2VfdG9fbWZuKHBhZ2UpIDogSU5WQUxJRF9NRk4pOworICAgICAgICBwdXRfcGFnZShwYWdl KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIHAgPSBfX21hcF9kb21haW5fcGFnZShw YWdlKTsKKyAgICB2YSA9IF9fbWFwX2RvbWFpbl9wYWdlX2dsb2JhbChwYWdlKTsKKyAgICBpZiAo ICF2YSApCisgICAgeworICAgICAgICBwdXRfcGFnZV9hbmRfdHlwZShwYWdlKTsKKyAgICAgICAg cmV0dXJuOworICAgIH0KIAotICAgICoodTMyICopcCA9IDA7CisgICAgKih1aW50MzJfdCAqKXZh ID0gMDsKIAotICAgIHVubWFwX2RvbWFpbl9wYWdlKHApOworICAgIHYtPmFyY2guaHZtX3ZjcHUu dmlyaWRpYW4uYXBpY19hc3Npc3QucGFnZSA9IHBhZ2U7CisgICAgdi0+YXJjaC5odm1fdmNwdS52 aXJpZGlhbi5hcGljX2Fzc2lzdC52YSA9IHZhOworfQorCitzdGF0aWMgdm9pZCB0ZWFyZG93bl9h cGljX2Fzc2lzdChzdHJ1Y3QgdmNwdSAqdikKK3sKKyAgICBzdHJ1Y3QgcGFnZV9pbmZvICpwYWdl ID0gdi0+YXJjaC5odm1fdmNwdS52aXJpZGlhbi5hcGljX2Fzc2lzdC5wYWdlOworICAgIHZvaWQg KnZhID0gdi0+YXJjaC5odm1fdmNwdS52aXJpZGlhbi5hcGljX2Fzc2lzdC52YTsKKworICAgIGlm ICggIXZhICkKKyAgICAgICAgcmV0dXJuOworCisgICAgdi0+YXJjaC5odm1fdmNwdS52aXJpZGlh bi5hcGljX2Fzc2lzdC52YSA9IE5VTEw7CisgICAgdi0+YXJjaC5odm1fdmNwdS52aXJpZGlhbi5h cGljX2Fzc2lzdC5wYWdlID0gTlVMTDsKIAorICAgIHVubWFwX2RvbWFpbl9wYWdlX2dsb2JhbCh2 YSk7CiAgICAgcHV0X3BhZ2VfYW5kX3R5cGUocGFnZSk7CiB9CiAKQEAgLTM3NCw5ICszOTMsOSBA QCBpbnQgd3Jtc3JfdmlyaWRpYW5fcmVncyh1aW50MzJfdCBpZHgsIHVpbnQ2NF90IHZhbCkKIAog ICAgIGNhc2UgVklSSURJQU5fTVNSX0FQSUNfQVNTSVNUOgogICAgICAgICBwZXJmY19pbmNyKG1z aHZfd3Jtc3JfYXBpY19tc3IpOwotICAgICAgICB2LT5hcmNoLmh2bV92Y3B1LnZpcmlkaWFuLmFw aWNfYXNzaXN0LnJhdyA9IHZhbDsKKyAgICAgICAgdi0+YXJjaC5odm1fdmNwdS52aXJpZGlhbi5h cGljX2Fzc2lzdC5tc3IucmF3ID0gdmFsOwogICAgICAgICBkdW1wX2FwaWNfYXNzaXN0KHYpOwot ICAgICAgICBpZiAodi0+YXJjaC5odm1fdmNwdS52aXJpZGlhbi5hcGljX2Fzc2lzdC5maWVsZHMu ZW5hYmxlZCkKKyAgICAgICAgaWYgKCB2LT5hcmNoLmh2bV92Y3B1LnZpcmlkaWFuLmFwaWNfYXNz aXN0Lm1zci5maWVsZHMuZW5hYmxlZCApCiAgICAgICAgICAgICBpbml0aWFsaXplX2FwaWNfYXNz aXN0KHYpOwogICAgICAgICBicmVhazsKIApAQCAtNDg1LDcgKzUwNCw3IEBAIGludCByZG1zcl92 aXJpZGlhbl9yZWdzKHVpbnQzMl90IGlkeCwgdWludDY0X3QgKnZhbCkKIAogICAgIGNhc2UgVklS SURJQU5fTVNSX0FQSUNfQVNTSVNUOgogICAgICAgICBwZXJmY19pbmNyKG1zaHZfcmRtc3JfYXBp Y19tc3IpOwotICAgICAgICAqdmFsID0gdi0+YXJjaC5odm1fdmNwdS52aXJpZGlhbi5hcGljX2Fz c2lzdC5yYXc7CisgICAgICAgICp2YWwgPSB2LT5hcmNoLmh2bV92Y3B1LnZpcmlkaWFuLmFwaWNf YXNzaXN0Lm1zci5yYXc7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBWSVJJRElBTl9NU1Jf UkVGRVJFTkNFX1RTQzoKQEAgLTUzMCw2ICs1NDksNyBAQCBpbnQgdmlyaWRpYW5fdmNwdV9pbml0 KHN0cnVjdCB2Y3B1ICp2KQogdm9pZCB2aXJpZGlhbl92Y3B1X2RlaW5pdChzdHJ1Y3QgdmNwdSAq dikKIHsKICAgICBmcmVlX2NwdW1hc2tfdmFyKHYtPmFyY2guaHZtX3ZjcHUudmlyaWRpYW4uZmx1 c2hfY3B1bWFzayk7CisgICAgdGVhcmRvd25fYXBpY19hc3Npc3Qodik7CiB9CiAKIGludCB2aXJp ZGlhbl9oeXBlcmNhbGwoc3RydWN0IGNwdV91c2VyX3JlZ3MgKnJlZ3MpCkBAIC03MjgsNyArNzQ4 LDcgQEAgc3RhdGljIGludCB2aXJpZGlhbl9zYXZlX3ZjcHVfY3R4dChzdHJ1Y3QgZG9tYWluICpk LCBodm1fZG9tYWluX2NvbnRleHRfdCAqaCkKICAgICBmb3JfZWFjaF92Y3B1KCBkLCB2ICkgewog ICAgICAgICBzdHJ1Y3QgaHZtX3ZpcmlkaWFuX3ZjcHVfY29udGV4dCBjdHh0OwogCi0gICAgICAg IGN0eHQuYXBpY19hc3Npc3QgPSB2LT5hcmNoLmh2bV92Y3B1LnZpcmlkaWFuLmFwaWNfYXNzaXN0 LnJhdzsKKyAgICAgICAgY3R4dC5hcGljX2Fzc2lzdCA9IHYtPmFyY2guaHZtX3ZjcHUudmlyaWRp YW4uYXBpY19hc3Npc3QubXNyLnJhdzsKIAogICAgICAgICBpZiAoIGh2bV9zYXZlX2VudHJ5KFZJ UklESUFOX1ZDUFUsIHYtPnZjcHVfaWQsIGgsICZjdHh0KSAhPSAwICkKICAgICAgICAgICAgIHJl dHVybiAxOwpAQCAtNzU0LDcgKzc3NCw5IEBAIHN0YXRpYyBpbnQgdmlyaWRpYW5fbG9hZF92Y3B1 X2N0eHQoc3RydWN0IGRvbWFpbiAqZCwgaHZtX2RvbWFpbl9jb250ZXh0X3QgKmgpCiAgICAgaWYg KCBodm1fbG9hZF9lbnRyeShWSVJJRElBTl9WQ1BVLCBoLCAmY3R4dCkgIT0gMCApCiAgICAgICAg IHJldHVybiAtRUlOVkFMOwogCi0gICAgdi0+YXJjaC5odm1fdmNwdS52aXJpZGlhbi5hcGljX2Fz c2lzdC5yYXcgPSBjdHh0LmFwaWNfYXNzaXN0OworICAgIHYtPmFyY2guaHZtX3ZjcHUudmlyaWRp YW4uYXBpY19hc3Npc3QubXNyLnJhdyA9IGN0eHQuYXBpY19hc3Npc3Q7CisgICAgaWYgKCB2LT5h cmNoLmh2bV92Y3B1LnZpcmlkaWFuLmFwaWNfYXNzaXN0Lm1zci5maWVsZHMuZW5hYmxlZCApCisg ICAgICAgIGluaXRpYWxpemVfYXBpY19hc3Npc3Qodik7CiAKICAgICByZXR1cm4gMDsKIH0KZGlm ZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZpcmlkaWFuLmggYi94ZW4vaW5jbHVk ZS9hc20teDg2L2h2bS92aXJpZGlhbi5oCmluZGV4IDJlZWM4NWUuLmM2MGMxMTMgMTAwNjQ0Ci0t LSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZpcmlkaWFuLmgKKysrIGIveGVuL2luY2x1ZGUv YXNtLXg4Ni9odm0vdmlyaWRpYW4uaApAQCAtMjEsNyArMjEsMTEgQEAgdW5pb24gdmlyaWRpYW5f YXBpY19hc3Npc3QKIAogc3RydWN0IHZpcmlkaWFuX3ZjcHUKIHsKLSAgICB1bmlvbiB2aXJpZGlh bl9hcGljX2Fzc2lzdCBhcGljX2Fzc2lzdDsKKyAgICBzdHJ1Y3QgeworICAgICAgICB1bmlvbiB2 aXJpZGlhbl9hcGljX2Fzc2lzdCBtc3I7CisgICAgICAgIHN0cnVjdCBwYWdlX2luZm8gKnBhZ2U7 CisgICAgICAgIHZvaWQgKnZhOworICAgIH0gYXBpY19hc3Npc3Q7CiAgICAgY3B1bWFza192YXJf dCBmbHVzaF9jcHVtYXNrOwogfTsKIAotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZl bEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=