From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Xu, Quan" Subject: [Patch v6 07/11] IOMMU: propagate IOMMU Device-TLB flush error up to IOMMU suspending (top level ones) Date: Tue, 31 May 2016 21:57:32 +0800 Message-ID: <1464703056-4741-8-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 , Keir Fraser , Quan Xu , Liu Jinsong , dario.faggioli@citrix.com, Julien Grall , Jan Beulich , Andrew Cooper , Feng Wu , Suravee Suthikulpanit List-Id: xen-devel@lists.xenproject.org RnJvbTogUXVhbiBYdSA8cXVhbi54dUBpbnRlbC5jb20+CgpTaWduZWQtb2ZmLWJ5OiBRdWFuIFh1 IDxxdWFuLnh1QGludGVsLmNvbT4KCkNDOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ CkNDOiBMaXUgSmluc29uZyA8amluc29uZy5saXVAYWxpYmFiYS1pbmMuY29tPgpDQzogS2VpciBG cmFzZXIgPGtlaXJAeGVuLm9yZz4KQ0M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNp dHJpeC5jb20+CkNDOiBTdXJhdmVlIFN1dGhpa3VscGFuaXQgPHN1cmF2ZWUuc3V0aGlrdWxwYW5p dEBhbWQuY29tPgpDQzogU3RlZmFubyBTdGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3Jn PgpDQzogSnVsaWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxAYXJtLmNvbT4KQ0M6IEtldmluIFRpYW4g PGtldmluLnRpYW5AaW50ZWwuY29tPgpDQzogRmVuZyBXdSA8ZmVuZy53dUBpbnRlbC5jb20+Cgp2 NjoKICAxLiBEcm9wIGNvbW1lbnRzIGluIGVudW0gZGV2X3Bvd2VyX3NhdmVkLgogIDIuIElmIGNv bnNvbGVfc3VzcGVuZCgpIGZhaWxzLCByZXR1cm4gU0FWRURfTk9ORS4KICAzLiBQdXQgb2ZmIGxl YWYgb25lcyAoaW4gaW9tbXVfZmx1c2hfYWxsKCkpIGluIGxhdGVyIHBhdGNoLgotLS0KIHhlbi9h cmNoL3g4Ni9hY3BpL3Bvd2VyLmMgICAgICAgICAgICAgICAgICAgICB8IDc2ICsrKysrKysrKysr KysrKysrKysrLS0tLS0tLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2luaXQu YyAgICAgIHwgIDkgKysrLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9t bXUuYyAgIHwgIDIgKy0KIHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lvbW11LmMgICAgICAgICAg ICAgICB8ICA2ICsrLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMgICAgICAg ICAgIHwgMzUgKysrKysrKystLS0tCiB4ZW4vaW5jbHVkZS9hc20teDg2L2h2bS9zdm0vYW1kLWlv bW11LXByb3RvLmggfCAgMiArLQogeGVuL2luY2x1ZGUveGVuL2lvbW11LmggICAgICAgICAgICAg ICAgICAgICAgIHwgIDQgKy0KIDcgZmlsZXMgY2hhbmdlZCwgOTkgaW5zZXJ0aW9ucygrKSwgMzUg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2FjcGkvcG93ZXIuYyBiL3hl bi9hcmNoL3g4Ni9hY3BpL3Bvd2VyLmMKaW5kZXggMjg4NWUzMS4uZTUxNmZiZCAxMDA2NDQKLS0t IGEveGVuL2FyY2gveDg2L2FjcGkvcG93ZXIuYworKysgYi94ZW4vYXJjaC94ODYvYWNwaS9wb3dl ci5jCkBAIC00MywzNiArNDMsNzAgQEAgc3RydWN0IGFjcGlfc2xlZXBfaW5mbyBhY3BpX3NpbmZv OwogCiB2b2lkIGRvX3N1c3BlbmRfbG93bGV2ZWwodm9pZCk7CiAKK2VudW0gZGV2X3Bvd2VyX3Nh dmVkCit7CisgICAgU0FWRURfTk9ORSwKKyAgICBTQVZFRF9DT05TT0xFLAorICAgIFNBVkVEX1RJ TUUsCisgICAgU0FWRURfSTgyNTlBLAorICAgIFNBVkVEX0lPQVBJQywKKyAgICBTQVZFRF9JT01N VSwKKyAgICBTQVZFRF9MQVBJQywKKyAgICBTQVZFRF9BTEwsCit9OworCiBzdGF0aWMgaW50IGRl dmljZV9wb3dlcl9kb3duKHZvaWQpCiB7Ci0gICAgY29uc29sZV9zdXNwZW5kKCk7CisgICAgaWYg KCBjb25zb2xlX3N1c3BlbmQoKSApCisgICAgICAgIHJldHVybiBTQVZFRF9OT05FOwogCi0gICAg dGltZV9zdXNwZW5kKCk7CisgICAgaWYgKCB0aW1lX3N1c3BlbmQoKSApCisgICAgICAgIHJldHVy biBTQVZFRF9DT05TT0xFOwogCi0gICAgaTgyNTlBX3N1c3BlbmQoKTsKKyAgICBpZiAoIGk4MjU5 QV9zdXNwZW5kKCkgKQorICAgICAgICByZXR1cm4gU0FWRURfVElNRTsKIAorICAgIC8qIGlvYXBp Y19zdXNwZW5kIGNhbm5vdCBmYWlsICovCiAgICAgaW9hcGljX3N1c3BlbmQoKTsKIAotICAgIGlv bW11X3N1c3BlbmQoKTsKKyAgICBpZiAoIGlvbW11X3N1c3BlbmQoKSApCisgICAgICAgIHJldHVy biBTQVZFRF9JT0FQSUM7CiAKLSAgICBsYXBpY19zdXNwZW5kKCk7CisgICAgaWYgKCBsYXBpY19z dXNwZW5kKCkgKQorICAgICAgICByZXR1cm4gU0FWRURfSU9NTVU7CiAKLSAgICByZXR1cm4gMDsK KyAgICByZXR1cm4gU0FWRURfTk9ORTsKIH0KIAotc3RhdGljIHZvaWQgZGV2aWNlX3Bvd2VyX3Vw KHZvaWQpCitzdGF0aWMgdm9pZCBkZXZpY2VfcG93ZXJfdXAoZW51bSBkZXZfcG93ZXJfc2F2ZWQg c2F2ZWQpCiB7Ci0gICAgbGFwaWNfcmVzdW1lKCk7Ci0KLSAgICBpb21tdV9yZXN1bWUoKTsKLQot ICAgIGlvYXBpY19yZXN1bWUoKTsKLQotICAgIGk4MjU5QV9yZXN1bWUoKTsKLQotICAgIHRpbWVf cmVzdW1lKCk7Ci0KLSAgICBjb25zb2xlX3Jlc3VtZSgpOworICAgIHN3aXRjaCAoIHNhdmVkICkK KyAgICB7CisgICAgY2FzZSBTQVZFRF9BTEw6CisgICAgY2FzZSBTQVZFRF9MQVBJQzoKKyAgICAg ICAgbGFwaWNfcmVzdW1lKCk7CisgICAgICAgIC8qIGZhbGwgdGhyb3VnaCAqLworICAgIGNhc2Ug U0FWRURfSU9NTVU6CisgICAgICAgIGlvbW11X3Jlc3VtZSgpOworICAgICAgICAvKiBmYWxsIHRo cm91Z2ggKi8KKyAgICBjYXNlIFNBVkVEX0lPQVBJQzoKKyAgICAgICAgaW9hcGljX3Jlc3VtZSgp OworICAgICAgICAvKiBmYWxsIHRocm91Z2ggKi8KKyAgICBjYXNlIFNBVkVEX0k4MjU5QToKKyAg ICAgICAgaTgyNTlBX3Jlc3VtZSgpOworICAgICAgICAvKiBmYWxsIHRocm91Z2ggKi8KKyAgICBj YXNlIFNBVkVEX1RJTUU6CisgICAgICAgIHRpbWVfcmVzdW1lKCk7CisgICAgICAgIC8qIGZhbGwg dGhyb3VnaCAqLworICAgIGNhc2UgU0FWRURfQ09OU09MRToKKyAgICAgICAgY29uc29sZV9yZXN1 bWUoKTsKKyAgICAgICAgLyogZmFsbCB0aHJvdWdoICovCisgICAgY2FzZSBTQVZFRF9OT05FOgor ICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICBCVUcoKTsKKyAgICAgICAgYnJl YWs7CisgICAgfQogfQogCiBzdGF0aWMgdm9pZCBmcmVlemVfZG9tYWlucyh2b2lkKQpAQCAtMTY5 LDYgKzIwMywxMCBAQCBzdGF0aWMgaW50IGVudGVyX3N0YXRlKHUzMiBzdGF0ZSkKICAgICB7CiAg ICAgICAgIHByaW50ayhYRU5MT0dfRVJSICJTb21lIGRldmljZXMgZmFpbGVkIHRvIHBvd2VyIGRv d24uIik7CiAgICAgICAgIHN5c3RlbV9zdGF0ZSA9IFNZU19TVEFURV9yZXN1bWU7CisKKyAgICAg ICAgaWYgKCBlcnJvciA+IDAgKQorICAgICAgICAgICAgZGV2aWNlX3Bvd2VyX3VwKGVycm9yKTsK KwogICAgICAgICBnb3RvIGRvbmU7CiAgICAgfQogCkBAIC0xOTYsNyArMjM0LDcgQEAgc3RhdGlj IGludCBlbnRlcl9zdGF0ZSh1MzIgc3RhdGUpCiAgICAgd3JpdGVfY3I0KGNyNCAmIH5YODZfQ1I0 X01DRSk7CiAgICAgd3JpdGVfZWZlcihyZWFkX2VmZXIoKSk7CiAKLSAgICBkZXZpY2VfcG93ZXJf dXAoKTsKKyAgICBkZXZpY2VfcG93ZXJfdXAoU0FWRURfQUxMKTsKIAogICAgIG1jaGVja19pbml0 KCZib290X2NwdV9kYXRhLCAwKTsKICAgICB3cml0ZV9jcjQoY3I0KTsKZGlmZiAtLWdpdCBhL3hl bi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9pbml0LmMgYi94ZW4vZHJpdmVycy9wYXNz dGhyb3VnaC9hbWQvaW9tbXVfaW5pdC5jCmluZGV4IDQ1MzYxMDYuLjBiNjg1OTYgMTAwNjQ0Ci0t LSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9pbml0LmMKKysrIGIveGVuL2Ry aXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2luaXQuYwpAQCAtMTMzOSw3ICsxMzM5LDE0IEBA IHN0YXRpYyB2b2lkIGludmFsaWRhdGVfYWxsX2RldmljZXModm9pZCkKICAgICBpdGVyYXRlX2l2 cnNfbWFwcGluZ3MoX2ludmFsaWRhdGVfYWxsX2RldmljZXMpOwogfQogCi12b2lkIGFtZF9pb21t dV9zdXNwZW5kKHZvaWQpCitpbnQgYW1kX2lvbW11X3N1c3BlbmQodm9pZCkKK3sKKyAgICBhbWRf aW9tbXVfY3Jhc2hfc2h1dGRvd24oKTsKKworICAgIHJldHVybiAwOworfQorCit2b2lkIGFtZF9p b21tdV9jcmFzaF9zaHV0ZG93bih2b2lkKQogewogICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11 OwogCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21t dS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYwppbmRleCAx N2MxZjZkLi45NDg4ZWIwIDEwMDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQv cGNpX2FtZF9pb21tdS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9wY2lfYW1k X2lvbW11LmMKQEAgLTYzOCw2ICs2MzgsNiBAQCBjb25zdCBzdHJ1Y3QgaW9tbXVfb3BzIGFtZF9p b21tdV9vcHMgPSB7CiAgICAgLnN1c3BlbmQgPSBhbWRfaW9tbXVfc3VzcGVuZCwKICAgICAucmVz dW1lID0gYW1kX2lvbW11X3Jlc3VtZSwKICAgICAuc2hhcmVfcDJtID0gYW1kX2lvbW11X3NoYXJl X3AybSwKLSAgICAuY3Jhc2hfc2h1dGRvd24gPSBhbWRfaW9tbXVfc3VzcGVuZCwKKyAgICAuY3Jh c2hfc2h1dGRvd24gPSBhbWRfaW9tbXVfY3Jhc2hfc2h1dGRvd24sCiAgICAgLmR1bXBfcDJtX3Rh YmxlID0gYW1kX2R1bXBfcDJtX3RhYmxlLAogfTsKZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bh c3N0aHJvdWdoL2lvbW11LmMgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9pb21tdS5jCmluZGV4 IGU5YjI4NTUuLmU2MTFlNzIgMTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lv bW11LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvaW9tbXUuYwpAQCAtMzgwLDEwICsz ODAsMTIgQEAgaW50IF9faW5pdCBpb21tdV9zZXR1cCh2b2lkKQogICAgIHJldHVybiByYzsKIH0K IAotdm9pZCBpb21tdV9zdXNwZW5kKCkKK2ludCBpb21tdV9zdXNwZW5kKCkKIHsKICAgICBpZiAo IGlvbW11X2VuYWJsZWQgKQotICAgICAgICBpb21tdV9nZXRfb3BzKCktPnN1c3BlbmQoKTsKKyAg ICAgICAgcmV0dXJuIGlvbW11X2dldF9vcHMoKS0+c3VzcGVuZCgpOworCisgICAgcmV0dXJuIDA7 CiB9CiAKIHZvaWQgaW9tbXVfcmVzdW1lKCkKZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL3Z0ZC9pb21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMK aW5kZXggNTM2NjI2Ny4uYzJiZjFlMiAxMDA2NDQKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91 Z2gvdnRkL2lvbW11LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMK QEAgLTU0MSw3ICs1NDEsNyBAQCBzdGF0aWMgaW50IGlvbW11X2ZsdXNoX2lvdGxiX3BzaSgKICAg ICByZXR1cm4gc3RhdHVzOwogfQogCi1zdGF0aWMgdm9pZCBpb21tdV9mbHVzaF9hbGwodm9pZCkK K3N0YXRpYyBpbnQgX19tdXN0X2NoZWNrIGlvbW11X2ZsdXNoX2FsbCh2b2lkKQogewogICAgIHN0 cnVjdCBhY3BpX2RyaGRfdW5pdCAqZHJoZDsKICAgICBzdHJ1Y3QgaW9tbXUgKmlvbW11OwpAQCAt NTU1LDYgKzU1NSw4IEBAIHN0YXRpYyB2b2lkIGlvbW11X2ZsdXNoX2FsbCh2b2lkKQogICAgICAg ICBmbHVzaF9kZXZfaW90bGIgPSBmaW5kX2F0c19kZXZfZHJoZChpb21tdSkgPyAxIDogMDsKICAg ICAgICAgaW9tbXVfZmx1c2hfaW90bGJfZ2xvYmFsKGlvbW11LCAwLCBmbHVzaF9kZXZfaW90bGIp OwogICAgIH0KKworICAgIHJldHVybiAwOwogfQogCiBzdGF0aWMgdm9pZCBfX2ludGVsX2lvbW11 X2lvdGxiX2ZsdXNoKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLApAQCAtMTI1 OSw3ICsxMjYxLDkgQEAgc3RhdGljIHZvaWQgX19od2RvbV9pbml0IGludGVsX2lvbW11X2h3ZG9t X2luaXQoc3RydWN0IGRvbWFpbiAqZCkKICAgICBzZXR1cF9od2RvbV9wY2lfZGV2aWNlcyhkLCBz ZXR1cF9od2RvbV9kZXZpY2UpOwogICAgIHNldHVwX2h3ZG9tX3JtcnIoZCk7CiAKLSAgICBpb21t dV9mbHVzaF9hbGwoKTsKKyAgICBpZiAoIGlvbW11X2ZsdXNoX2FsbCgpICkKKyAgICAgICAgcHJp bnRrKFhFTkxPR19XQVJOSU5HIFZURFBSRUZJWAorICAgICAgICAgICAgICAgIiBJT01NVSBmbHVz aCBhbGwgZmFpbGVkIGZvciBoYXJkd2FyZSBkb21haW5cbiIpOwogCiAgICAgZm9yX2VhY2hfZHJo ZF91bml0ICggZHJoZCApCiAgICAgewpAQCAtMjAwMSw3ICsyMDA1LDcgQEAgaW50IGFkanVzdF92 dGRfaXJxX2FmZmluaXRpZXModm9pZCkKIH0KIF9faW5pdGNhbGwoYWRqdXN0X3Z0ZF9pcnFfYWZm aW5pdGllcyk7CiAKLXN0YXRpYyBpbnQgaW5pdF92dGRfaHcodm9pZCkKK3N0YXRpYyBpbnQgX19t dXN0X2NoZWNrIGluaXRfdnRkX2h3KHZvaWQpCiB7CiAgICAgc3RydWN0IGFjcGlfZHJoZF91bml0 ICpkcmhkOwogICAgIHN0cnVjdCBpb21tdSAqaW9tbXU7CkBAIC0yMDk5LDggKzIxMDMsOCBAQCBz dGF0aWMgaW50IGluaXRfdnRkX2h3KHZvaWQpCiAgICAgICAgICAgICByZXR1cm4gLUVJTzsKICAg ICAgICAgfQogICAgIH0KLSAgICBpb21tdV9mbHVzaF9hbGwoKTsKLSAgICByZXR1cm4gMDsKKwor ICAgIHJldHVybiBpb21tdV9mbHVzaF9hbGwoKTsKIH0KIAogc3RhdGljIHZvaWQgX19od2RvbV9p bml0IHNldHVwX2h3ZG9tX3JtcnIoc3RydWN0IGRvbWFpbiAqZCkKQEAgLTIzODksMTYgKzIzOTMs MjUgQEAgc3RhdGljIGludCBpbnRlbF9pb21tdV9ncm91cF9pZCh1MTYgc2VnLCB1OCBidXMsIHU4 IGRldmZuKQogfQogCiBzdGF0aWMgdTMyIGlvbW11X3N0YXRlW01BWF9JT01NVVNdW01BWF9JT01N VV9SRUdTXTsKLXN0YXRpYyB2b2lkIHZ0ZF9zdXNwZW5kKHZvaWQpCisKK3N0YXRpYyBpbnQgX19t dXN0X2NoZWNrIHZ0ZF9zdXNwZW5kKHZvaWQpCiB7CiAgICAgc3RydWN0IGFjcGlfZHJoZF91bml0 ICpkcmhkOwogICAgIHN0cnVjdCBpb21tdSAqaW9tbXU7CiAgICAgdTMyICAgIGk7CisgICAgaW50 IHJjID0gMDsKIAogICAgIGlmICggIWlvbW11X2VuYWJsZWQgKQotICAgICAgICByZXR1cm47Cisg ICAgICAgIHJldHVybiAwOwogCi0gICAgaW9tbXVfZmx1c2hfYWxsKCk7CisgICAgcmMgPSBpb21t dV9mbHVzaF9hbGwoKTsKKyAgICBpZiAoIHVubGlrZWx5KHJjKSApCisgICAgeworICAgICAgICBw cmludGsoWEVOTE9HX1dBUk5JTkcgVlREUFJFRklYCisgICAgICAgICAgICAgICAiIHN1c3BlbmQ6 IElPTU1VIGZsdXNoIGFsbCBmYWlsZWQ6ICVkXG4iLCByYyk7CisKKyAgICAgICAgcmV0dXJuIHJj OworICAgIH0KIAogICAgIGZvcl9lYWNoX2RyaGRfdW5pdCAoIGRyaGQgKQogICAgIHsKQEAgLTI0 MjcsNiArMjQ0MCw4IEBAIHN0YXRpYyB2b2lkIHZ0ZF9zdXNwZW5kKHZvaWQpCiAgICAgICAgIGlm ICggIWlvbW11X2ludHJlbWFwICYmIGlvbW11X3FpbnZhbCApCiAgICAgICAgICAgICBkaXNhYmxl X3FpbnZhbChpb21tdSk7CiAgICAgfQorCisgICAgcmV0dXJuIHJjOwogfQogCiBzdGF0aWMgdm9p ZCB2dGRfY3Jhc2hfc2h1dGRvd24odm9pZCkKQEAgLTI0MzcsNyArMjQ1Miw5IEBAIHN0YXRpYyB2 b2lkIHZ0ZF9jcmFzaF9zaHV0ZG93bih2b2lkKQogICAgIGlmICggIWlvbW11X2VuYWJsZWQgKQog ICAgICAgICByZXR1cm47CiAKLSAgICBpb21tdV9mbHVzaF9hbGwoKTsKKyAgICBpZiAoIGlvbW11 X2ZsdXNoX2FsbCgpICkKKyAgICAgICAgcHJpbnRrKFhFTkxPR19XQVJOSU5HIFZURFBSRUZJWAor ICAgICAgICAgICAgICAgIiBjcmFzaCBzaHV0ZG93bjogSU9NTVUgZmx1c2ggYWxsIGZhaWxlZFxu Iik7CiAKICAgICBmb3JfZWFjaF9kcmhkX3VuaXQgKCBkcmhkICkKICAgICB7CmRpZmYgLS1naXQg YS94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS9zdm0vYW1kLWlvbW11LXByb3RvLmggYi94ZW4vaW5j bHVkZS9hc20teDg2L2h2bS9zdm0vYW1kLWlvbW11LXByb3RvLmgKaW5kZXggYWM5ZjAzNi4uZDA4 ZGMwYiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vc3ZtL2FtZC1pb21tdS1w cm90by5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3N2bS9hbWQtaW9tbXUtcHJvdG8u aApAQCAtMTE5LDcgKzExOSw3IEBAIGV4dGVybiB1bnNpZ25lZCBsb25nICpzaGFyZWRfaW50cmVt YXBfaW51c2U7CiAKIC8qIHBvd2VyIG1hbmFnZW1lbnQgc3VwcG9ydCAqLwogdm9pZCBhbWRfaW9t bXVfcmVzdW1lKHZvaWQpOwotdm9pZCBhbWRfaW9tbXVfc3VzcGVuZCh2b2lkKTsKK2ludCBfX211 c3RfY2hlY2sgYW1kX2lvbW11X3N1c3BlbmQodm9pZCk7CiB2b2lkIGFtZF9pb21tdV9jcmFzaF9z aHV0ZG93bih2b2lkKTsKIAogLyogZ3Vlc3QgaW9tbXUgc3VwcG9ydCAqLwpkaWZmIC0tZ2l0IGEv eGVuL2luY2x1ZGUveGVuL2lvbW11LmggYi94ZW4vaW5jbHVkZS94ZW4vaW9tbXUuaAppbmRleCAy MmEyMDAyLi5kMTk3Y2QwIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS94ZW4vaW9tbXUuaAorKysg Yi94ZW4vaW5jbHVkZS94ZW4vaW9tbXUuaApAQCAtMTc1LDcgKzE3NSw3IEBAIHN0cnVjdCBpb21t dV9vcHMgewogICAgIHVuc2lnbmVkIGludCAoKnJlYWRfYXBpY19mcm9tX2lyZSkodW5zaWduZWQg aW50IGFwaWMsIHVuc2lnbmVkIGludCByZWcpOwogICAgIGludCAoKnNldHVwX2hwZXRfbXNpKShz dHJ1Y3QgbXNpX2Rlc2MgKik7CiAjZW5kaWYgLyogQ09ORklHX1g4NiAqLwotICAgIHZvaWQgKCpz dXNwZW5kKSh2b2lkKTsKKyAgICBpbnQgX19tdXN0X2NoZWNrICgqc3VzcGVuZCkodm9pZCk7CiAg ICAgdm9pZCAoKnJlc3VtZSkodm9pZCk7CiAgICAgdm9pZCAoKnNoYXJlX3AybSkoc3RydWN0IGRv bWFpbiAqZCk7CiAgICAgdm9pZCAoKmNyYXNoX3NodXRkb3duKSh2b2lkKTsKQEAgLTE4NSw3ICsx ODUsNyBAQCBzdHJ1Y3QgaW9tbXVfb3BzIHsKICAgICB2b2lkICgqZHVtcF9wMm1fdGFibGUpKHN0 cnVjdCBkb21haW4gKmQpOwogfTsKIAotdm9pZCBpb21tdV9zdXNwZW5kKHZvaWQpOworaW50IF9f bXVzdF9jaGVjayBpb21tdV9zdXNwZW5kKHZvaWQpOwogdm9pZCBpb21tdV9yZXN1bWUodm9pZCk7 CiB2b2lkIGlvbW11X2NyYXNoX3NodXRkb3duKHZvaWQpOwogaW50IGlvbW11X2dldF9yZXNlcnZl ZF9kZXZpY2VfbWVtb3J5KGlvbW11X2dyZG1fdCAqLCB2b2lkICopOwotLSAKMS45LjEKCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFp bGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hl bi1kZXZlbAo=