From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Chen Subject: [PATCH v3 03/19] xen/arm: Set and restore HCR_EL2 register for each vCPU separately Date: Fri, 31 Mar 2017 21:07:43 +0800 Message-ID: <1490965679-619-4-git-send-email-Wei.Chen@arm.com> References: <1490965679-619-1-git-send-email-Wei.Chen@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1490965679-619-1-git-send-email-Wei.Chen@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: sstabellini@kernel.org, wei.chen@arm.com, steve.capper@arm.com, Kaly.Xin@arm.com, julien.grall@arm.com, nd@arm.com List-Id: xen-devel@lists.xenproject.org RGlmZmVyZW50IGRvbWFpbnMgbWF5IGhhdmUgZGlmZmVyZW50IEhDUl9FTDIgZmxhZ3MuIEZvciBl eGFtcGxlLCB0aGUKNjQtYml0IGRvbWFpbiBuZWVkcyBIQ1JfUlcgZmxhZyBidXQgdGhlIDMyLWJp dCBkb2VzIG5vdCBuZWVkIGl0LiBTbwp3ZSBnaXZlIGVhY2ggZG9tYWluIGEgZGVmYXVsdCBIQ1Jf RUwyIHZhbHVlIGFuZCBzYXZlIGl0IGluIHRoZSB2Q1BVJ3MKY29udGV4dC4KCkhDUl9FTDIgcmVn aXN0ZXIgaGFzIG9ubHkgb25lIGJpdCBjYW4gYmUgdXBkYXRlZCBhdXRvbWF0aWNhbGx5IHdpdGhv dXQKZXhwbGljaXQgd3JpdGUgKEhDUl9WU0UpLiBCdXQgd2UgaGF2ZW4ndCB1c2VkIHRoaXMgYml0 IGN1cnJlbnRseSwgc28Kd2UgY2FuIGNvbnNpZGVyIHRoYXQgdGhlIEhDUl9FTDIgcmVnaXN0ZXIg d2lsbCBub3QgYmUgbW9kaWZpZWQgd2hpbGUKdGhlIGd1ZXN0IGlzIHJ1bm5pbmcuIFNvIHNhdmUg dGhlIEhDUl9FTDIgd2hpbGUgZ3Vlc3QgZXhpdGluZyB0bwpoeXBlcnZpc29yIGlzIG5vdCBuZWNj ZXNzYXJ5LiBXZSBqdXN0IGhhdmUgdG8gcmVzdG9yZSB0aGlzIHJlZ2lzdGVyIGZvcgplYWNoIHZD UFUgd2hpbGUgY29udGV4dCBzd2l0Y2hpbmcuCgpUaGUgcDJtX3Jlc3RvcmVfc3RhdGUgd2hpY2gg d2lsbCBiZSBpbnZva2VkIGluIGNvbnRleHQgc3dpdGNoIHByb2dyZXNzCmhhcyBpbmNsdWRlZCB0 aGUgd3JpdGluZyBvZiBIQ1JfRUwyIGFscmVhZHkuIEl0IHVwZGF0ZXMgdGhlIEhDUl9FTDIuUlcK Yml0IHRvIHRlbGwgdGhlIGhhcmR3YXJlIGhvdyB0byBpbnRlcnByZXQgdGhlIHN0YWdlLTEgcGFn ZSB0YWJsZSBhcyB0aGUKZW5jb2RpbmdzIGFyZSBkaWZmZXJlbnQgYmV0d2VlbiBBQXJjaDY0IGFu ZCBBQXJjaDMyLiBXZSBjYW4gcmV1c2UgdGhpcwp3cml0ZSB0byByZXN0b3JlIHRoZSBIQ1JfRUwy IGZvciBlYWNoIHZDUFUuIE9mIGNvdXJzZSwgdGhlIHZhbHVlIG9mIGVhY2gKdkNQVSdzIEhDUl9F TDIgc2hvdWxkIGJlIGFkanVzdGVkIHRvIGhhdmUgcHJvcGVyIEhDUl9FTDIuUlcgYml0IGluIHRo aXMKZnVuY3Rpb24uIEluIHRoZSBsYXRlciBwYXRjaCBvZiB0aGlzIHNlcmllcywgd2Ugd2lsbCBz ZXQgdGhlIEhDUl9FTDIuUlcKZm9yIGVhY2ggdkNQVSB3aGlsZSB0aGUgZG9tYWluIGlzIGNyZWF0 aW5nLgoKU2lnbmVkLW9mZi1ieTogd2VpIGNoZW4gPFdlaS5DaGVuQGFybS5jb20+Ci0tLQp2Mi0+ djM6CjEuIFNxdWFzaCAjMiAjMyBwYXRjaHMgb2YgdjIgaW50byB0aGlzIHBhdGNoLgoyLiBSZW1v dmUgSENSX0VMMiBpbml0aWFsaXphdGlvbiBvZiBpZGxlIHZDUFUsIGl0IHdvdWxkIGJlIHVzZWQu CjMuIFJldmVydCB0aGUgY2hhbmdlIG9mIHZ3ZmkuCjQuIFVzZSB0aGUgaGVscGVyIHRoYXQgaW50 cm9kdWNlZCBpbiBwcmV2aW91cyBwYXRjaCB0byBpbml0aWFsaXplCiAgIEhDUl9FTDIgZm9yIGVh Y2ggdkNQVS4KNS4gUmVzdG9yZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgSENSX0VMMiBpbiBpbml0 X3RyYXBzLgotLS0KIHhlbi9hcmNoL2FybS9kb21haW4uYyAgICAgICAgfCAyICsrCiB4ZW4vYXJj aC9hcm0vcDJtLmMgICAgICAgICAgIHwgOSArKystLS0tLS0KIHhlbi9pbmNsdWRlL2FzbS1hcm0v ZG9tYWluLmggfCAzICsrKwogMyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDYgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2RvbWFpbi5jIGIveGVuL2FyY2gv YXJtL2RvbWFpbi5jCmluZGV4IGJiMzI3ZGEuLjVkMThiYjAgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNo L2FybS9kb21haW4uYworKysgYi94ZW4vYXJjaC9hcm0vZG9tYWluLmMKQEAgLTUxMyw2ICs1MTMs OCBAQCBpbnQgdmNwdV9pbml0aWFsaXNlKHN0cnVjdCB2Y3B1ICp2KQogCiAgICAgdi0+YXJjaC5h Y3RsciA9IFJFQURfU1lTUkVHMzIoQUNUTFJfRUwxKTsKIAorICAgIHYtPmFyY2guaGNyX2VsMiA9 IGdldF9kZWZhdWx0X2hjcl9mbGFncygpOworCiAgICAgcHJvY2Vzc29yX3ZjcHVfaW5pdGlhbGlz ZSh2KTsKIAogICAgIGlmICggKHJjID0gdmNwdV92Z2ljX2luaXQodikpICE9IDAgKQpkaWZmIC0t Z2l0IGEveGVuL2FyY2gvYXJtL3AybS5jIGIveGVuL2FyY2gvYXJtL3AybS5jCmluZGV4IDYyNjM3 NjAuLjgzYzRiN2QgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9wMm0uYworKysgYi94ZW4vYXJj aC9hcm0vcDJtLmMKQEAgLTEyOCwyNyArMTI4LDI0IEBAIHZvaWQgcDJtX3NhdmVfc3RhdGUoc3Ry dWN0IHZjcHUgKnApCiAKIHZvaWQgcDJtX3Jlc3RvcmVfc3RhdGUoc3RydWN0IHZjcHUgKm4pCiB7 Ci0gICAgcmVnaXN0ZXJfdCBoY3I7CiAgICAgc3RydWN0IHAybV9kb21haW4gKnAybSA9ICZuLT5k b21haW4tPmFyY2gucDJtOwogICAgIHVpbnQ4X3QgKmxhc3RfdmNwdV9yYW47CiAKICAgICBpZiAo IGlzX2lkbGVfdmNwdShuKSApCiAgICAgICAgIHJldHVybjsKIAotICAgIGhjciA9IFJFQURfU1lT UkVHKEhDUl9FTDIpOwotCiAgICAgV1JJVEVfU1lTUkVHNjQocDJtLT52dHRiciwgVlRUQlJfRUwy KTsKICAgICBpc2IoKTsKIAogICAgIGlmICggaXNfMzJiaXRfZG9tYWluKG4tPmRvbWFpbikgKQot ICAgICAgICBoY3IgJj0gfkhDUl9SVzsKKyAgICAgICAgbi0+YXJjaC5oY3JfZWwyICY9IH5IQ1Jf Ulc7CiAgICAgZWxzZQotICAgICAgICBoY3IgfD0gSENSX1JXOworICAgICAgICBuLT5hcmNoLmhj cl9lbDIgfD0gSENSX1JXOwogCiAgICAgV1JJVEVfU1lTUkVHKG4tPmFyY2guc2N0bHIsIFNDVExS X0VMMSk7CiAgICAgaXNiKCk7CiAKLSAgICBXUklURV9TWVNSRUcoaGNyLCBIQ1JfRUwyKTsKKyAg ICBXUklURV9TWVNSRUcobi0+YXJjaC5oY3JfZWwyLCBIQ1JfRUwyKTsKICAgICBpc2IoKTsKIAog ICAgIGxhc3RfdmNwdV9yYW4gPSAmcDJtLT5sYXN0X3ZjcHVfcmFuW3NtcF9wcm9jZXNzb3JfaWQo KV07CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20tYXJtL2RvbWFpbi5oIGIveGVuL2luY2x1 ZGUvYXNtLWFybS9kb21haW4uaAppbmRleCAwOWZlNTAyLi43YjFkYWNjIDEwMDY0NAotLS0gYS94 ZW4vaW5jbHVkZS9hc20tYXJtL2RvbWFpbi5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vZG9t YWluLmgKQEAgLTIwNCw2ICsyMDQsOSBAQCBzdHJ1Y3QgYXJjaF92Y3B1CiAgICAgcmVnaXN0ZXJf dCB0cGlkcl9lbDE7CiAgICAgcmVnaXN0ZXJfdCB0cGlkcnJvX2VsMDsKIAorICAgIC8qIEhZUCBj b25maWd1cmF0aW9uICovCisgICAgcmVnaXN0ZXJfdCBoY3JfZWwyOworCiAgICAgdWludDMyX3Qg dGVlY3IsIHRlZWhicjsgLyogVGh1bWJFRSwgMzItYml0IGd1ZXN0cyBvbmx5ICovCiAjaWZkZWYg Q09ORklHX0FSTV8zMgogICAgIC8qCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVs QGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=