From mboxrd@z Thu Jan 1 00:00:00 1970 From: Quan Xu Subject: [PATCH v3 10/10] vt-d: propagate error up to ME phantom function mapping and unmapping Date: Fri, 29 Apr 2016 17:25:17 +0800 Message-ID: <1461921917-48394-11-git-send-email-quan.xu@intel.com> References: <1461921917-48394-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: <1461921917-48394-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 , dario.faggioli@citrix.com, Feng Wu , Jan Beulich , Quan Xu List-Id: xen-devel@lists.xenproject.org UHJvcGFnYXRlIHRoZSBJT01NVSBEZXZpY2UtVExCIGZsdXNoIGVycm9yIHVwIHRvIE1FIHBoYW50 b20gZnVuY3Rpb24KbWFwcGluZyBhbmQgdW5tYXBwaW5nLgoKU2lnbmVkLW9mZi1ieTogUXVhbiBY dSA8cXVhbi54dUBpbnRlbC5jb20+CgpDQzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29t PgpDQzogS2V2aW4gVGlhbiA8a2V2aW4udGlhbkBpbnRlbC5jb20+CkNDOiBGZW5nIFd1IDxmZW5n Lnd1QGludGVsLmNvbT4KLS0tCiB4ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvZXh0ZXJuLmgg fCAgMyArKy0KIHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5jICB8IDE4ICsrKysr KysrKysrKysrLS0tLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL3F1aXJrcy5jIHwgMjgg KysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCAzNCBpbnNlcnRp b25zKCspLCAxNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhy b3VnaC92dGQvZXh0ZXJuLmggYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvZXh0ZXJuLmgK aW5kZXggY2JlMDI4Ni4uNjc3MjgzOSAxMDA2NDQKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91 Z2gvdnRkL2V4dGVybi5oCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9leHRlcm4u aApAQCAtOTEsNyArOTEsOCBAQCBpbnQgaXNfaWdkX3Z0X2VuYWJsZWRfcXVpcmsodm9pZCk7CiB2 b2lkIHBsYXRmb3JtX3F1aXJrc19pbml0KHZvaWQpOwogdm9pZCB2dGRfb3BzX3ByZWFtYmxlX3F1 aXJrKHN0cnVjdCBpb21tdSogaW9tbXUpOwogdm9pZCB2dGRfb3BzX3Bvc3RhbWJsZV9xdWlyayhz dHJ1Y3QgaW9tbXUqIGlvbW11KTsKLXZvaWQgbWVfd2lmaV9xdWlyayhzdHJ1Y3QgZG9tYWluICpk b21haW4sIHU4IGJ1cywgdTggZGV2Zm4sIGludCBtYXApOworaW50IF9fbXVzdF9jaGVjayBtZV93 aWZpX3F1aXJrKHN0cnVjdCBkb21haW4gKmRvbWFpbiwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB1OCBidXMsIHU4IGRldmZuLCBpbnQgbWFwKTsKIHZvaWQgcGNpX3Z0ZF9xdWlyayhj b25zdCBzdHJ1Y3QgcGNpX2RldiAqKTsKIGJvb2xfdCBwbGF0Zm9ybV9zdXBwb3J0c19pbnRyZW1h cCh2b2lkKTsKIGJvb2xfdCBwbGF0Zm9ybV9zdXBwb3J0c194MmFwaWModm9pZCk7CmRpZmYgLS1n aXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9tbXUuYyBiL3hlbi9kcml2ZXJzL3Bh c3N0aHJvdWdoL3Z0ZC9pb21tdS5jCmluZGV4IGNmODQ3ZWMuLmJmZWUyOTkgMTAwNjQ0Ci0tLSBh L3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bh c3N0aHJvdWdoL3Z0ZC9pb21tdS5jCkBAIC0xMzAxLDcgKzEzMDEsNyBAQCBpbnQgZG9tYWluX2Nv bnRleHRfbWFwcGluZ19vbmUoCiAgICAgdTY0IG1hZGRyLCBwZ2RfbWFkZHI7CiAgICAgdTE2IHNl ZyA9IGlvbW11LT5pbnRlbC0+ZHJoZC0+c2VnbWVudDsKICAgICBpbnQgYWdhdzsKLSAgICBpbnQg cmM7CisgICAgaW50IHJjLCByZXQ7CiAKICAgICBBU1NFUlQocGNpZGV2c19sb2NrZWQoKSk7CiAg ICAgc3Bpbl9sb2NrKCZpb21tdS0+bG9jayk7CkBAIC0xNDM1LDcgKzE0MzUsMTIgQEAgaW50IGRv bWFpbl9jb250ZXh0X21hcHBpbmdfb25lKAogICAgIHVubWFwX3Z0ZF9kb21haW5fcGFnZShjb250 ZXh0X2VudHJpZXMpOwogCiAgICAgaWYgKCAhc2VnICkKLSAgICAgICAgbWVfd2lmaV9xdWlyayhk b21haW4sIGJ1cywgZGV2Zm4sIE1BUF9NRV9QSEFOVE9NX0ZVTkMpOworICAgIHsKKyAgICAgICAg cmV0ID0gbWVfd2lmaV9xdWlyayhkb21haW4sIGJ1cywgZGV2Zm4sIE1BUF9NRV9QSEFOVE9NX0ZV TkMpOworCisgICAgICAgIGlmICggIXJjICYmIHVubGlrZWx5KHJldCkgKQorICAgICAgICAgICAg cmMgPSByZXQ7CisgICAgfQogCiAgICAgcmV0dXJuIHJjOwogfQpAQCAtMTUzMiw3ICsxNTM3LDcg QEAgaW50IGRvbWFpbl9jb250ZXh0X3VubWFwX29uZSgKICAgICBzdHJ1Y3QgY29udGV4dF9lbnRy eSAqY29udGV4dCwgKmNvbnRleHRfZW50cmllczsKICAgICB1NjQgbWFkZHI7CiAgICAgaW50IGlv bW11X2RvbWlkOwotICAgIGludCByYzsKKyAgICBpbnQgcmMsIHJldDsKIAogICAgIEFTU0VSVChw Y2lkZXZzX2xvY2tlZCgpKTsKICAgICBzcGluX2xvY2soJmlvbW11LT5sb2NrKTsKQEAgLTE1ODAs NyArMTU4NSwxMiBAQCBpbnQgZG9tYWluX2NvbnRleHRfdW5tYXBfb25lKAogICAgIHVubWFwX3Z0 ZF9kb21haW5fcGFnZShjb250ZXh0X2VudHJpZXMpOwogCiAgICAgaWYgKCAhaW9tbXUtPmludGVs LT5kcmhkLT5zZWdtZW50ICkKLSAgICAgICAgbWVfd2lmaV9xdWlyayhkb21haW4sIGJ1cywgZGV2 Zm4sIFVOTUFQX01FX1BIQU5UT01fRlVOQyk7CisgICAgeworICAgICAgICByZXQgPSBtZV93aWZp X3F1aXJrKGRvbWFpbiwgYnVzLCBkZXZmbiwgVU5NQVBfTUVfUEhBTlRPTV9GVU5DKTsKKworICAg ICAgICBpZiAoICFyYyAmJiB1bmxpa2VseShyZXQpICkKKyAgICAgICAgICAgIHJjID0gcmV0Owor ICAgIH0KIAogICAgIHJldHVybiByYzsKIH0KZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL3Z0ZC9xdWlya3MuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9xdWlya3Mu YwppbmRleCA0OWRmNDFkLi5iYzE3ZDQ0IDEwMDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhy b3VnaC92dGQvcXVpcmtzLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL3F1aXJr cy5jCkBAIC0zMzIsMTAgKzMzMiwxMiBAQCB2b2lkIF9faW5pdCBwbGF0Zm9ybV9xdWlya3NfaW5p dCh2b2lkKQogICogYXNzaWduaW5nIEludGVsIGludGVncmF0ZWQgd2lmaSBkZXZpY2UgdG8gYSBn dWVzdC4KICAqLwogCi1zdGF0aWMgdm9pZCBtYXBfbWVfcGhhbnRvbV9mdW5jdGlvbihzdHJ1Y3Qg ZG9tYWluICpkb21haW4sIHUzMiBkZXYsIGludCBtYXApCitzdGF0aWMgaW50IF9fbXVzdF9jaGVj ayBtYXBfbWVfcGhhbnRvbV9mdW5jdGlvbihzdHJ1Y3QgZG9tYWluICpkb21haW4sCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1MzIgZGV2LCBpbnQgbWFw KQogewogICAgIHN0cnVjdCBhY3BpX2RyaGRfdW5pdCAqZHJoZDsKICAgICBzdHJ1Y3QgcGNpX2Rl diAqcGRldjsKKyAgICBpbnQgcmM7CiAKICAgICAvKiBmaW5kIE1FIFZULWQgZW5naW5lIGJhc2Ug b24gYSByZWFsIE1FIGRldmljZSAqLwogICAgIHBkZXYgPSBwY2lfZ2V0X3BkZXYoMCwgMCwgUENJ X0RFVkZOKGRldiwgMCkpOwpAQCAtMzQzLDIzICszNDUsMjcgQEAgc3RhdGljIHZvaWQgbWFwX21l X3BoYW50b21fZnVuY3Rpb24oc3RydWN0IGRvbWFpbiAqZG9tYWluLCB1MzIgZGV2LCBpbnQgbWFw KQogCiAgICAgLyogbWFwIG9yIHVubWFwIE1FIHBoYW50b20gZnVuY3Rpb24gKi8KICAgICBpZiAo IG1hcCApCi0gICAgICAgIGRvbWFpbl9jb250ZXh0X21hcHBpbmdfb25lKGRvbWFpbiwgZHJoZC0+ aW9tbXUsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBDSV9ERVZGTihk ZXYsIDcpLCBOVUxMKTsKKyAgICAgICAgcmMgPSBkb21haW5fY29udGV4dF9tYXBwaW5nX29uZShk b21haW4sIGRyaGQtPmlvbW11LCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFBDSV9ERVZGTihkZXYsIDcpLCBOVUxMKTsKICAgICBlbHNlCi0gICAgICAgIGRvbWFp bl9jb250ZXh0X3VubWFwX29uZShkb21haW4sIGRyaGQtPmlvbW11LCAwLAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgUENJX0RFVkZOKGRldiwgNykpOworICAgICAgICByYyA9IGRv bWFpbl9jb250ZXh0X3VubWFwX29uZShkb21haW4sIGRyaGQtPmlvbW11LCAwLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQQ0lfREVWRk4oZGV2LCA3KSk7CisKKyAgICBy ZXR1cm4gcmM7CiB9CiAKLXZvaWQgbWVfd2lmaV9xdWlyayhzdHJ1Y3QgZG9tYWluICpkb21haW4s IHU4IGJ1cywgdTggZGV2Zm4sIGludCBtYXApCitpbnQgX19tdXN0X2NoZWNrIG1lX3dpZmlfcXVp cmsoc3RydWN0IGRvbWFpbiAqZG9tYWluLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHU4IGJ1cywgdTggZGV2Zm4sIGludCBtYXApCiB7CiAgICAgdTMyIGlkOworICAgIGludCByYyA9 IDA7CiAKICAgICBpZCA9IHBjaV9jb25mX3JlYWQzMigwLCAwLCAwLCAwLCAwKTsKICAgICBpZiAo IElTX0NURyhpZCkgKQogICAgIHsKICAgICAgICAgLyogcXVpdCBpZiBNRSBkb2VzIG5vdCBleGlz dCAqLwogICAgICAgICBpZiAoIHBjaV9jb25mX3JlYWQzMigwLCAwLCAzLCAwLCAwKSA9PSAweGZm ZmZmZmZmICkKLSAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIHJldHVybiAwOwogCiAg ICAgICAgIC8qIGlmIGRldmljZSBpcyBXTEFOIGRldmljZSwgbWFwIE1FIHBoYW50b20gZGV2aWNl IDA6My43ICovCiAgICAgICAgIGlkID0gcGNpX2NvbmZfcmVhZDMyKDAsIGJ1cywgUENJX1NMT1Qo ZGV2Zm4pLCBQQ0lfRlVOQyhkZXZmbiksIDApOwpAQCAtMzczLDcgKzM3OSw3IEBAIHZvaWQgbWVf d2lmaV9xdWlyayhzdHJ1Y3QgZG9tYWluICpkb21haW4sIHU4IGJ1cywgdTggZGV2Zm4sIGludCBt YXApCiAgICAgICAgICAgICBjYXNlIDB4NDIzYjgwODY6CiAgICAgICAgICAgICBjYXNlIDB4NDIz YzgwODY6CiAgICAgICAgICAgICBjYXNlIDB4NDIzZDgwODY6Ci0gICAgICAgICAgICAgICAgbWFw X21lX3BoYW50b21fZnVuY3Rpb24oZG9tYWluLCAzLCBtYXApOworICAgICAgICAgICAgICAgIHJj ID0gbWFwX21lX3BoYW50b21fZnVuY3Rpb24oZG9tYWluLCAzLCBtYXApOwogICAgICAgICAgICAg ICAgIGJyZWFrOwogICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICBicmVhazsK QEAgLTM4Myw3ICszODksNyBAQCB2b2lkIG1lX3dpZmlfcXVpcmsoc3RydWN0IGRvbWFpbiAqZG9t YWluLCB1OCBidXMsIHU4IGRldmZuLCBpbnQgbWFwKQogICAgIHsKICAgICAgICAgLyogcXVpdCBp ZiBNRSBkb2VzIG5vdCBleGlzdCAqLwogICAgICAgICBpZiAoIHBjaV9jb25mX3JlYWQzMigwLCAw LCAyMiwgMCwgMCkgPT0gMHhmZmZmZmZmZiApCi0gICAgICAgICAgICByZXR1cm47CisgICAgICAg ICAgICByZXR1cm4gMDsKIAogICAgICAgICAvKiBpZiBkZXZpY2UgaXMgV0xBTiBkZXZpY2UsIG1h cCBNRSBwaGFudG9tIGRldmljZSAwOjIyLjcgKi8KICAgICAgICAgaWQgPSBwY2lfY29uZl9yZWFk MzIoMCwgYnVzLCBQQ0lfU0xPVChkZXZmbiksIFBDSV9GVU5DKGRldmZuKSwgMCk7CkBAIC0zOTks MTIgKzQwNSwxNCBAQCB2b2lkIG1lX3dpZmlfcXVpcmsoc3RydWN0IGRvbWFpbiAqZG9tYWluLCB1 OCBidXMsIHU4IGRldmZuLCBpbnQgbWFwKQogICAgICAgICAgICAgY2FzZSAweDQyMzg4MDg2OiAg ICAgICAgLyogUHVtYSBQZWFrICovCiAgICAgICAgICAgICBjYXNlIDB4NDIyYjgwODY6CiAgICAg ICAgICAgICBjYXNlIDB4NDIyYzgwODY6Ci0gICAgICAgICAgICAgICAgbWFwX21lX3BoYW50b21f ZnVuY3Rpb24oZG9tYWluLCAyMiwgbWFwKTsKKyAgICAgICAgICAgICAgICByYyA9IG1hcF9tZV9w aGFudG9tX2Z1bmN0aW9uKGRvbWFpbiwgMjIsIG1hcCk7CiAgICAgICAgICAgICAgICAgYnJlYWs7 CiAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9 CiAgICAgfQorCisgICAgcmV0dXJuIHJjOwogfQogCiB2b2lkIHBjaV92dGRfcXVpcmsoY29uc3Qg c3RydWN0IHBjaV9kZXYgKnBkZXYpCi0tIAoxLjkuMQoKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVs QGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==