From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH for-next v3 13/22] x86/traps: move toggle_guest_mode Date: Thu, 18 May 2017 18:09:55 +0100 Message-ID: <20170518171004.27204-14-wei.liu2@citrix.com> References: <20170518171004.27204-1-wei.liu2@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dBP2N-0004DS-P6 for xen-devel@lists.xenproject.org; Thu, 18 May 2017 17:16:31 +0000 In-Reply-To: <20170518171004.27204-1-wei.liu2@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper , Wei Liu , Jan Beulich List-Id: xen-devel@lists.xenproject.org TW92ZSBmcm9tIHg4Nl82NC90cmFwcy5jIHRvIHB2L3RyYXBzLmMuCgpObyBmdW5jdGlvbmFsIGNo YW5nZS4KClNpZ25lZC1vZmYtYnk6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+Ci0tLQog eGVuL2FyY2gveDg2L3B2L3RyYXBzLmMgICAgIHwgMzAgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrCiB4ZW4vYXJjaC94ODYveDg2XzY0L3RyYXBzLmMgfCAzMCAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMzAgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3B2L3RyYXBzLmMgYi94ZW4vYXJj aC94ODYvcHYvdHJhcHMuYwppbmRleCA3Yzg0MWUwNGNjLi41Yjg0YTYxN2U2IDEwMDY0NAotLS0g YS94ZW4vYXJjaC94ODYvcHYvdHJhcHMuYworKysgYi94ZW4vYXJjaC94ODYvcHYvdHJhcHMuYwpA QCAtMzMyLDYgKzMzMiwzNiBAQCBpbnQgc2VuZF9ndWVzdF90cmFwKHN0cnVjdCBkb21haW4gKmQs IHVpbnQxNl90IHZjcHVpZCwgdW5zaWduZWQgaW50IHRyYXBfbnIpCiAgICAgcmV0dXJuIC1FSU87 CiB9CiAKK3ZvaWQgdG9nZ2xlX2d1ZXN0X21vZGUoc3RydWN0IHZjcHUgKnYpCit7CisgICAgaWYg KCBpc19wdl8zMmJpdF92Y3B1KHYpICkKKyAgICAgICAgcmV0dXJuOworICAgIGlmICggY3B1X2hh c19mc2dzYmFzZSApCisgICAgeworICAgICAgICBpZiAoIHYtPmFyY2guZmxhZ3MgJiBURl9rZXJu ZWxfbW9kZSApCisgICAgICAgICAgICB2LT5hcmNoLnB2X3ZjcHUuZ3NfYmFzZV9rZXJuZWwgPSBf X3JkZ3NiYXNlKCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHYtPmFyY2gucHZfdmNwdS5n c19iYXNlX3VzZXIgPSBfX3JkZ3NiYXNlKCk7CisgICAgfQorICAgIHYtPmFyY2guZmxhZ3MgXj0g VEZfa2VybmVsX21vZGU7CisgICAgYXNtIHZvbGF0aWxlICggInN3YXBncyIgKTsKKyAgICB1cGRh dGVfY3IzKHYpOworICAgIC8qIERvbid0IGZsdXNoIHVzZXIgZ2xvYmFsIG1hcHBpbmdzIGZyb20g dGhlIFRMQi4gRG9uJ3QgdGljayBUTEIgY2xvY2suICovCisgICAgYXNtIHZvbGF0aWxlICggIm1v diAlMCwgJSVjcjMiIDogOiAiciIgKHYtPmFyY2guY3IzKSA6ICJtZW1vcnkiICk7CisKKyAgICBp ZiAoICEodi0+YXJjaC5mbGFncyAmIFRGX2tlcm5lbF9tb2RlKSApCisgICAgICAgIHJldHVybjsK KworICAgIGlmICggdi0+YXJjaC5wdl92Y3B1Lm5lZWRfdXBkYXRlX3J1bnN0YXRlX2FyZWEgJiYK KyAgICAgICAgIHVwZGF0ZV9ydW5zdGF0ZV9hcmVhKHYpICkKKyAgICAgICAgdi0+YXJjaC5wdl92 Y3B1Lm5lZWRfdXBkYXRlX3J1bnN0YXRlX2FyZWEgPSAwOworCisgICAgaWYgKCB2LT5hcmNoLnB2 X3ZjcHUucGVuZGluZ19zeXN0ZW1fdGltZS52ZXJzaW9uICYmCisgICAgICAgICB1cGRhdGVfc2Vj b25kYXJ5X3N5c3RlbV90aW1lKHYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICZ2LT5hcmNoLnB2X3ZjcHUucGVuZGluZ19zeXN0ZW1fdGltZSkgKQorICAgICAgICB2LT5h cmNoLnB2X3ZjcHUucGVuZGluZ19zeXN0ZW1fdGltZS52ZXJzaW9uID0gMDsKK30KKwogLyoKICAq IExvY2FsIHZhcmlhYmxlczoKICAqIG1vZGU6IEMKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni94 ODZfNjQvdHJhcHMuYyBiL3hlbi9hcmNoL3g4Ni94ODZfNjQvdHJhcHMuYwppbmRleCA3OGY0MTA1 MTdjLi4zNmI2OTRjNjA1IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYveDg2XzY0L3RyYXBzLmMK KysrIGIveGVuL2FyY2gveDg2L3g4Nl82NC90cmFwcy5jCkBAIC0yNTQsMzYgKzI1NCw2IEBAIHZv aWQgZG9fZG91YmxlX2ZhdWx0KHN0cnVjdCBjcHVfdXNlcl9yZWdzICpyZWdzKQogICAgIHBhbmlj KCJET1VCTEUgRkFVTFQgLS0gc3lzdGVtIHNodXRkb3duIik7CiB9CiAKLXZvaWQgdG9nZ2xlX2d1 ZXN0X21vZGUoc3RydWN0IHZjcHUgKnYpCi17Ci0gICAgaWYgKCBpc19wdl8zMmJpdF92Y3B1KHYp ICkKLSAgICAgICAgcmV0dXJuOwotICAgIGlmICggY3B1X2hhc19mc2dzYmFzZSApCi0gICAgewot ICAgICAgICBpZiAoIHYtPmFyY2guZmxhZ3MgJiBURl9rZXJuZWxfbW9kZSApCi0gICAgICAgICAg ICB2LT5hcmNoLnB2X3ZjcHUuZ3NfYmFzZV9rZXJuZWwgPSBfX3JkZ3NiYXNlKCk7Ci0gICAgICAg IGVsc2UKLSAgICAgICAgICAgIHYtPmFyY2gucHZfdmNwdS5nc19iYXNlX3VzZXIgPSBfX3JkZ3Ni YXNlKCk7Ci0gICAgfQotICAgIHYtPmFyY2guZmxhZ3MgXj0gVEZfa2VybmVsX21vZGU7Ci0gICAg YXNtIHZvbGF0aWxlICggInN3YXBncyIgKTsKLSAgICB1cGRhdGVfY3IzKHYpOwotICAgIC8qIERv bid0IGZsdXNoIHVzZXIgZ2xvYmFsIG1hcHBpbmdzIGZyb20gdGhlIFRMQi4gRG9uJ3QgdGljayBU TEIgY2xvY2suICovCi0gICAgYXNtIHZvbGF0aWxlICggIm1vdiAlMCwgJSVjcjMiIDogOiAiciIg KHYtPmFyY2guY3IzKSA6ICJtZW1vcnkiICk7Ci0KLSAgICBpZiAoICEodi0+YXJjaC5mbGFncyAm IFRGX2tlcm5lbF9tb2RlKSApCi0gICAgICAgIHJldHVybjsKLQotICAgIGlmICggdi0+YXJjaC5w dl92Y3B1Lm5lZWRfdXBkYXRlX3J1bnN0YXRlX2FyZWEgJiYKLSAgICAgICAgIHVwZGF0ZV9ydW5z dGF0ZV9hcmVhKHYpICkKLSAgICAgICAgdi0+YXJjaC5wdl92Y3B1Lm5lZWRfdXBkYXRlX3J1bnN0 YXRlX2FyZWEgPSAwOwotCi0gICAgaWYgKCB2LT5hcmNoLnB2X3ZjcHUucGVuZGluZ19zeXN0ZW1f dGltZS52ZXJzaW9uICYmCi0gICAgICAgICB1cGRhdGVfc2Vjb25kYXJ5X3N5c3RlbV90aW1lKHYs Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2LT5hcmNoLnB2X3ZjcHUu cGVuZGluZ19zeXN0ZW1fdGltZSkgKQotICAgICAgICB2LT5hcmNoLnB2X3ZjcHUucGVuZGluZ19z eXN0ZW1fdGltZS52ZXJzaW9uID0gMDsKLX0KLQogdW5zaWduZWQgbG9uZyBkb19pcmV0KHZvaWQp CiB7CiAgICAgc3RydWN0IGNwdV91c2VyX3JlZ3MgKnJlZ3MgPSBndWVzdF9jcHVfdXNlcl9yZWdz KCk7Ci0tIAoyLjExLjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0 dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK