From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH RFC 02/44] x86/idt: Factor out enabling and disabling of ISTs Date: Thu, 4 Jan 2018 20:21:27 +0000 Message-ID: <1515097329-31902-3-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 QWxsIGFsdGVyYXRpb24gb2YgSVNUIHNldHRpbmdzIChvdGhlciB0aGFuIHRoZSBjcmFzaCBwYXRo KSBoYXBwZW4gaW4gYW4KaWRlbnRpY2FsIHRyaXBsZS4gIEludHJvZHVjZSBoZWxwZXJzIHRvIGtl ZXAgdGhlIHRyaXBsZSBpbiBzeW5jLCBhbmQgcmVkdWNlCnRoZSByaXNrIG9mIG9wZW5jb2RlZCBt aXN0YWtlcy4KClNpZ25lZC1vZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNp dHJpeC5jb20+Ci0tLQogeGVuL2FyY2gveDg2L2NwdS9jb21tb24uYyAgICAgICB8ICA0ICstLS0K IHhlbi9hcmNoL3g4Ni9odm0vc3ZtL3N2bS5jICAgICAgfCAgOCArKy0tLS0tLQogeGVuL2FyY2gv eDg2L3NtcGJvb3QuYyAgICAgICAgICB8ICA0ICstLS0KIHhlbi9hcmNoL3g4Ni90cmFwcy5jICAg ICAgICAgICAgfCAgNCArLS0tCiB4ZW4vaW5jbHVkZS9hc20teDg2L3Byb2Nlc3Nvci5oIHwgMTQg KysrKysrKysrKysrKysKIDUgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMTUgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2NwdS9jb21tb24uYyBiL3hlbi9h cmNoL3g4Ni9jcHUvY29tbW9uLmMKaW5kZXggZTk1ODhiMy4uYjE4ZTBmNCAxMDA2NDQKLS0tIGEv eGVuL2FyY2gveDg2L2NwdS9jb21tb24uYworKysgYi94ZW4vYXJjaC94ODYvY3B1L2NvbW1vbi5j CkBAIC03MDMsOSArNzAzLDcgQEAgdm9pZCBsb2FkX3N5c3RlbV90YWJsZXModm9pZCkKIAlsdHIo VFNTX0VOVFJZIDw8IDMpOwogCWxsZHQoMCk7CiAKLQlzZXRfaXN0KCZpZHRfdGFibGVzW2NwdV1b VFJBUF9kb3VibGVfZmF1bHRdLCAgSVNUX0RGKTsKLQlzZXRfaXN0KCZpZHRfdGFibGVzW2NwdV1b VFJBUF9ubWldLAkgICAgICBJU1RfTk1JKTsKLQlzZXRfaXN0KCZpZHRfdGFibGVzW2NwdV1bVFJB UF9tYWNoaW5lX2NoZWNrXSwgSVNUX01DRSk7CisJZW5hYmxlX2VhY2hfaXN0KGlkdF90YWJsZXNb Y3B1XSk7CiAKIAkvKgogCSAqIEJvdHRvbS1vZi1zdGFjayBtdXN0IGJlIDE2LWJ5dGUgYWxpZ25l ZCEKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vc3ZtL3N2bS5jIGIveGVuL2FyY2gveDg2 L2h2bS9zdm0vc3ZtLmMKaW5kZXggMmU2MmI5Yi4uN2JmYjBiYSAxMDA2NDQKLS0tIGEveGVuL2Fy Y2gveDg2L2h2bS9zdm0vc3ZtLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMKQEAg LTEwMzgsOSArMTAzOCw3IEBAIHN0YXRpYyB2b2lkIHN2bV9jdHh0X3N3aXRjaF9mcm9tKHN0cnVj dCB2Y3B1ICp2KQogICAgIHN2bV92bWxvYWRfcGEocGVyX2NwdShob3N0X3ZtY2IsIGNwdSkpOwog CiAgICAgLyogUmVzdW1lIHVzZSBvZiBJU1RzIG5vdyB0aGF0IHRoZSBob3N0IFRSIGlzIHJlaW5z dGF0ZWQuICovCi0gICAgc2V0X2lzdCgmaWR0X3RhYmxlc1tjcHVdW1RSQVBfZG91YmxlX2ZhdWx0 XSwgIElTVF9ERik7Ci0gICAgc2V0X2lzdCgmaWR0X3RhYmxlc1tjcHVdW1RSQVBfbm1pXSwgICAg ICAgICAgIElTVF9OTUkpOwotICAgIHNldF9pc3QoJmlkdF90YWJsZXNbY3B1XVtUUkFQX21hY2hp bmVfY2hlY2tdLCBJU1RfTUNFKTsKKyAgICBlbmFibGVfZWFjaF9pc3QoaWR0X3RhYmxlc1tjcHVd KTsKIH0KIAogc3RhdGljIHZvaWQgc3ZtX2N0eHRfc3dpdGNoX3RvKHN0cnVjdCB2Y3B1ICp2KQpA QCAtMTA1OSw5ICsxMDU3LDcgQEAgc3RhdGljIHZvaWQgc3ZtX2N0eHRfc3dpdGNoX3RvKHN0cnVj dCB2Y3B1ICp2KQogICAgICAqIENhbm5vdCB1c2UgSVNUcyBmb3IgTk1JLyNNQy8jREYgd2hpbGUg d2UgYXJlIHJ1bm5pbmcgd2l0aCB0aGUgZ3Vlc3QgVFIuCiAgICAgICogQnV0IHRoaXMgZG9lc24n dCBtYXR0ZXI6IHRoZSBJU1QgaXMgb25seSByZXEnZCB0byBoYW5kbGUgU1lTQ0FMTC9TWVNSRVQu CiAgICAgICovCi0gICAgc2V0X2lzdCgmaWR0X3RhYmxlc1tjcHVdW1RSQVBfZG91YmxlX2ZhdWx0 XSwgIElTVF9OT05FKTsKLSAgICBzZXRfaXN0KCZpZHRfdGFibGVzW2NwdV1bVFJBUF9ubWldLCAg ICAgICAgICAgSVNUX05PTkUpOwotICAgIHNldF9pc3QoJmlkdF90YWJsZXNbY3B1XVtUUkFQX21h Y2hpbmVfY2hlY2tdLCBJU1RfTk9ORSk7CisgICAgZGlzYWJsZV9lYWNoX2lzdChpZHRfdGFibGVz W2NwdV0pOwogCiAgICAgc3ZtX3Jlc3RvcmVfZHIodik7CiAKZGlmZiAtLWdpdCBhL3hlbi9hcmNo L3g4Ni9zbXBib290LmMgYi94ZW4vYXJjaC94ODYvc21wYm9vdC5jCmluZGV4IDdiOTdmZjguLmU3 ZmExNTkgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9zbXBib290LmMKKysrIGIveGVuL2FyY2gv eDg2L3NtcGJvb3QuYwpAQCAtNzIzLDkgKzcyMyw3IEBAIHN0YXRpYyBpbnQgY3B1X3NtcGJvb3Rf YWxsb2ModW5zaWduZWQgaW50IGNwdSkKICAgICBpZiAoIGlkdF90YWJsZXNbY3B1XSA9PSBOVUxM ICkKICAgICAgICAgZ290byBvdXQ7CiAgICAgbWVtY3B5KGlkdF90YWJsZXNbY3B1XSwgaWR0X3Rh YmxlLCBJRFRfRU5UUklFUyAqIHNpemVvZihpZHRfZW50cnlfdCkpOwotICAgIHNldF9pc3QoJmlk dF90YWJsZXNbY3B1XVtUUkFQX2RvdWJsZV9mYXVsdF0sICBJU1RfTk9ORSk7Ci0gICAgc2V0X2lz dCgmaWR0X3RhYmxlc1tjcHVdW1RSQVBfbm1pXSwgICAgICAgICAgIElTVF9OT05FKTsKLSAgICBz ZXRfaXN0KCZpZHRfdGFibGVzW2NwdV1bVFJBUF9tYWNoaW5lX2NoZWNrXSwgSVNUX05PTkUpOwor ICAgIGRpc2FibGVfZWFjaF9pc3QoaWR0X3RhYmxlc1tjcHVdKTsKIAogICAgIGZvciAoIHN0dWJf cGFnZSA9IDAsIGkgPSBjcHUgJiB+KFNUVUJTX1BFUl9QQUdFIC0gMSk7CiAgICAgICAgICAgaSA8 IG5yX2NwdV9pZHMgJiYgaSA8PSAoY3B1IHwgKFNUVUJTX1BFUl9QQUdFIC0gMSkpOyArK2kgKQpk aWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3RyYXBzLmMgYi94ZW4vYXJjaC94ODYvdHJhcHMuYwpp bmRleCBkYjE2YTQ0Li5kMDZhZDY5IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvdHJhcHMuYwor KysgYi94ZW4vYXJjaC94ODYvdHJhcHMuYwpAQCAtMTg4NCw5ICsxODg0LDcgQEAgdm9pZCBfX2lu aXQgaW5pdF9pZHRfdHJhcHModm9pZCkKICAgICBzZXRfaW50cl9nYXRlKFRSQVBfc2ltZF9lcnJv ciwmc2ltZF9jb3Byb2Nlc3Nvcl9lcnJvcik7CiAKICAgICAvKiBTcGVjaWZ5IGRlZGljYXRlZCBp bnRlcnJ1cHQgc3RhY2tzIGZvciBOTUksICNERiwgYW5kICNNQy4gKi8KLSAgICBzZXRfaXN0KCZp ZHRfdGFibGVbVFJBUF9kb3VibGVfZmF1bHRdLCAgSVNUX0RGKTsKLSAgICBzZXRfaXN0KCZpZHRf dGFibGVbVFJBUF9ubWldLCAgICAgICAgICAgSVNUX05NSSk7Ci0gICAgc2V0X2lzdCgmaWR0X3Rh YmxlW1RSQVBfbWFjaGluZV9jaGVja10sIElTVF9NQ0UpOworICAgIGVuYWJsZV9lYWNoX2lzdChp ZHRfdGFibGUpOwogCiAgICAgLyogQ1BVMCB1c2VzIHRoZSBtYXN0ZXIgSURULiAqLwogICAgIGlk dF90YWJsZXNbMF0gPSBpZHRfdGFibGU7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2 L3Byb2Nlc3Nvci5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9wcm9jZXNzb3IuaAppbmRleCA0MWE4 ZDhjLi5hMGM1MjRiIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L3Byb2Nlc3Nvci5o CisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcHJvY2Vzc29yLmgKQEAgLTQ1Nyw2ICs0NTcsMjAg QEAgc3RhdGljIGFsd2F5c19pbmxpbmUgdm9pZCBzZXRfaXN0KGlkdF9lbnRyeV90ICppZHQsIHVu c2lnbmVkIGxvbmcgaXN0KQogICAgIF93cml0ZV9nYXRlX2xvd2VyKGlkdCwgJm5ldyk7CiB9CiAK K3N0YXRpYyBpbmxpbmUgdm9pZCBlbmFibGVfZWFjaF9pc3QoaWR0X2VudHJ5X3QgKmlkdCkKK3sK KyAgICBzZXRfaXN0KCZpZHRbVFJBUF9kb3VibGVfZmF1bHRdLCAgSVNUX0RGKTsKKyAgICBzZXRf aXN0KCZpZHRbVFJBUF9ubWldLCAgICAgICAgICAgSVNUX05NSSk7CisgICAgc2V0X2lzdCgmaWR0 W1RSQVBfbWFjaGluZV9jaGVja10sIElTVF9NQ0UpOworfQorCitzdGF0aWMgaW5saW5lIHZvaWQg ZGlzYWJsZV9lYWNoX2lzdChpZHRfZW50cnlfdCAqaWR0KQoreworICAgIHNldF9pc3QoJmlkdFtU UkFQX2RvdWJsZV9mYXVsdF0sICBJU1RfTk9ORSk7CisgICAgc2V0X2lzdCgmaWR0W1RSQVBfbm1p XSwgICAgICAgICAgIElTVF9OT05FKTsKKyAgICBzZXRfaXN0KCZpZHRbVFJBUF9tYWNoaW5lX2No ZWNrXSwgSVNUX05PTkUpOworfQorCiAjZGVmaW5lIElEVF9FTlRSSUVTIDI1NgogZXh0ZXJuIGlk dF9lbnRyeV90IGlkdF90YWJsZVtdOwogZXh0ZXJuIGlkdF9lbnRyeV90ICppZHRfdGFibGVzW107 Ci0tIAoyLjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3Jn Cmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=