From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chao Gao Subject: [PATCH v4 03/28] VIOMMU: Add irq request callback to deal with irq remapping Date: Fri, 17 Nov 2017 14:22:10 +0800 Message-ID: <1510899755-40237-4-git-send-email-chao.gao@intel.com> References: <1510899755-40237-1-git-send-email-chao.gao@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1510899755-40237-1-git-send-email-chao.gao@intel.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: Lan Tianyu , Kevin Tian , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Ian Jackson , Tim Deegan , Jan Beulich , Andrew Cooper , Chao Gao , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= List-Id: xen-devel@lists.xenproject.org RnJvbTogTGFuIFRpYW55dSA8dGlhbnl1LmxhbkBpbnRlbC5jb20+CgpUaGlzIHBhdGNoIGlzIHRv IGFkZCBpcnEgcmVxdWVzdCBjYWxsYmFjayBmb3IgcGxhdGZvcm0gaW1wbGVtZW50YXRpb24KdG8g ZGVhbCB3aXRoIGlycSByZW1hcHBpbmcgcmVxdWVzdC4KClNpZ25lZC1vZmYtYnk6IExhbiBUaWFu eXUgPHRpYW55dS5sYW5AaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBDaGFvIEdhbyA8Y2hhby5n YW9AaW50ZWwuY29tPgotLS0KIHhlbi9jb21tb24vdmlvbW11LmMgICAgICAgICAgfCAxNSArKysr KysrKysrKysKIHhlbi9pbmNsdWRlL2FzbS14ODYvdmlvbW11LmggfCA1NCArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2luY2x1ZGUveGVuL3Zpb21tdS5o ICAgICB8ICA2ICsrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDc1IGluc2VydGlvbnMoKykKIGNyZWF0 ZSBtb2RlIDEwMDY0NCB4ZW4vaW5jbHVkZS9hc20teDg2L3Zpb21tdS5oCgpkaWZmIC0tZ2l0IGEv eGVuL2NvbW1vbi92aW9tbXUuYyBiL3hlbi9jb21tb24vdmlvbW11LmMKaW5kZXggZmQ4YjdmZC4u NTNkNGI3MCAxMDA2NDQKLS0tIGEveGVuL2NvbW1vbi92aW9tbXUuYworKysgYi94ZW4vY29tbW9u L3Zpb21tdS5jCkBAIC0xMTQsNiArMTE0LDIxIEBAIGludCB2aW9tbXVfZG9tY3RsKHN0cnVjdCBk b21haW4gKmQsIHN0cnVjdCB4ZW5fZG9tY3RsX3Zpb21tdV9vcCAqb3ApCiAgICAgcmV0dXJuIHJj OwogfQogCitpbnQgdmlvbW11X2hhbmRsZV9pcnFfcmVxdWVzdChjb25zdCBzdHJ1Y3QgZG9tYWlu ICpkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGFyY2hfaXJx X3JlbWFwcGluZ19yZXF1ZXN0ICpyZXF1ZXN0KQoreworICAgIHN0cnVjdCB2aW9tbXUgKnZpb21t dSA9IGQtPmFyY2guaHZtX2RvbWFpbi52aW9tbXU7CisKKyAgICBpZiAoICF2aW9tbXUgKQorICAg ICAgICByZXR1cm4gLUVOT0RFVjsKKworICAgIEFTU0VSVCh2aW9tbXUtPm9wcyk7CisgICAgaWYg KCAhdmlvbW11LT5vcHMtPmhhbmRsZV9pcnFfcmVxdWVzdCApCisgICAgICAgIHJldHVybiAtRUlO VkFMOworCisgICAgcmV0dXJuIHZpb21tdS0+b3BzLT5oYW5kbGVfaXJxX3JlcXVlc3QoZCwgcmVx dWVzdCk7Cit9CisKIC8qCiAgKiBMb2NhbCB2YXJpYWJsZXM6CiAgKiBtb2RlOiBDCmRpZmYgLS1n aXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L3Zpb21tdS5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni92 aW9tbXUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMWVjODBlCi0tLSAv ZGV2L251bGwKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni92aW9tbXUuaApAQCAtMCwwICsxLDU0 IEBACisvKgorICogaW5jbHVkZS9hc20teDg2L3Zpb21tdS5oCisgKgorICogQ29weXJpZ2h0IChj KSAyMDE3IEludGVsIENvcnBvcmF0aW9uLgorICogQXV0aG9yOiBMYW4gVGlhbnl1IDx0aWFueXUu bGFuQGludGVsLmNvbT4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91 IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdAorICogdW5kZXIgdGhlIHRlcm1z IGFuZCBjb25kaXRpb25zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwKKyAqIHZl cnNpb24gMiwgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24uCisg KgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIGl0IHdpbGwgYmUg dXNlZnVsLCBidXQgV0lUSE9VVAorICogQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt cGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yCisgKiBGSVRORVNTIEZPUiBBIFBB UlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y CisgKiBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29w eSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYWxvbmcgd2l0aAorICogdGhpcyBw cm9ncmFtOyBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKgor ICovCisjaWZuZGVmIF9fQVJDSF9YODZfVklPTU1VX0hfXworI2RlZmluZSBfX0FSQ0hfWDg2X1ZJ T01NVV9IX18KKworLyogSVJRIHJlcXVlc3QgdHlwZSAqLworZW51bSB2aW9tbXVfaXJxX3JlcXVl c3RfdHlwZSB7CisgICAgVklPTU1VX1JFUVVFU1RfSVJRX01TSSA9IDAsCisgICAgVklPTU1VX1JF UVVFU1RfSVJRX0FQSUMgPSAxCit9OworCitzdHJ1Y3QgYXJjaF9pcnFfcmVtYXBwaW5nX3JlcXVl c3QKK3sKKyAgICB1bmlvbiB7CisgICAgICAgIC8qIE1TSSAqLworICAgICAgICBzdHJ1Y3Qgewor ICAgICAgICAgICAgdWludDY0X3QgYWRkcjsKKyAgICAgICAgICAgIHVpbnQzMl90IGRhdGE7Cisg ICAgICAgIH0gbXNpOworICAgICAgICAvKiBSZWRpcmVjdGlvbiBFbnRyeSBpbiBJT0FQSUMgKi8K KyAgICAgICAgdWludDY0X3QgcnRlOworICAgIH0gbXNnOworICAgIHVpbnQxNl90IHNvdXJjZV9p ZDsKKyAgICBlbnVtIHZpb21tdV9pcnFfcmVxdWVzdF90eXBlIHR5cGU7Cit9OworCisjZW5kaWYg LyogX19BUkNIX1g4Nl9WSU9NTVVfSF9fICovCisKKy8qCisgKiBMb2NhbCB2YXJpYWJsZXM6Cisg KiBtb2RlOiBDCisgKiBjLWZpbGUtc3R5bGU6ICJCU0QiCisgKiBjLWJhc2ljLW9mZnNldDogNAor ICogdGFiLXdpZHRoOiA0CisgKiBpbmRlbnQtdGFicy1tb2RlOiBuaWwKKyAqIEVuZDoKKyAqLwpk aWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL3Zpb21tdS5oIGIveGVuL2luY2x1ZGUveGVuL3Zp b21tdS5oCmluZGV4IGE4NTlkODAuLjY3ZTI1ZDUgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hl bi92aW9tbXUuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vdmlvbW11LmgKQEAgLTIyLDEyICsyMiwx NiBAQAogCiAjaWZkZWYgQ09ORklHX1ZJT01NVQogCisjaW5jbHVkZSA8YXNtL3Zpb21tdS5oPgor CiBzdHJ1Y3QgdmlvbW11OwogCiBzdHJ1Y3QgdmlvbW11X29wcyB7CiAgICAgdWludDhfdCB0eXBl OwogICAgIGludCAoKmNyZWF0ZSkoc3RydWN0IGRvbWFpbiAqZCwgc3RydWN0IHZpb21tdSAqdmlv bW11KTsKICAgICBpbnQgKCpkZXN0cm95KShzdHJ1Y3QgdmlvbW11ICp2aW9tbXUpOworICAgIGlu dCAoKmhhbmRsZV9pcnFfcmVxdWVzdCkoY29uc3Qgc3RydWN0IGRvbWFpbiAqZCwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBhcmNoX2lycV9yZW1hcHBpbmdfcmVx dWVzdCAqcmVxdWVzdCk7CiB9OwogCiBzdHJ1Y3QgdmlvbW11IHsKQEAgLTQ0LDYgKzQ4LDggQEAg c3RydWN0IHZpb21tdSB7CiBpbnQgdmlvbW11X3JlZ2lzdGVyX3R5cGUodWludDhfdCB0eXBlLCBz dHJ1Y3QgdmlvbW11X29wcyAqb3BzKTsKIGludCB2aW9tbXVfZGVzdHJveV9kb21haW4oc3RydWN0 IGRvbWFpbiAqZCk7CiBpbnQgdmlvbW11X2RvbWN0bChzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3Qg eGVuX2RvbWN0bF92aW9tbXVfb3AgKm9wKTsKK2ludCB2aW9tbXVfaGFuZGxlX2lycV9yZXF1ZXN0 KGNvbnN0IHN0cnVjdCBkb21haW4gKmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBzdHJ1Y3QgYXJjaF9pcnFfcmVtYXBwaW5nX3JlcXVlc3QgKnJlcXVlc3QpOwogI2Vsc2UK IHN0YXRpYyBpbmxpbmUgaW50IHZpb21tdV9kZXN0cm95X2RvbWFpbihzdHJ1Y3QgZG9tYWluICpk KQogewotLSAKMS44LjMuMQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcK aHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=