From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH v2 30/62] x86/guest: map per-cpu vcpu_info area. Date: Fri, 12 Jan 2018 11:28:38 +0000 Message-ID: <20180112112910.16762-31-wei.liu2@citrix.com> References: <20180112112910.16762-1-wei.liu2@citrix.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 1eZy6c-0001d6-Tz for xen-devel@lists.xenproject.org; Fri, 12 Jan 2018 12:06:42 +0000 In-Reply-To: <20180112112910.16762-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 Cc: wei.liu2@citrix.com List-Id: xen-devel@lists.xenproject.org RnJvbTogUm9nZXIgUGF1IE1vbm5lIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KCk1hcHBpbmcgdGhl IHBlci12Y3B1IHZjcHVfaW5mbyBhcmVhIGlzIHJlcXVpcmVkIGluIG9yZGVyIHRvIHVzZSBtb3Jl CnRoYW4gWEVOX0xFR0FDWV9NQVhfVkNQVVMuCgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9u bsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KU2lnbmVkLW9mZi1ieTogV2VpIExpdSA8d2VpLmxp dTJAY2l0cml4LmNvbT4KLS0tCkNoYW5nZXMgc2luY2UgdjE6CiAtIE1ha2UgdmNwdV9pbmZvX21h cHBlZCBzdGF0aWMuCiAtIEFkZCBhIEJVR19PTiBpbiBjYXNlIFZDUFVPUF9yZWdpc3Rlcl92Y3B1 X2luZm8gZmFpbHMuCiAtIFJlbW92ZSBvbmUgaW5kZW50YXRpb24gbGV2ZWwgaW4gaHlwZXJ2aXNv cl9zZXR1cC4KIC0gTWFrZSB4ZW5faHlwZXJjYWxsX3ZjcHVfb3AgcmV0dXJuIGludC4KLS0tCiB4 ZW4vYXJjaC94ODYvZ3Vlc3QveGVuLmMgICAgICAgICAgICAgIHwgNTcgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKIHhlbi9pbmNsdWRlL2FzbS14ODYvZ3Vlc3QvaHlwZXJjYWxs LmggfCAgOCArKysrKwogeGVuL2luY2x1ZGUvYXNtLXg4Ni9ndWVzdC94ZW4uaCAgICAgICB8ICAx ICsKIDMgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3hlbi9h cmNoL3g4Ni9ndWVzdC94ZW4uYyBiL3hlbi9hcmNoL3g4Ni9ndWVzdC94ZW4uYwppbmRleCBkZThj ZmM2ZTM2Li42MDYyNmVjMjFjIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvZ3Vlc3QveGVuLmMK KysrIGIveGVuL2FyY2gveDg2L2d1ZXN0L3hlbi5jCkBAIC0zOSw2ICszOSwxMCBAQCBzdGF0aWMg c3RydWN0IHJhbmdlc2V0ICptZW07CiAKIERFRklORV9QRVJfQ1BVKHVuc2lnbmVkIGludCwgdmNw dV9pZCk7CiAKK3N0YXRpYyBzdHJ1Y3QgdmNwdV9pbmZvICp2Y3B1X2luZm87CitzdGF0aWMgdW5z aWduZWQgbG9uZyB2Y3B1X2luZm9fbWFwcGVkW0JJVFNfVE9fTE9OR1MoTlJfQ1BVUyldOworREVG SU5FX1BFUl9DUFUoc3RydWN0IHZjcHVfaW5mbyAqLCB2Y3B1X2luZm8pOworCiBzdGF0aWMgdm9p ZCBfX2luaXQgZmluZF94ZW5fbGVhdmVzKHZvaWQpCiB7CiAgICAgdWludDMyX3QgZWF4LCBlYngs IGVjeCwgZWR4LCBiYXNlOwpAQCAtMTA0LDYgKzEwOCw0MSBAQCBzdGF0aWMgdm9pZCBtYXBfc2hh cmVkX2luZm8odm9pZCkKICAgICAgICAgd3JpdGVfYXRvbWljKCZYRU5fc2hhcmVkX2luZm8tPmV2 dGNobl9tYXNrW2ldLCB+MHVsKTsKIH0KIAorc3RhdGljIGludCBtYXBfdmNwdWluZm8odm9pZCkK K3sKKyAgICB1bnNpZ25lZCBpbnQgdmNwdSA9IHRoaXNfY3B1KHZjcHVfaWQpOworICAgIHN0cnVj dCB2Y3B1X3JlZ2lzdGVyX3ZjcHVfaW5mbyBpbmZvOworICAgIGludCByYzsKKworICAgIGlmICgg IXZjcHVfaW5mbyApCisgICAgeworICAgICAgICB0aGlzX2NwdSh2Y3B1X2luZm8pID0gJlhFTl9z aGFyZWRfaW5mby0+dmNwdV9pbmZvW3ZjcHVdOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisK KyAgICBpZiAoIHRlc3RfYml0KHZjcHUsIHZjcHVfaW5mb19tYXBwZWQpICkKKyAgICB7CisgICAg ICAgIHRoaXNfY3B1KHZjcHVfaW5mbykgPSAmdmNwdV9pbmZvW3ZjcHVdOworICAgICAgICByZXR1 cm4gMDsKKyAgICB9CisKKyAgICBpbmZvLm1mbiA9IHZpcnRfdG9fbWZuKCZ2Y3B1X2luZm9bdmNw dV0pOworICAgIGluZm8ub2Zmc2V0ID0gKHVuc2lnbmVkIGxvbmcpJnZjcHVfaW5mb1t2Y3B1XSAm IH5QQUdFX01BU0s7CisgICAgcmMgPSB4ZW5faHlwZXJjYWxsX3ZjcHVfb3AoVkNQVU9QX3JlZ2lz dGVyX3ZjcHVfaW5mbywgdmNwdSwgJmluZm8pOworICAgIGlmICggcmMgKQorICAgIHsKKyAgICAg ICAgQlVHX09OKHZjcHUgPj0gWEVOX0xFR0FDWV9NQVhfVkNQVVMpOworICAgICAgICB0aGlzX2Nw dSh2Y3B1X2luZm8pID0gJlhFTl9zaGFyZWRfaW5mby0+dmNwdV9pbmZvW3ZjcHVdOworICAgIH0K KyAgICBlbHNlCisgICAgeworICAgICAgICB0aGlzX2NwdSh2Y3B1X2luZm8pID0gJnZjcHVfaW5m b1t2Y3B1XTsKKyAgICAgICAgc2V0X2JpdCh2Y3B1LCB2Y3B1X2luZm9fbWFwcGVkKTsKKyAgICB9 CisKKyAgICByZXR1cm4gcmM7Cit9CisKIHN0YXRpYyB2b2lkIHNldF92Y3B1X2lkKHZvaWQpCiB7 CiAgICAgdWludDMyX3QgZWF4LCBlYngsIGVjeCwgZWR4OwpAQCAtMTU0LDExICsxOTMsMjkgQEAg dm9pZCBfX2luaXQgaHlwZXJ2aXNvcl9zZXR1cCh2b2lkKQogICAgIG1hcF9zaGFyZWRfaW5mbygp OwogCiAgICAgc2V0X3ZjcHVfaWQoKTsKKyAgICB2Y3B1X2luZm8gPSB4emFsbG9jX2FycmF5KHN0 cnVjdCB2Y3B1X2luZm8sIG5yX2NwdV9pZHMpOworICAgIGlmICggbWFwX3ZjcHVpbmZvKCkgKQor ICAgIHsKKyAgICAgICAgeGZyZWUodmNwdV9pbmZvKTsKKyAgICAgICAgdmNwdV9pbmZvID0gTlVM TDsKKyAgICB9CisgICAgaWYgKCAhdmNwdV9pbmZvICYmIG5yX2NwdV9pZHMgPiBYRU5fTEVHQUNZ X01BWF9WQ1BVUyApCisgICAgeworICAgICAgICB1bnNpZ25lZCBpbnQgaTsKKworICAgICAgICBm b3IgKCBpID0gWEVOX0xFR0FDWV9NQVhfVkNQVVM7IGkgPCBucl9jcHVfaWRzOyBpKysgKQorICAg ICAgICAgICAgX19jcHVtYXNrX2NsZWFyX2NwdShpLCAmY3B1X3ByZXNlbnRfbWFwKTsKKyAgICAg ICAgbnJfY3B1X2lkcyA9IFhFTl9MRUdBQ1lfTUFYX1ZDUFVTOworICAgICAgICBwcmludGsoWEVO TE9HX1dBUk5JTkcKKyAgICAgICAgICAgICAgICJ1bmFibGUgdG8gbWFwIHZDUFUgaW5mbywgbGlt aXRpbmcgdkNQVXMgdG86ICV1XG4iLAorICAgICAgICAgICAgICAgWEVOX0xFR0FDWV9NQVhfVkNQ VVMpOworICAgIH0KIH0KIAogdm9pZCBoeXBlcnZpc29yX2FwX3NldHVwKHZvaWQpCiB7CiAgICAg c2V0X3ZjcHVfaWQoKTsKKyAgICBtYXBfdmNwdWluZm8oKTsKIH0KIAogaW50IGh5cGVydmlzb3Jf YWxsb2NfdW51c2VkX3BhZ2UobWZuX3QgKm1mbikKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2Fz bS14ODYvZ3Vlc3QvaHlwZXJjYWxsLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L2d1ZXN0L2h5cGVy Y2FsbC5oCmluZGV4IDljZDk1ZDJiOTIuLmRiYzU3YTU2NmUgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNs dWRlL2FzbS14ODYvZ3Vlc3QvaHlwZXJjYWxsLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9n dWVzdC9oeXBlcmNhbGwuaApAQCAtMjYsNiArMjYsOCBAQAogI2luY2x1ZGUgPHB1YmxpYy94ZW4u aD4KICNpbmNsdWRlIDxwdWJsaWMvc2NoZWQuaD4KIAorI2luY2x1ZGUgPHB1YmxpYy92Y3B1Lmg+ CisKIC8qCiAgKiBIeXBlcmNhbGwgcHJpbWF0aXZlcyBmb3IgNjRiaXQKICAqCkBAIC05Niw2ICs5 OCwxMiBAQCBzdGF0aWMgaW5saW5lIGxvbmcgeGVuX2h5cGVyY2FsbF9tZW1vcnlfb3AodW5zaWdu ZWQgaW50IGNtZCwgdm9pZCAqYXJnKQogICAgIHJldHVybiBfaHlwZXJjYWxsNjRfMihsb25nLCBf X0hZUEVSVklTT1JfbWVtb3J5X29wLCBjbWQsIGFyZyk7CiB9CiAKK3N0YXRpYyBpbmxpbmUgaW50 IHhlbl9oeXBlcmNhbGxfdmNwdV9vcCh1bnNpZ25lZCBpbnQgY21kLCB1bnNpZ25lZCBpbnQgdmNw dSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICphcmcpCit7 CisgICAgcmV0dXJuIF9oeXBlcmNhbGw2NF8zKGxvbmcsIF9fSFlQRVJWSVNPUl92Y3B1X29wLCBj bWQsIHZjcHUsIGFyZyk7Cit9CisKIC8qCiAgKiBIaWdoZXIgbGV2ZWwgaHlwZXJjYWxsIGhlbHBl cnMKICAqLwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9ndWVzdC94ZW4uaCBiL3hl bi9pbmNsdWRlL2FzbS14ODYvZ3Vlc3QveGVuLmgKaW5kZXggZGIzNWE5ZTYyOC4uYjNlNjg0Zjc1 NiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9ndWVzdC94ZW4uaAorKysgYi94ZW4v aW5jbHVkZS9hc20teDg2L2d1ZXN0L3hlbi5oCkBAIC0zNyw2ICszNyw3IEBAIGludCBoeXBlcnZp c29yX2FsbG9jX3VudXNlZF9wYWdlKG1mbl90ICptZm4pOwogaW50IGh5cGVydmlzb3JfZnJlZV91 bnVzZWRfcGFnZShtZm5fdCBtZm4pOwogCiBERUNMQVJFX1BFUl9DUFUodW5zaWduZWQgaW50LCB2 Y3B1X2lkKTsKK0RFQ0xBUkVfUEVSX0NQVShzdHJ1Y3QgdmNwdV9pbmZvICosIHZjcHVfaW5mbyk7 CiAKICNlbHNlCiAKLS0gCjIuMTEuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhl bnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m by94ZW4tZGV2ZWw=