From mboxrd@z Thu Jan 1 00:00:00 1970 From: Greg Kroah-Hartman Subject: [PATCH 4.14 124/156] x86/xen: Support early interrupts in xen pv guests Date: Fri, 2 Feb 2018 17:58:25 +0100 Message-ID: <20180202140845.994367591@linuxfoundation.org> References: <20180202140840.242829545@linuxfoundation.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ehetS-0000Px-ON for xen-devel@lists.xenproject.org; Fri, 02 Feb 2018 17:12:54 +0000 In-Reply-To: <20180202140840.242829545@linuxfoundation.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: linux-kernel@vger.kernel.org Cc: Juergen Gross , Greg Kroah-Hartman , stable@vger.kernel.org, Sasha Levin , Andy Lutomirski , xen-devel@lists.xenproject.org, Thomas Gleixner , boris.ostrovsky@oracle.com List-Id: xen-devel@lists.xenproject.org NC4xNC1zdGFibGUgcmV2aWV3IHBhdGNoLiAgSWYgYW55b25lIGhhcyBhbnkgb2JqZWN0aW9ucywg cGxlYXNlIGxldCBtZSBrbm93LgoKLS0tLS0tLS0tLS0tLS0tLS0tCgpGcm9tOiBKdWVyZ2VuIEdy b3NzIDxqZ3Jvc3NAc3VzZS5jb20+CgoKWyBVcHN0cmVhbSBjb21taXQgNDJiM2E0Y2I1NjA5ZGU3 NTdmNTQ0NWZjYWQxODk0NWJhOTIzOWEwNyBdCgpBZGQgZWFybHkgaW50ZXJydXB0IGhhbmRsZXJz IGFjdGl2YXRlZCBieSBpZHRfc2V0dXBfZWFybHlfaGFuZGxlcigpIHRvCnRoZSBoYW5kbGVycyBz dXBwb3J0ZWQgYnkgWGVuIHB2IGd1ZXN0cy4gVGhpcyB3aWxsIGFsbG93IGZvciBlYXJseQpXQVJO KCkgY2FsbHMgbm90IGNyYXNoaW5nIHRoZSBndWVzdC4KClN1Z2dlc3RlZC1ieTogQW5keSBMdXRv bWlyc2tpIDxsdXRvQGtlcm5lbC5vcmc+ClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpn cm9zc0BzdXNlLmNvbT4KU2lnbmVkLW9mZi1ieTogVGhvbWFzIEdsZWl4bmVyIDx0Z2x4QGxpbnV0 cm9uaXguZGU+CkNjOiB4ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKQ2M6IGJvcmlzLm9z dHJvdnNreUBvcmFjbGUuY29tCkxpbms6IGh0dHBzOi8vbGttbC5rZXJuZWwub3JnL3IvMjAxNzEx MjQwODQyMjEuMzAxNzItMS1qZ3Jvc3NAc3VzZS5jb20KU2lnbmVkLW9mZi1ieTogU2FzaGEgTGV2 aW4gPGFsZXhhbmRlci5sZXZpbkB2ZXJpem9uLmNvbT4KU2lnbmVkLW9mZi1ieTogR3JlZyBLcm9h aC1IYXJ0bWFuIDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZz4KLS0tCiBhcmNoL3g4Ni9pbmNs dWRlL2FzbS9zZWdtZW50LmggfCAgIDEyICsrKysrKysrKysrKwogYXJjaC94ODYvbW0vZXh0YWJs ZS5jICAgICAgICAgIHwgICAgNCArKystCiBhcmNoL3g4Ni94ZW4vZW5saWdodGVuX3B2LmMgICAg fCAgIDM3ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIGFyY2gveDg2L3hl bi94ZW4tYXNtXzY0LlMgICAgICB8ICAgMTQgKysrKysrKysrKysrKysKIDQgZmlsZXMgY2hhbmdl ZCwgNTMgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCgotLS0gYS9hcmNoL3g4Ni9pbmNs dWRlL2FzbS9zZWdtZW50LmgKKysrIGIvYXJjaC94ODYvaW5jbHVkZS9hc20vc2VnbWVudC5oCkBA IC0yMzYsMTEgKzIzNiwyMyBAQAogICovCiAjZGVmaW5lIEVBUkxZX0lEVF9IQU5ETEVSX1NJWkUg OQogCisvKgorICogeGVuX2Vhcmx5X2lkdF9oYW5kbGVyX2FycmF5IGlzIGZvciBYZW4gcHYgZ3Vl c3RzOiBmb3IgZWFjaCBlbnRyeSBpbgorICogZWFybHlfaWR0X2hhbmRsZXJfYXJyYXkgaXQgY29u dGFpbnMgYSBwcmVxdWVsIGluIHRoZSBmb3JtIG9mCisgKiBwb3AgJXJjeDsgcG9wICVyMTE7IGpt cCBlYXJseV9pZHRfaGFuZGxlcl9hcnJheVtpXTsgc3VtbWluZyB1cCB0bworICogbWF4IDggYnl0 ZXMuCisgKi8KKyNkZWZpbmUgWEVOX0VBUkxZX0lEVF9IQU5ETEVSX1NJWkUgOAorCiAjaWZuZGVm IF9fQVNTRU1CTFlfXwogCiBleHRlcm4gY29uc3QgY2hhciBlYXJseV9pZHRfaGFuZGxlcl9hcnJh eVtOVU1fRVhDRVBUSU9OX1ZFQ1RPUlNdW0VBUkxZX0lEVF9IQU5ETEVSX1NJWkVdOwogZXh0ZXJu IHZvaWQgZWFybHlfaWdub3JlX2lycSh2b2lkKTsKIAorI2lmIGRlZmluZWQoQ09ORklHX1g4Nl82 NCkgJiYgZGVmaW5lZChDT05GSUdfWEVOX1BWKQorZXh0ZXJuIGNvbnN0IGNoYXIgeGVuX2Vhcmx5 X2lkdF9oYW5kbGVyX2FycmF5W05VTV9FWENFUFRJT05fVkVDVE9SU11bWEVOX0VBUkxZX0lEVF9I QU5ETEVSX1NJWkVdOworI2VuZGlmCisKIC8qCiAgKiBMb2FkIGEgc2VnbWVudC4gRmFsbCBiYWNr IG9uIGxvYWRpbmcgdGhlIHplcm8gc2VnbWVudCBpZiBzb21ldGhpbmcgZ29lcwogICogd3Jvbmcu ICBUaGlzIHZhcmlhbnQgYXNzdW1lcyB0aGF0IGxvYWRpbmcgemVybyBmdWxseSBjbGVhcnMgdGhl IHNlZ21lbnQuCi0tLSBhL2FyY2gveDg2L21tL2V4dGFibGUuYworKysgYi9hcmNoL3g4Ni9tbS9l eHRhYmxlLmMKQEAgLTEsNiArMSw3IEBACiAjaW5jbHVkZSA8bGludXgvZXh0YWJsZS5oPgogI2lu Y2x1ZGUgPGxpbnV4L3VhY2Nlc3MuaD4KICNpbmNsdWRlIDxsaW51eC9zY2hlZC9kZWJ1Zy5oPgor I2luY2x1ZGUgPHhlbi94ZW4uaD4KIAogI2luY2x1ZGUgPGFzbS9mcHUvaW50ZXJuYWwuaD4KICNp bmNsdWRlIDxhc20vdHJhcHMuaD4KQEAgLTIxMiw4ICsyMTMsOSBAQCB2b2lkIF9faW5pdCBlYXJs eV9maXh1cF9leGNlcHRpb24oc3RydWN0CiAJICogT2xkIENQVXMgbGVhdmUgdGhlIGhpZ2ggYml0 cyBvZiBDUyBvbiB0aGUgc3RhY2sKIAkgKiB1bmRlZmluZWQuICBJJ20gbm90IHN1cmUgd2hpY2gg Q1BVcyBkbyB0aGlzLCBidXQgYXQgbGVhc3QKIAkgKiB0aGUgNDg2IERYIHdvcmtzIHRoaXMgd2F5 LgorCSAqIFhlbiBwdiBkb21haW5zIGFyZSBub3QgdXNpbmcgdGhlIGRlZmF1bHQgX19LRVJORUxf Q1MuCiAJICovCi0JaWYgKHJlZ3MtPmNzICE9IF9fS0VSTkVMX0NTKQorCWlmICgheGVuX3B2X2Rv bWFpbigpICYmIHJlZ3MtPmNzICE9IF9fS0VSTkVMX0NTKQogCQlnb3RvIGZhaWw7CiAKIAkvKgot LS0gYS9hcmNoL3g4Ni94ZW4vZW5saWdodGVuX3B2LmMKKysrIGIvYXJjaC94ODYveGVuL2VubGln aHRlbl9wdi5jCkBAIC02MjIsNyArNjIyLDcgQEAgc3RhdGljIHN0cnVjdCB0cmFwX2FycmF5X2Vu dHJ5IHRyYXBfYXJyYQogCXsgc2ltZF9jb3Byb2Nlc3Nvcl9lcnJvciwgICAgICB4ZW5fc2ltZF9j b3Byb2Nlc3Nvcl9lcnJvciwgICAgICBmYWxzZSB9LAogfTsKIAotc3RhdGljIGJvb2wgZ2V0X3Ry YXBfYWRkcih2b2lkICoqYWRkciwgdW5zaWduZWQgaW50IGlzdCkKK3N0YXRpYyBib29sIF9fcmVm IGdldF90cmFwX2FkZHIodm9pZCAqKmFkZHIsIHVuc2lnbmVkIGludCBpc3QpCiB7CiAJdW5zaWdu ZWQgaW50IG5yOwogCWJvb2wgaXN0X29rYXkgPSBmYWxzZTsKQEAgLTY0NCw2ICs2NDQsMTQgQEAg c3RhdGljIGJvb2wgZ2V0X3RyYXBfYWRkcih2b2lkICoqYWRkciwgdQogCQl9CiAJfQogCisJaWYg KG5yID09IEFSUkFZX1NJWkUodHJhcF9hcnJheSkgJiYKKwkgICAgKmFkZHIgPj0gKHZvaWQgKill YXJseV9pZHRfaGFuZGxlcl9hcnJheVswXSAmJgorCSAgICAqYWRkciA8ICh2b2lkICopZWFybHlf aWR0X2hhbmRsZXJfYXJyYXlbTlVNX0VYQ0VQVElPTl9WRUNUT1JTXSkgeworCQluciA9ICgqYWRk ciAtICh2b2lkICopZWFybHlfaWR0X2hhbmRsZXJfYXJyYXlbMF0pIC8KKwkJICAgICBFQVJMWV9J RFRfSEFORExFUl9TSVpFOworCQkqYWRkciA9ICh2b2lkICopeGVuX2Vhcmx5X2lkdF9oYW5kbGVy X2FycmF5W25yXTsKKwl9CisKIAlpZiAoV0FSTl9PTihpc3QgIT0gMCAmJiAhaXN0X29rYXkpKQog CQlyZXR1cm4gZmFsc2U7CiAKQEAgLTEyNjEsNiArMTI2OSwyMSBAQCBhc21saW5rYWdlIF9fdmlz aWJsZSB2b2lkIF9faW5pdCB4ZW5fc3RhCiAJeGVuX3NldHVwX2dkdCgwKTsKIAogCXhlbl9pbml0 X2lycV9vcHMoKTsKKworCS8qIExldCdzIHByZXN1bWUgUFYgZ3Vlc3RzIGFsd2F5cyBib290IG9u IHZDUFUgd2l0aCBpZCAwLiAqLworCXBlcl9jcHUoeGVuX3ZjcHVfaWQsIDApID0gMDsKKworCS8q CisJICogU2V0dXAgeGVuX3ZjcHUgZWFybHkgYmVjYXVzZSBpZHRfc2V0dXBfZWFybHlfaGFuZGxl ciBuZWVkcyBpdCBmb3IKKwkgKiBsb2NhbF9pcnFfZGlzYWJsZSgpLCBpcnFzX2Rpc2FibGVkKCku CisJICoKKwkgKiBEb24ndCBkbyB0aGUgZnVsbCB2Y3B1X2luZm8gcGxhY2VtZW50IHN0dWZmIHVu dGlsIHdlIGhhdmUKKwkgKiB0aGUgY3B1X3Bvc3NpYmxlX21hc2sgYW5kIGEgbm9uLWR1bW15IHNo YXJlZF9pbmZvLgorCSAqLworCXhlbl92Y3B1X2luZm9fcmVzZXQoMCk7CisKKwlpZHRfc2V0dXBf ZWFybHlfaGFuZGxlcigpOworCiAJeGVuX2luaXRfY2FwYWJpbGl0aWVzKCk7CiAKICNpZmRlZiBD T05GSUdfWDg2X0xPQ0FMX0FQSUMKQEAgLTEyOTQsMTggKzEzMTcsNiBAQCBhc21saW5rYWdlIF9f dmlzaWJsZSB2b2lkIF9faW5pdCB4ZW5fc3RhCiAJICovCiAJYWNwaV9udW1hID0gLTE7CiAjZW5k aWYKLQkvKiBMZXQncyBwcmVzdW1lIFBWIGd1ZXN0cyBhbHdheXMgYm9vdCBvbiB2Q1BVIHdpdGgg aWQgMC4gKi8KLQlwZXJfY3B1KHhlbl92Y3B1X2lkLCAwKSA9IDA7Ci0KLQkvKgotCSAqIFNldHVw IHhlbl92Y3B1IGVhcmx5IGJlY2F1c2Ugc3RhcnRfa2VybmVsIG5lZWRzIGl0IGZvcgotCSAqIGxv Y2FsX2lycV9kaXNhYmxlKCksIGlycXNfZGlzYWJsZWQoKS4KLQkgKgotCSAqIERvbid0IGRvIHRo ZSBmdWxsIHZjcHVfaW5mbyBwbGFjZW1lbnQgc3R1ZmYgdW50aWwgd2UgaGF2ZQotCSAqIHRoZSBj cHVfcG9zc2libGVfbWFzayBhbmQgYSBub24tZHVtbXkgc2hhcmVkX2luZm8uCi0JICovCi0JeGVu X3ZjcHVfaW5mb19yZXNldCgwKTsKLQogCVdBUk5fT04oeGVuX2NwdWhwX3NldHVwKHhlbl9jcHVf dXBfcHJlcGFyZV9wdiwgeGVuX2NwdV9kZWFkX3B2KSk7CiAKIAlsb2NhbF9pcnFfZGlzYWJsZSgp OwotLS0gYS9hcmNoL3g4Ni94ZW4veGVuLWFzbV82NC5TCisrKyBiL2FyY2gveDg2L3hlbi94ZW4t YXNtXzY0LlMKQEAgLTE1LDYgKzE1LDcgQEAKIAogI2luY2x1ZGUgPHhlbi9pbnRlcmZhY2UveGVu Lmg+CiAKKyNpbmNsdWRlIDxsaW51eC9pbml0Lmg+CiAjaW5jbHVkZSA8bGludXgvbGlua2FnZS5o PgogCiAubWFjcm8geGVuX3B2X3RyYXAgbmFtZQpAQCAtNTQsNiArNTUsMTkgQEAgeGVuX3B2X3Ry YXAgZW50cnlfSU5UODBfY29tcGF0CiAjZW5kaWYKIHhlbl9wdl90cmFwIGh5cGVydmlzb3JfY2Fs bGJhY2sKIAorCV9fSU5JVAorRU5UUlkoeGVuX2Vhcmx5X2lkdF9oYW5kbGVyX2FycmF5KQorCWkg PSAwCisJLnJlcHQgTlVNX0VYQ0VQVElPTl9WRUNUT1JTCisJcG9wICVyY3gKKwlwb3AgJXIxMQor CWptcCBlYXJseV9pZHRfaGFuZGxlcl9hcnJheSArIGkqRUFSTFlfSURUX0hBTkRMRVJfU0laRQor CWkgPSBpICsgMQorCS5maWxsIHhlbl9lYXJseV9pZHRfaGFuZGxlcl9hcnJheSArIGkqWEVOX0VB UkxZX0lEVF9IQU5ETEVSX1NJWkUgLSAuLCAxLCAweGNjCisJLmVuZHIKK0VORCh4ZW5fZWFybHlf aWR0X2hhbmRsZXJfYXJyYXkpCisJX19GSU5JVAorCiBoeXBlcmNhbGxfaXJldCA9IGh5cGVyY2Fs bF9wYWdlICsgX19IWVBFUlZJU09SX2lyZXQgKiAzMgogLyoKICAqIFhlbjY0IGlyZXQgZnJhbWU6 CgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1k ZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8v bGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=