From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH RFC 21/44] x86/smp: Switch to using the percpu IDT mappings Date: Thu, 4 Jan 2018 20:21:46 +0000 Message-ID: <1515097329-31902-22-git-send-email-andrew.cooper3@citrix.com> References: <1515097329-31902-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1515097329-31902-1-git-send-email-andrew.cooper3@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: Andrew Cooper List-Id: xen-devel@lists.xenproject.org VGhlIGxvYWRpbmcgb2YgSURUUiBpcyBtb3ZlZCBvdXQgb2YgbG9hZF9zeXN0ZW1fdGFibGVzKCkg YW5kIGludG8KZWFybHlfc3dpdGNoX3RvX2lkbGUoKS4KCk9uZSBjb21wbGljYXRpb24gZm9yIHRo ZSBCU1AgaXMgdGhhdCBJU1QgcmVmZXJlbmNlcyBzdGlsbCBuZWVkIHRvIHJlbWFpbgp1bmluaXRh bGlzZWQgdW50aWwgcmVpbml0X2JzcF9zdGFjaygpLiAgVGhlcmVmb3JlLCBlYXJseV9zd2l0Y2hf dG9faWRsZSgpIGlzCmV4dGVuZGVkIHRvIHRha2UgYSBic3AgYm9vbGVhbi4KCkZvciBWVC14IGd1 ZXN0cywgSE9TVF9JRFRSX0JBU0UgbmVlZHMgYWx0ZXJpbmcsIHNvIGEgI1ZNRXhpdCBkb2Vzbid0 IGNoYW5nZQp0aGUgbWFwcGluZ3Mgd2UgdXNlLiAgQXMgdGhpcyBpcyBub3cgYSBjb21waWxlLXRp bWUgY29uc3RhbnQsIGl0IG1vdmVzIGZyb20Kdm14X3NldF9ob3N0X2VudigpIHRvIGNvbnN0cnVj dF92bWNzKCkgdG8gYXZvaWQgcmV3cml0aW5nIGl0IG9uIGV2ZXJ5IGNvbnRleHQKc3dpdGNoLgoK U2lnbmVkLW9mZi1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4K LS0tCiB4ZW4vYXJjaC94ODYvY3B1L2NvbW1vbi5jICAgIHwgIDggLS0tLS0tLS0KIHhlbi9hcmNo L3g4Ni9odm0vdm14L3ZtY3MuYyAgfCAgNCArKystCiB4ZW4vYXJjaC94ODYvc2V0dXAuYyAgICAg ICAgIHwgMjQgKysrKysrKysrKysrKysrKysrKysrKy0tCiB4ZW4vYXJjaC94ODYvc21wYm9vdC5j ICAgICAgIHwgIDIgKy0KIHhlbi9pbmNsdWRlL2FzbS14ODYvc3lzdGVtLmggfCAgMiArLQogNSBm aWxlcyBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS94ZW4vYXJjaC94ODYvY3B1L2NvbW1vbi5jIGIveGVuL2FyY2gveDg2L2NwdS9jb21tb24u YwppbmRleCBiMThlMGY0Li4xNDc0M2I2IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvY3B1L2Nv bW1vbi5jCisrKyBiL3hlbi9hcmNoL3g4Ni9jcHUvY29tbW9uLmMKQEAgLTY0NCw3ICs2NDQsNiBA QCB2b2lkIF9faW5pdCBlYXJseV9jcHVfaW5pdCh2b2lkKQogICovCiB2b2lkIGxvYWRfc3lzdGVt X3RhYmxlcyh2b2lkKQogewotCXVuc2lnbmVkIGludCBjcHUgPSBzbXBfcHJvY2Vzc29yX2lkKCk7 CiAJdW5zaWduZWQgbG9uZyBzdGFja19ib3R0b20gPSBnZXRfc3RhY2tfYm90dG9tKCksCiAJCXN0 YWNrX3RvcCA9IHN0YWNrX2JvdHRvbSAmIH4oU1RBQ0tfU0laRSAtIDEpOwogCkBAIC02NTgsMTAg KzY1Nyw2IEBAIHZvaWQgbG9hZF9zeXN0ZW1fdGFibGVzKHZvaWQpCiAJCS5iYXNlID0gKHVuc2ln bmVkIGxvbmcpZ2R0LAogCQkubGltaXQgPSBMQVNUX1JFU0VSVkVEX0dEVF9CWVRFLAogCX07Ci0J Y29uc3Qgc3RydWN0IGRlc2NfcHRyIGlkdHIgPSB7Ci0JCS5iYXNlID0gKHVuc2lnbmVkIGxvbmcp aWR0X3RhYmxlc1tjcHVdLAotCQkubGltaXQgPSAoSURUX0VOVFJJRVMgKiBzaXplb2YoaWR0X2Vu dHJ5X3QpKSAtIDEsCi0JfTsKIAogCSp0c3MgPSAoc3RydWN0IHRzc19zdHJ1Y3QpewogCQkvKiBN YWluIHN0YWNrIGZvciBpbnRlcnJ1cHRzL2V4Y2VwdGlvbnMuICovCkBAIC02OTksMTIgKzY5NCw5 IEBAIHZvaWQgbG9hZF9zeXN0ZW1fdGFibGVzKHZvaWQpCiAJCVNZU19ERVNDX3Rzc19idXN5KTsK IAogCWxnZHQoJmdkdHIpOwotCWxpZHQoJmlkdHIpOwogCWx0cihUU1NfRU5UUlkgPDwgMyk7CiAJ bGxkdCgwKTsKIAotCWVuYWJsZV9lYWNoX2lzdChpZHRfdGFibGVzW2NwdV0pOwotCiAJLyoKIAkg KiBCb3R0b20tb2Ytc3RhY2sgbXVzdCBiZSAxNi1ieXRlIGFsaWduZWQhCiAJICoKZGlmZiAtLWdp dCBhL3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZtY3MuYyBiL3hlbi9hcmNoL3g4Ni9odm0vdm14L3Zt Y3MuYwppbmRleCBlNzgxOGNhLi5mOTlmMWJiIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvaHZt L3ZteC92bWNzLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm1jcy5jCkBAIC04MDQsNyAr ODA0LDYgQEAgc3RhdGljIHZvaWQgdm14X3NldF9ob3N0X2VudihzdHJ1Y3QgdmNwdSAqdikKIAog ICAgIF9fdm13cml0ZShIT1NUX0dEVFJfQkFTRSwKICAgICAgICAgICAgICAgKHVuc2lnbmVkIGxv bmcpKHRoaXNfY3B1KGdkdF90YWJsZSkgLSBGSVJTVF9SRVNFUlZFRF9HRFRfRU5UUlkpKTsKLSAg ICBfX3Ztd3JpdGUoSE9TVF9JRFRSX0JBU0UsICh1bnNpZ25lZCBsb25nKWlkdF90YWJsZXNbY3B1 XSk7CiAKICAgICBfX3Ztd3JpdGUoSE9TVF9UUl9CQVNFLCAodW5zaWduZWQgbG9uZykmcGVyX2Nw dShpbml0X3RzcywgY3B1KSk7CiAKQEAgLTExMzMsNiArMTEzMiw5IEBAIHN0YXRpYyBpbnQgY29u c3RydWN0X3ZtY3Moc3RydWN0IHZjcHUgKnYpCiAgICAgLyogRGlzYWJsZSBQTUwgYW55d2F5IGhl cmUgYXMgaXQgd2lsbCBvbmx5IGJlIGVuYWJsZWQgaW4gbG9nIGRpcnR5IG1vZGUgKi8KICAgICB2 LT5hcmNoLmh2bV92bXguc2Vjb25kYXJ5X2V4ZWNfY29udHJvbCAmPSB+U0VDT05EQVJZX0VYRUNf RU5BQkxFX1BNTDsKIAorICAgIC8qIEhvc3Qgc3lzdGVtIHRhYmxlcy4gKi8KKyAgICBfX3Ztd3Jp dGUoSE9TVF9JRFRSX0JBU0UsIFBFUkNQVV9JRFRfTUFQUElORyk7CisKICAgICAvKiBIb3N0IGRh dGEgc2VsZWN0b3JzLiAqLwogICAgIF9fdm13cml0ZShIT1NUX1NTX1NFTEVDVE9SLCBfX0hZUEVS VklTT1JfRFMpOwogICAgIF9fdm13cml0ZShIT1NUX0RTX1NFTEVDVE9SLCBfX0hZUEVSVklTT1Jf RFMpOwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3NldHVwLmMgYi94ZW4vYXJjaC94ODYvc2V0 dXAuYwppbmRleCA1ZmE3MGJkLi42NjJjMzgzIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvc2V0 dXAuYworKysgYi94ZW4vYXJjaC94ODYvc2V0dXAuYwpAQCAtMjM3LDEyICsyMzcsMjUgQEAgdm9p ZCBfX2luaXQgZGlzY2FyZF9pbml0aWFsX2ltYWdlcyh2b2lkKQogCiBleHRlcm4gY2hhciBfX2lu aXRfYmVnaW5bXSwgX19pbml0X2VuZFtdLCBfX2Jzc19zdGFydFtdLCBfX2Jzc19lbmRbXTsKIAot dm9pZCBlYXJseV9zd2l0Y2hfdG9faWRsZSh2b2lkKQordm9pZCBlYXJseV9zd2l0Y2hfdG9faWRs ZShib29sIGJzcCkKIHsKICAgICB1bnNpZ25lZCBpbnQgY3B1ID0gc21wX3Byb2Nlc3Nvcl9pZCgp OwogICAgIHN0cnVjdCB2Y3B1ICp2ID0gaWRsZV92Y3B1W2NwdV07CiAgICAgdW5zaWduZWQgbG9u ZyBjcjQgPSByZWFkX2NyNCgpOwogCisgICAgLyoKKyAgICAgKiBWVC14IGhhcmR3aXJlcyB0aGUg SURUIGxpbWl0IGF0IDB4ZmZmZiBvbiBWTUV4aXQuCisgICAgICoKKyAgICAgKiBXZSBkb24ndCB3 aXNoIHRvIHJlbG9hZCBvbiB2Y3B1IGNvbnRleHQgc3dpdGNoLCBzbyBoYXZlIGFycmFuZ2VkIGZv cgorICAgICAqIG5vdGhpbmcgZWxzZSB0byBsaXZlIHdpdGhpbiA2NGsgb2YgdGhlIGJhc2UuICBV bmlsYXRlcmFsbHkgc2V0dGluZyB0aGUKKyAgICAgKiBsaW1pdCB0byAweGZmZmYgYXZvaWRzIGxl YWtpbmcgd2hldGhlciBIVk0gdmNwdXMgYXJlIHJ1bm5pbmcgdG8gUFYKKyAgICAgKiBndWVzdHMg dmlhIFNJRFQuCisgICAgICovCisgICAgY29uc3Qgc3RydWN0IGRlc2NfcHRyIGlkdHIgPSB7Cisg ICAgICAgIC5iYXNlID0gUEVSQ1BVX0lEVF9NQVBQSU5HLAorICAgICAgICAubGltaXQgPSAweGZm ZmYsCisgICAgfTsKKwogICAgIHNldF9jdXJyZW50KHYpOwogICAgIHBlcl9jcHUoY3Vycl92Y3B1 LCBjcHUpID0gdjsKIApAQCAtMjU3LDEyICsyNzAsMTcgQEAgdm9pZCBlYXJseV9zd2l0Y2hfdG9f aWRsZSh2b2lkKQogICAgICAgICAgICAgICAgICAgIDogIm1lbW9yeSIgKTsKIAogICAgIHBlcl9j cHUoY3Vycl9wdGJhc2UsIGNwdSkgPSB2LT5hcmNoLmNyMzsKKworICAgIGxpZHQoJmlkdHIpOwor CisgICAgaWYgKCBsaWtlbHkoIWJzcCkgKSAvKiBCU1AgSVNUIHNldHVwIGRlZmVycmVkLiAqLwor ICAgICAgICBlbmFibGVfZWFjaF9pc3QoaWR0X3RhYmxlc1tjcHVdKTsKIH0KIAogc3RhdGljIHZv aWQgX19pbml0IGluaXRfaWRsZV9kb21haW4odm9pZCkKIHsKICAgICBzY2hlZHVsZXJfaW5pdCgp OwotICAgIGVhcmx5X3N3aXRjaF90b19pZGxlKCk7CisgICAgZWFybHlfc3dpdGNoX3RvX2lkbGUo dHJ1ZSk7CiB9CiAKIHZvaWQgc3JhdF9kZXRlY3Rfbm9kZShpbnQgY3B1KQpAQCAtNjMxLDYgKzY0 OSw4IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBub3JldHVybiByZWluaXRfYnNwX3N0YWNrKHZvaWQp CiAgICAgLyogVXBkYXRlIFRTUyBhbmQgSVNUcyAqLwogICAgIGxvYWRfc3lzdGVtX3RhYmxlcygp OwogCisgICAgZW5hYmxlX2VhY2hfaXN0KGlkdF90YWJsZXNbMF0pOworCiAgICAgLyogVXBkYXRl IFNZU0NBTEwgdHJhbXBvbGluZXMgKi8KICAgICBwZXJjcHVfdHJhcHNfaW5pdCgpOwogCmRpZmYg LS1naXQgYS94ZW4vYXJjaC94ODYvc21wYm9vdC5jIGIveGVuL2FyY2gveDg2L3NtcGJvb3QuYwpp bmRleCA0ZGY3Nzc1Li43ZjAyZGQ4IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvc21wYm9vdC5j CisrKyBiL3hlbi9hcmNoL3g4Ni9zbXBib290LmMKQEAgLTMxMSw3ICszMTEsNyBAQCB2b2lkIHN0 YXJ0X3NlY29uZGFyeSh2b2lkICp1bnVzZWQpCiAgICAgc2V0X3Byb2Nlc3Nvcl9pZChjcHUpOwog ICAgIGdldF9jcHVfaW5mbygpLT5jcjQgPSBYRU5fTUlOSU1BTF9DUjQ7CiAKLSAgICBlYXJseV9z d2l0Y2hfdG9faWRsZSgpOworICAgIGVhcmx5X3N3aXRjaF90b19pZGxlKGZhbHNlKTsKIAogICAg IHJkbXNybChNU1JfRUZFUiwgdGhpc19jcHUoZWZlcikpOwogCmRpZmYgLS1naXQgYS94ZW4vaW5j bHVkZS9hc20teDg2L3N5c3RlbS5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9zeXN0ZW0uaAppbmRl eCBlZTU3NjMxLi41Y2Y4ODI3IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L3N5c3Rl bS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvc3lzdGVtLmgKQEAgLTIzMCw3ICsyMzAsNyBA QCBzdGF0aWMgaW5saW5lIGludCBsb2NhbF9pcnFfaXNfZW5hYmxlZCh2b2lkKQogCiB2b2lkIHRy YXBfaW5pdCh2b2lkKTsKIHZvaWQgaW5pdF9pZHRfdHJhcHModm9pZCk7Ci12b2lkIGVhcmx5X3N3 aXRjaF90b19pZGxlKHZvaWQpOwordm9pZCBlYXJseV9zd2l0Y2hfdG9faWRsZShib29sIGJzcCk7 CiB2b2lkIGxvYWRfc3lzdGVtX3RhYmxlcyh2b2lkKTsKIHZvaWQgcGVyY3B1X3RyYXBzX2luaXQo dm9pZCk7CiB2b2lkIHN1YmFyY2hfcGVyY3B1X3RyYXBzX2luaXQodm9pZCk7Ci0tIAoyLjEuNAoK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZl bCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlz dHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=