From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [PATCH v3 1/2] xen/x86: ensure copying runstate/time to L1 rather than L2 Date: Mon, 27 Feb 2017 11:26:48 +0800 Message-ID: <20170227032649.15802-1-haozhong.zhang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: 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: Andrew Cooper , Jan Beulich , Haozhong Zhang List-Id: xen-devel@lists.xenproject.org Rm9yIGEgSFZNIGRvbWFpbiwgaWYgYSB2Y3B1IGlzIGluIHRoZSBuZXN0ZWQgZ3Vlc3QgbW9kZSwK X19yYXdfY29weV90b19ndWVzdCgpLCBfX2NvcHlfdG9fZ3Vlc3QoKSBhbmQgX19jb3B5X2ZpZWxk X3RvX2d1ZXN0KCkKdXNlZCBieSB1cGRhdGVfcnVuc3RhdGVfYXJlYSgpIGFuZCB1cGRhdGVfc2Vj b25kYXJ5X3N5c3RlbV90aW1lKCkgd2lsbApjb3B5IGRhdGEgdG8gTDIgZ3Vlc3QgcmF0aGVyIHRo YW4gdGhlIEwxIGd1ZXN0LgoKVGhpcyBjb21taXQgdGVtcG9yYWxseSBjbGVhcnMgdGhlIG5lc3Rl ZCBndWVzdCBmbGFnIGJlZm9yZSBhbGwgZ3Vlc3QKY29waWVzIGluIHVwZGF0ZV9ydW5zdGF0ZV9h cmVhKCkgYW5kIHVwZGF0ZV9zZWNvbmRhcnlfc3lzdGVtX3RpbWUoKSwKYW5kIHJlc3RvcmVzIHRo ZSBmbGFnIGFmdGVyIHRob3NlIGd1ZXN0IGNvcHkgb3BlcmF0aW9ucy4KClRoZSBmbGFnIGNsZWFy L3Jlc3RvcmUgaXMgY29tYmluZWQgd2l0aCB0aGUgZXhpc3RpbmcKc21hcF9wb2xpY3lfY2hhbmdl KCkgd2hpY2ggaXMgcmVuYW1lZCB0byB1cGRhdGVfZ3Vlc3RfbWVtb3J5X3BvbGljeSgpLgoKU2ln bmVkLW9mZi1ieTogSGFvemhvbmcgWmhhbmcgPGhhb3pob25nLnpoYW5nQGludGVsLmNvbT4KLS0t CkNoYW5nZXMgc2luY2UgdjI6CiAqIENvbWJpbmUgdGhlIGZpeCB3aXRoIGV4aXN0aW5nIHNtYXBf cG9saWN5X2NoYW5nZSgpIHdoaWNoIGlzIHJlbmFtZWQgdG8KICAgdXBkYXRlX2d1ZXN0X21lbW9y eV9wb2xpY3koKS4KLS0tCiB4ZW4vYXJjaC94ODYvZG9tYWluLmMgICAgICAgIHwgMzkgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCiB4ZW4vYXJjaC94ODYvdGltZS5jICAg ICAgICAgIHwgIDkgKysrKystLS0tCiB4ZW4vaW5jbHVkZS9hc20teDg2L2RvbWFpbi5oIHwgMTAg KysrKysrKystLQogMyBmaWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvZG9tYWluLmMgYi94ZW4vYXJjaC94ODYv ZG9tYWluLmMKaW5kZXggN2QzMDcxZS4uMGJmMTkwOSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2 L2RvbWFpbi5jCisrKyBiL3hlbi9hcmNoL3g4Ni9kb21haW4uYwpAQCAtNTAsNiArNTAsNyBAQAog I2luY2x1ZGUgPGFzbS9tcHNwZWMuaD4KICNpbmNsdWRlIDxhc20vbGR0Lmg+CiAjaW5jbHVkZSA8 YXNtL2h2bS9odm0uaD4KKyNpbmNsdWRlIDxhc20vaHZtL25lc3RlZGh2bS5oPgogI2luY2x1ZGUg PGFzbS9odm0vc3VwcG9ydC5oPgogI2luY2x1ZGUgPGFzbS9odm0vdmlyaWRpYW4uaD4KICNpbmNs dWRlIDxhc20vZGVidWdyZWcuaD4KQEAgLTIwMCwxMiArMjAxLDMzIEBAIHZvaWQgZHVtcF9wYWdl ZnJhbWVfaW5mbyhzdHJ1Y3QgZG9tYWluICpkKQogICAgIHNwaW5fdW5sb2NrKCZkLT5wYWdlX2Fs bG9jX2xvY2spOwogfQogCi1zbWFwX2NoZWNrX3BvbGljeV90IHNtYXBfcG9saWN5X2NoYW5nZShz dHJ1Y3QgdmNwdSAqdiwKLSAgICBzbWFwX2NoZWNrX3BvbGljeV90IG5ld19wb2xpY3kpCit2b2lk IHVwZGF0ZV9ndWVzdF9tZW1vcnlfcG9saWN5KHN0cnVjdCB2Y3B1ICp2LAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZ3Vlc3RfbWVtb3J5X3BvbGljeSAqcG9saWN5KQog ewotICAgIHNtYXBfY2hlY2tfcG9saWN5X3Qgb2xkX3BvbGljeSA9IHYtPmFyY2guc21hcF9jaGVj a19wb2xpY3k7Ci0gICAgdi0+YXJjaC5zbWFwX2NoZWNrX3BvbGljeSA9IG5ld19wb2xpY3k7Ci0g ICAgcmV0dXJuIG9sZF9wb2xpY3k7CisgICAgc21hcF9jaGVja19wb2xpY3lfdCBvbGRfc21hcF9w b2xpY3kgPSB2LT5hcmNoLnNtYXBfY2hlY2tfcG9saWN5OworICAgIGJvb2wgb2xkX2d1ZXN0X21v ZGUgPSBuZXN0ZWRodm1faXNfbjIodik7CisgICAgYm9vbCBuZXdfZ3Vlc3RfbW9kZSA9IHBvbGlj eS0+bmVzdGVkX2d1ZXN0X21vZGU7CisKKyAgICB2LT5hcmNoLnNtYXBfY2hlY2tfcG9saWN5ID0g cG9saWN5LT5zbWFwX3BvbGljeTsKKyAgICBwb2xpY3ktPnNtYXBfcG9saWN5ID0gb2xkX3NtYXBf cG9saWN5OworCisgICAgLyoKKyAgICAgKiBXaGVuICd2JyBpcyBpbiB0aGUgbmVzdGVkIGd1ZXN0 IG1vZGUsIGFsbCBndWVzdCBjb3B5CisgICAgICogZnVuY3Rpb25zL21hY3JvcyB3aGljaCBmaW5h bGx5IGNhbGwgcGFnaW5nX2d2YV90b19nZm4oKQorICAgICAqIHRyYW5zZmVyIGRhdGEgdG8vZnJv bSBMMiBndWVzdC4gSWYgdGhlIGNvcHkgaXMgaW50ZW5kZWQgZm9yIEwxCisgICAgICogZ3Vlc3Qs IHdlIG11c3QgZmlyc3QgY2xlYXIgdGhlIG5lc3RlZCBndWVzdCBmbGFnIChieSBzZXR0aW5nCisg ICAgICogcG9saWN5LT5uZXN0ZWRfZ3Vlc3RfbW9kZSB0byBmYWxzZSkgYmVmb3JlIHRoZSBjb3B5 IGFuZCB0aGVuCisgICAgICogcmVzdG9yZSB0aGUgbmVzdGVkIGd1ZXN0IGZsYWcgKGJ5IHNldHRp bmcKKyAgICAgKiBwb2xpY3ktPm5lc3RlZF9ndWVzdF9tb2RlIHRvIHRydWUpIGFmdGVyIHRoZSBj b3B5LgorICAgICAqLworICAgIGlmICggdW5saWtlbHkob2xkX2d1ZXN0X21vZGUgIT0gbmV3X2d1 ZXN0X21vZGUpICkKKyAgICB7CisgICAgICAgIGlmICggbmV3X2d1ZXN0X21vZGUgKQorICAgICAg ICAgICAgbmVzdGVkaHZtX3ZjcHVfZW50ZXJfZ3Vlc3Rtb2RlKHYpOworICAgICAgICBlbHNlCisg ICAgICAgICAgICBuZXN0ZWRodm1fdmNwdV9leGl0X2d1ZXN0bW9kZSh2KTsKKyAgICAgICAgcG9s aWN5LT5uZXN0ZWRfZ3Vlc3RfbW9kZSA9IG9sZF9ndWVzdF9tb2RlOworICAgIH0KIH0KIAogI2lm bmRlZiBDT05GSUdfQklHTUVNCkBAIC0xOTI5LDEzICsxOTUxLDE0IEBAIHN0YXRpYyB2b2lkIHBh cmF2aXJ0X2N0eHRfc3dpdGNoX3RvKHN0cnVjdCB2Y3B1ICp2KQogYm9vbF90IHVwZGF0ZV9ydW5z dGF0ZV9hcmVhKHN0cnVjdCB2Y3B1ICp2KQogewogICAgIGJvb2xfdCByYzsKLSAgICBzbWFwX2No ZWNrX3BvbGljeV90IHNtYXBfcG9saWN5OworICAgIHN0cnVjdCBndWVzdF9tZW1vcnlfcG9saWN5 IHBvbGljeSA9CisgICAgICAgIHsgLnNtYXBfcG9saWN5ID0gU01BUF9DSEVDS19FTkFCTEVELCAu bmVzdGVkX2d1ZXN0X21vZGUgPSBmYWxzZSB9OwogICAgIHZvaWQgX191c2VyICpndWVzdF9oYW5k bGUgPSBOVUxMOwogCiAgICAgaWYgKCBndWVzdF9oYW5kbGVfaXNfbnVsbChydW5zdGF0ZV9ndWVz dCh2KSkgKQogICAgICAgICByZXR1cm4gMTsKIAotICAgIHNtYXBfcG9saWN5ID0gc21hcF9wb2xp Y3lfY2hhbmdlKHYsIFNNQVBfQ0hFQ0tfRU5BQkxFRCk7CisgICAgdXBkYXRlX2d1ZXN0X21lbW9y eV9wb2xpY3kodiwgJnBvbGljeSk7CiAKICAgICBpZiAoIFZNX0FTU0lTVCh2LT5kb21haW4sIHJ1 bnN0YXRlX3VwZGF0ZV9mbGFnKSApCiAgICAgewpAQCAtMTk2OSw3ICsxOTkyLDcgQEAgYm9vbF90 IHVwZGF0ZV9ydW5zdGF0ZV9hcmVhKHN0cnVjdCB2Y3B1ICp2KQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICh2b2lkICopKCZ2LT5ydW5zdGF0ZS5zdGF0ZV9lbnRyeV90aW1lICsgMSkgLSAx LCAxKTsKICAgICB9CiAKLSAgICBzbWFwX3BvbGljeV9jaGFuZ2Uodiwgc21hcF9wb2xpY3kpOwor ICAgIHVwZGF0ZV9ndWVzdF9tZW1vcnlfcG9saWN5KHYsICZwb2xpY3kpOwogCiAgICAgcmV0dXJu IHJjOwogfQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3RpbWUuYyBiL3hlbi9hcmNoL3g4Ni90 aW1lLmMKaW5kZXggM2FkMmFiMC4uZmFhNjM4YiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L3Rp bWUuYworKysgYi94ZW4vYXJjaC94ODYvdGltZS5jCkBAIC05OTEsMTcgKzk5MSwxOCBAQCBib29s X3QgdXBkYXRlX3NlY29uZGFyeV9zeXN0ZW1fdGltZShzdHJ1Y3QgdmNwdSAqdiwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCB2Y3B1X3RpbWVfaW5mbyAqdSkKIHsK ICAgICBYRU5fR1VFU1RfSEFORExFKHZjcHVfdGltZV9pbmZvX3QpIHVzZXJfdSA9IHYtPmFyY2gu dGltZV9pbmZvX2d1ZXN0OwotICAgIHNtYXBfY2hlY2tfcG9saWN5X3Qgc2F2ZWRfcG9saWN5Owor ICAgIHN0cnVjdCBndWVzdF9tZW1vcnlfcG9saWN5IHBvbGljeSA9CisgICAgICAgIHsgLnNtYXBf cG9saWN5ID0gU01BUF9DSEVDS19FTkFCTEVELCAubmVzdGVkX2d1ZXN0X21vZGUgPSBmYWxzZSB9 OwogCiAgICAgaWYgKCBndWVzdF9oYW5kbGVfaXNfbnVsbCh1c2VyX3UpICkKICAgICAgICAgcmV0 dXJuIDE7CiAKLSAgICBzYXZlZF9wb2xpY3kgPSBzbWFwX3BvbGljeV9jaGFuZ2UodiwgU01BUF9D SEVDS19FTkFCTEVEKTsKKyAgICB1cGRhdGVfZ3Vlc3RfbWVtb3J5X3BvbGljeSh2LCAmcG9saWN5 KTsKIAogICAgIC8qIDEuIFVwZGF0ZSB1c2Vyc3BhY2UgdmVyc2lvbi4gKi8KICAgICBpZiAoIF9f Y29weV9maWVsZF90b19ndWVzdCh1c2VyX3UsIHUsIHZlcnNpb24pID09IHNpemVvZih1LT52ZXJz aW9uKSApCiAgICAgewotICAgICAgICBzbWFwX3BvbGljeV9jaGFuZ2Uodiwgc2F2ZWRfcG9saWN5 KTsKKyAgICAgICAgdXBkYXRlX2d1ZXN0X21lbW9yeV9wb2xpY3kodiwgJnBvbGljeSk7CiAgICAg ICAgIHJldHVybiAwOwogICAgIH0KICAgICB3bWIoKTsKQEAgLTEwMTIsNyArMTAxMyw3IEBAIGJv b2xfdCB1cGRhdGVfc2Vjb25kYXJ5X3N5c3RlbV90aW1lKHN0cnVjdCB2Y3B1ICp2LAogICAgIHUt PnZlcnNpb24gPSB2ZXJzaW9uX3VwZGF0ZV9lbmQodS0+dmVyc2lvbik7CiAgICAgX19jb3B5X2Zp ZWxkX3RvX2d1ZXN0KHVzZXJfdSwgdSwgdmVyc2lvbik7CiAKLSAgICBzbWFwX3BvbGljeV9jaGFu Z2Uodiwgc2F2ZWRfcG9saWN5KTsKKyAgICB1cGRhdGVfZ3Vlc3RfbWVtb3J5X3BvbGljeSh2LCAm cG9saWN5KTsKIAogICAgIHJldHVybiAxOwogfQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNt LXg4Ni9kb21haW4uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmgKaW5kZXggMjgzOWE3 My4uN2IwNWM4NCAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaAorKysg Yi94ZW4vaW5jbHVkZS9hc20teDg2L2RvbWFpbi5oCkBAIC01NzcsOCArNTc3LDE0IEBAIHN0cnVj dCBhcmNoX3ZjcHUKICAgICB9IG1vbml0b3I7CiB9OwogCi1zbWFwX2NoZWNrX3BvbGljeV90IHNt YXBfcG9saWN5X2NoYW5nZShzdHJ1Y3QgdmNwdSAqdiwKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHNtYXBfY2hlY2tfcG9saWN5X3QgbmV3X3BvbGljeSk7CitzdHJ1Y3Qg Z3Vlc3RfbWVtb3J5X3BvbGljeQoreworICAgIHNtYXBfY2hlY2tfcG9saWN5X3Qgc21hcF9wb2xp Y3k7CisgICAgYm9vbCBuZXN0ZWRfZ3Vlc3RfbW9kZTsKK307CisKK3ZvaWQgdXBkYXRlX2d1ZXN0 X21lbW9yeV9wb2xpY3koc3RydWN0IHZjcHUgKnYsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHN0cnVjdCBndWVzdF9tZW1vcnlfcG9saWN5ICpwb2xpY3kpOwogCiAvKiBTaG9ydGhh bmRzIHRvIGltcHJvdmUgY29kZSBsZWdpYmlsaXR5LiAqLwogI2RlZmluZSBodm1fdm14ICAgICAg ICAgaHZtX3ZjcHUudS52bXgKLS0gCjIuMTAuMQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxp c3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=