From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Xu, Quan" Subject: [Patch v6 04/11] IOMMU: propagate IOMMU Device-TLB flush error up to IOMMU mapping (top level ones) Date: Tue, 31 May 2016 21:57:29 +0800 Message-ID: <1464703056-4741-5-git-send-email-quan.xu@intel.com> References: <1464703056-4741-1-git-send-email-quan.xu@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1464703056-4741-1-git-send-email-quan.xu@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: Kevin Tian , Stefano Stabellini , Feng Wu , Quan Xu , dario.faggioli@citrix.com, Julien Grall , Jan Beulich , Suravee Suthikulpanit List-Id: xen-devel@lists.xenproject.org RnJvbTogUXVhbiBYdSA8cXVhbi54dUBpbnRlbC5jb20+CgpTaWduZWQtb2ZmLWJ5OiBRdWFuIFh1 IDxxdWFuLnh1QGludGVsLmNvbT4KQWNrZWQtYnk6IEtldmluIFRpYW4gPGtldmluLnRpYW5AaW50 ZWwuY29tPgoKQ0M6IFN1cmF2ZWUgU3V0aGlrdWxwYW5pdCA8c3VyYXZlZS5zdXRoaWt1bHBhbml0 QGFtZC5jb20+CkNDOiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+ CkNDOiBKdWxpZW4gR3JhbGwgPGp1bGllbi5ncmFsbEBhcm0uY29tPgpDQzogS2V2aW4gVGlhbiA8 a2V2aW4udGlhbkBpbnRlbC5jb20+CkNDOiBGZW5nIFd1IDxmZW5nLnd1QGludGVsLmNvbT4KQ0M6 IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KCnY2OgogIDEuIEFkZCBfX211c3RfY2hl Y2sgYW5ub3RhdGlvbiB0byBhbWRfaW9tbXVfbWFwX3BhZ2UoKS4KICAyLiBSZXR1cm4gdGhlIGZp cnN0IGVycm9yIGluc3RlYWQgb2YgdGhlIGxhc3Qgb25lLgotLS0KIHhlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL2FtZC9wY2lfYW1kX2lvbW11LmMgICB8IDE2ICsrKysrKysrKysrKysrLS0KIHhlbi9k cml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9zbW11LmMgICAgICAgICAgICB8ICA0ICsrLS0KIHhlbi9k cml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5jICAgICAgICAgICB8ICA3ICsrKystLS0KIHhl bi9pbmNsdWRlL2FzbS14ODYvaHZtL3N2bS9hbWQtaW9tbXUtcHJvdG8uaCB8ICA0ICsrLS0KIHhl bi9pbmNsdWRlL3hlbi9pb21tdS5oICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIDUg ZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYyBiL3hlbi9k cml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9wY2lfYW1kX2lvbW11LmMKaW5kZXggNzBiNzQ3NS4uMTdj MWY2ZCAxMDA2NDQKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9t bXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jCkBA IC0yODUsNiArMjg1LDggQEAgc3RhdGljIHZvaWQgX19od2RvbV9pbml0IGFtZF9pb21tdV9od2Rv bV9pbml0KHN0cnVjdCBkb21haW4gKmQpCiAKICAgICBpZiAoICFpb21tdV9wYXNzdGhyb3VnaCAm JiAhbmVlZF9pb21tdShkKSApCiAgICAgeworICAgICAgICBpbnQgcmMgPSAwOworCiAgICAgICAg IC8qIFNldCB1cCAxOjEgcGFnZSB0YWJsZSBmb3IgZG9tMCAqLwogICAgICAgICBmb3IgKCBpID0g MDsgaSA8IG1heF9wZHg7IGkrKyApCiAgICAgICAgIHsKQEAgLTI5NSwxMiArMjk3LDIyIEBAIHN0 YXRpYyB2b2lkIF9faHdkb21faW5pdCBhbWRfaW9tbXVfaHdkb21faW5pdChzdHJ1Y3QgZG9tYWlu ICpkKQogICAgICAgICAgICAgICogYSBwZm5fdmFsaWQoKSBjaGVjayB3b3VsZCBzZWVtIGRlc2ly YWJsZSBoZXJlLgogICAgICAgICAgICAgICovCiAgICAgICAgICAgICBpZiAoIG1mbl92YWxpZChw Zm4pICkKLSAgICAgICAgICAgICAgICBhbWRfaW9tbXVfbWFwX3BhZ2UoZCwgcGZuLCBwZm4sIAot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJT01NVUZfcmVhZGFibGV8SU9NTVVG X3dyaXRhYmxlKTsKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpbnQgcmV0OworCisg ICAgICAgICAgICAgICAgcmV0ID0gYW1kX2lvbW11X21hcF9wYWdlKGQsIHBmbiwgcGZuLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJT01NVUZfcmVhZGFibGV8SU9N TVVGX3dyaXRhYmxlKTsKKyAgICAgICAgICAgICAgICBpZiAoICFyYyApCisgICAgICAgICAgICAg ICAgICAgIHJjID0gcmV0OworICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBpZiAoICEoaSAm IDB4ZmZmZmYpICkKICAgICAgICAgICAgICAgICBwcm9jZXNzX3BlbmRpbmdfc29mdGlycXMoKTsK ICAgICAgICAgfQorCisgICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAgQU1EX0lPTU1VX0RF QlVHKCJkJWQ6IElPTU1VIG1hcHBpbmcgZmFpbGVkOiAlZFxuIiwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICBkLT5kb21haW5faWQsIHJjKTsKICAgICB9CiAKICAgICBmb3JfZWFjaF9hbWRf aW9tbXUgKCBpb21tdSApCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0v c21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJtL3NtbXUuYwppbmRleCAxY2U0ZGRm Li5lZTVjODlkIDEwMDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vc21tdS5j CisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9zbW11LmMKQEAgLTI3NDUsOCArMjc0 NSw4IEBAIHN0YXRpYyB2b2lkIGFybV9zbW11X2lvbW11X2RvbWFpbl90ZWFyZG93bihzdHJ1Y3Qg ZG9tYWluICpkKQogCXhmcmVlKHhlbl9kb21haW4pOwogfQogCi1zdGF0aWMgaW50IGFybV9zbW11 X21hcF9wYWdlKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLAotCQkJICAgICB1 bnNpZ25lZCBsb25nIG1mbiwgdW5zaWduZWQgaW50IGZsYWdzKQorc3RhdGljIGludCBfX211c3Rf Y2hlY2sgYXJtX3NtbXVfbWFwX3BhZ2Uoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9uZyBn Zm4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBs b25nIG1mbiwgdW5zaWduZWQgaW50IGZsYWdzKQogewogCXAybV90eXBlX3QgdDsKIApkaWZmIC0t Z2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMgYi94ZW4vZHJpdmVycy9w YXNzdGhyb3VnaC92dGQvaW9tbXUuYwppbmRleCA0ODQ0MTkzLi5lOTAwMDE5IDEwMDY0NAotLS0g YS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9w YXNzdGhyb3VnaC92dGQvaW9tbXUuYwpAQCAtMTY4Nyw5ICsxNjg3LDEwIEBAIHN0YXRpYyB2b2lk IGlvbW11X2RvbWFpbl90ZWFyZG93bihzdHJ1Y3QgZG9tYWluICpkKQogICAgIHNwaW5fdW5sb2Nr KCZoZC0+YXJjaC5tYXBwaW5nX2xvY2spOwogfQogCi1zdGF0aWMgaW50IGludGVsX2lvbW11X21h cF9wYWdlKAotICAgIHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLCB1bnNpZ25l ZCBsb25nIG1mbiwKLSAgICB1bnNpZ25lZCBpbnQgZmxhZ3MpCitzdGF0aWMgaW50IF9fbXVzdF9j aGVjayBpbnRlbF9pb21tdV9tYXBfcGFnZShzdHJ1Y3QgZG9tYWluICpkLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBnZm4sCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIG1m biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk IGludCBmbGFncykKIHsKICAgICBzdHJ1Y3QgZG9tYWluX2lvbW11ICpoZCA9IGRvbV9pb21tdShk KTsKICAgICBzdHJ1Y3QgZG1hX3B0ZSAqcGFnZSA9IE5VTEwsICpwdGUgPSBOVUxMLCBvbGQsIG5l dyA9IHsgMCB9OwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vc3ZtL2FtZC1p b21tdS1wcm90by5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vc3ZtL2FtZC1pb21tdS1wcm90 by5oCmluZGV4IDU3YjZjYzEuLmFjOWYwMzYgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14 ODYvaHZtL3N2bS9hbWQtaW9tbXUtcHJvdG8uaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2h2 bS9zdm0vYW1kLWlvbW11LXByb3RvLmgKQEAgLTUxLDggKzUxLDggQEAgaW50IGFtZF9pb21tdV9p bml0KHZvaWQpOwogaW50IGFtZF9pb21tdV91cGRhdGVfaXZyc19tYXBwaW5nX2FjcGkodm9pZCk7 CiAKIC8qIG1hcHBpbmcgZnVuY3Rpb25zICovCi1pbnQgYW1kX2lvbW11X21hcF9wYWdlKHN0cnVj dCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLCB1bnNpZ25lZCBsb25nIG1mbiwKLSAgICAg ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGZsYWdzKTsKK2ludCBfX211c3RfY2hlY2sg YW1kX2lvbW11X21hcF9wYWdlKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtZm4sIHVu c2lnbmVkIGludCBmbGFncyk7CiBpbnQgX19tdXN0X2NoZWNrIGFtZF9pb21tdV91bm1hcF9wYWdl KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuKTsKIHU2NCBhbWRfaW9tbXVfZ2V0 X25leHRfdGFibGVfZnJvbV9wdGUodTMyICplbnRyeSk7CiBpbnQgYW1kX2lvbW11X3Jlc2VydmVf ZG9tYWluX3VuaXR5X21hcChzdHJ1Y3QgZG9tYWluICpkb21haW4sCmRpZmYgLS1naXQgYS94ZW4v aW5jbHVkZS94ZW4vaW9tbXUuaCBiL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oCmluZGV4IDczYTdm MWUuLjE0MDQxYTEgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oCisrKyBiL3hl bi9pbmNsdWRlL3hlbi9pb21tdS5oCkBAIC0xNjYsOCArMTY2LDggQEAgc3RydWN0IGlvbW11X29w cyB7CiAjZW5kaWYgLyogSEFTX1BDSSAqLwogCiAgICAgdm9pZCAoKnRlYXJkb3duKShzdHJ1Y3Qg ZG9tYWluICpkKTsKLSAgICBpbnQgKCptYXBfcGFnZSkoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWdu ZWQgbG9uZyBnZm4sIHVuc2lnbmVkIGxvbmcgbWZuLAotICAgICAgICAgICAgICAgICAgICB1bnNp Z25lZCBpbnQgZmxhZ3MpOworICAgIGludCBfX211c3RfY2hlY2sgKCptYXBfcGFnZSkoc3RydWN0 IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9uZyBnZm4sCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB1bnNpZ25lZCBsb25nIG1mbiwgdW5zaWduZWQgaW50IGZsYWdzKTsKICAgICBpbnQg X19tdXN0X2NoZWNrICgqdW5tYXBfcGFnZSkoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9u ZyBnZm4pOwogICAgIHZvaWQgKCpmcmVlX3BhZ2VfdGFibGUpKHN0cnVjdCBwYWdlX2luZm8gKik7 CiAjaWZkZWYgQ09ORklHX1g4NgotLSAKMS45LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=