From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: [PATCH v6 11/14] x86: add iommu_op to enable modification of IOMMU mappings Date: Thu, 23 Aug 2018 10:47:08 +0100 Message-ID: <20180823094711.21376-12-paul.durrant@citrix.com> References: <20180823094711.21376-1-paul.durrant@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fsmO5-00028t-7I for xen-devel@lists.xenproject.org; Thu, 23 Aug 2018 09:58:45 +0000 In-Reply-To: <20180823094711.21376-1-paul.durrant@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Wei Liu , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Julien Grall , Paul Durrant , Jan Beulich List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBhZGRzIGFuIGlvbW11X29wIHdoaWNoIGNoZWNrcyB3aGV0aGVyIGl0IGlzIHBv c3NpYmxlIG9yCnNhZmUgZm9yIGEgZG9tYWluIHRvIG1vZGlmeSBpdHMgb3duIElPTU1VIG1hcHBp bmdzIGFuZCwgaWYgc28sIGNyZWF0ZXMKYSByYW5nZXNldCB0byB0cmFjayBtb2RpZmljYXRpb25z LgoKVGhlIG9wIHBhc3NlcyBiYWNrIGEgY2FwYWJpbGl0aWVzIG1hc2suIFRoZXJlIGlzIG9ubHkg b25lIGJpdCBjdXJyZW50bHkKZGVmaW5lZCBmb3IgdGhpcyBtYXNrOiBYRU5fSU9NTVVfQ0FQX3Bl cl9kZXZpY2VfbWFwcGluZ3MuIFRoaXMgYml0IGlzCmFsd2F5cyBsZWZ0IGNsZWFyIGJ5IHRoZSBj dXJyZW50IGltcGxlbWVudGF0aW9uIGJ1dCBtYXkgYmUgc2V0IGluIGZ1dHVyZQppZiB0aGUgaW1w bGVtZW50YXRpb24gaXMgZW5oYW5jZSB0byBzdXBwb3J0IHBlci1kZXZpY2UgSU9NTVUgbWFwcGlu Z3MuCgpOT1RFOiBUaGUgYWN0dWFsIG1hcCBhbmQgdW5tYXAgb3BlcmF0aW9ucyBhcmUgaW50cm9k dWNlZCBieSBzdWJzZXF1ZW50CiAgICAgIHBhdGNoZXMuCgpTaWduZWQtb2ZmLWJ5OiBQYXVsIER1 cnJhbnQgPHBhdWwuZHVycmFudEBjaXRyaXguY29tPgotLS0KQ2M6IEphbiBCZXVsaWNoIDxqYmV1 bGljaEBzdXNlLmNvbT4KQ2M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5j b20+CkNjOiBHZW9yZ2UgRHVubGFwIDxHZW9yZ2UuRHVubGFwQGV1LmNpdHJpeC5jb20+CkNjOiBJ YW4gSmFja3NvbiA8aWFuLmphY2tzb25AZXUuY2l0cml4LmNvbT4KQ2M6IEp1bGllbiBHcmFsbCA8 anVsaWVuLmdyYWxsQGFybS5jb20+CkNjOiBLb25yYWQgUnplc3p1dGVrIFdpbGsgPGtvbnJhZC53 aWxrQG9yYWNsZS5jb20+CkNjOiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5l bC5vcmc+CkNjOiBUaW0gRGVlZ2FuIDx0aW1AeGVuLm9yZz4KQ2M6IFdlaSBMaXUgPHdlaS5saXUy QGNpdHJpeC5jb20+Cgp2NjoKIC0gQWRkIHN0cnVjdCB4ZW5faW9tbXVfb3BfZW5hYmxlX21vZGlm aWNhdGlvbiB0byBob2xkIHRoZSBjYXBhYmlsaXRpZXMKICAgbWFzay4KCnY0OgogLSBTZXQgc3lu Y19pb21tdV9wdCB0byBmYWxzZSBpbnN0ZWFkIG9mIG5lZWRfaW9tbXUuCgp2MjoKIC0gTmV3IGlu IHYyLgotLS0KIHhlbi9jb21tb24vaW9tbXVfb3AuYyAgICAgICAgICAgfCA1MyArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv aW9tbXUuYyB8ICAyICstCiB4ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2kuYyAgIHwgIDQgKyst LQogeGVuL2luY2x1ZGUvcHVibGljL2lvbW11X29wLmggICB8IDIwICsrKysrKysrKysrKysrKysK IHhlbi9pbmNsdWRlL3hlbi9pb21tdS5oICAgICAgICAgfCAgMyArKysKIHhlbi9pbmNsdWRlL3hs YXQubHN0ICAgICAgICAgICAgfCAgMSArCiA2IGZpbGVzIGNoYW5nZWQsIDgwIGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9pb21tdV9vcC5jIGIv eGVuL2NvbW1vbi9pb21tdV9vcC5jCmluZGV4IGJjZmNkNDkxMDIuLmNjYmI5YjYzNDAgMTAwNjQ0 Ci0tLSBhL3hlbi9jb21tb24vaW9tbXVfb3AuYworKysgYi94ZW4vY29tbW9uL2lvbW11X29wLmMK QEAgLTc4LDYgKzc4LDUxIEBAIHN0YXRpYyBpbnQgaW9tbXVfb3BfcXVlcnlfcmVzZXJ2ZWQoc3Ry dWN0IHhlbl9pb21tdV9vcF9xdWVyeV9yZXNlcnZlZCAqb3ApCiAgICAgcmV0dXJuIDA7CiB9CiAK K3N0YXRpYyBpbnQgaW9tbXVfb3BfZW5hYmxlX21vZGlmaWNhdGlvbigKKyAgICBzdHJ1Y3QgeGVu X2lvbW11X29wX2VuYWJsZV9tb2RpZmljYXRpb24gKm9wKQoreworICAgIHN0cnVjdCBkb21haW4g KmN1cnJkID0gY3VycmVudC0+ZG9tYWluOworICAgIHN0cnVjdCBkb21haW5faW9tbXUgKmlvbW11 ID0gZG9tX2lvbW11KGN1cnJkKTsKKyAgICBjb25zdCBzdHJ1Y3QgaW9tbXVfb3BzICpvcHMgPSBp b21tdS0+cGxhdGZvcm1fb3BzOworCisgICAgaWYgKCBvcC0+Y2FwIHx8IG9wLT5wYWQgKQorICAg ICAgICByZXR1cm4gLUVJTlZBTDsKKworICAgIC8qCisgICAgICogWEVOX0lPTU1VX0NBUF9wZXJf ZGV2aWNlX21hcHBpbmdzIGlzIG5vdCBzdXBwb3J0ZWQgeWV0IHNvIHdlIGNhbgorICAgICAqIGxl YXZlIG9wLT5jYXAgYWxvbmUuCisgICAgICovCisKKyAgICAvKiBIYXMgbW9kaWZpY2F0aW9uIGFs cmVhZHkgYmVlbiBlbmFibGVkPyAqLworICAgIGlmICggaW9tbXUtPmlvbW11X29wX3JhbmdlcyAp CisgICAgICAgIHJldHVybiAwOworCisgICAgLyoKKyAgICAgKiBUaGUgSU9NTVUgbWFwcGluZ3Mg Y2Fubm90IGJlIG1vZGlmaWVkIGlmOgorICAgICAqIC0gdGhlIElPTU1VIGlzIG5vdCBlbmFibGVk IG9yLAorICAgICAqIC0gdGhlIGN1cnJlbnQgZG9tYWluIGlzIGRvbTAgYW5kIHRyYW5sc2F0aW9u IGlzIGRpc2FibGVkIG9yLAorICAgICAqIC0gSEFQIGlzIGVuYWJsZWQgYW5kIHRoZSBJT01NVSBz aGFyZXMgdGhlIG1hcHBpbmdzLgorICAgICAqLworICAgIGlmICggIWlvbW11X2VuYWJsZWQgfHwK KyAgICAgICAgIChpc19oYXJkd2FyZV9kb21haW4oY3VycmQpICYmIGlvbW11X3Bhc3N0aHJvdWdo KSB8fAorICAgICAgICAgaW9tbXVfdXNlX2hhcF9wdChjdXJyZCkgKQorICAgICAgICByZXR1cm4g LUVBQ0NFUzsKKworICAgIC8qCisgICAgICogVGhlIElPTU1VIGltcGxlbWVudGF0aW9uIG11c3Qg cHJvdmlkZSB0aGUgbG9va3VwIG1ldGhvZCBpZgorICAgICAqIG1vZGlmaWNhdGlvbiBvZiB0aGUg bWFwcGluZ3MgaXMgdG8gYmUgc3VwcG9ydGVkLgorICAgICAqLworICAgIGlmICggIW9wcy0+bG9v a3VwX3BhZ2UgKQorICAgICAgICByZXR1cm4gLUVPUE5PVFNVUFA7CisKKyAgICBpb21tdS0+aW9t bXVfb3BfcmFuZ2VzID0gcmFuZ2VzZXRfbmV3KGN1cnJkLCBOVUxMLCAwKTsKKyAgICBpZiAoICFp b21tdS0+aW9tbXVfb3BfcmFuZ2VzICkKKyAgICAgICAgcmV0dXJuIC1FTk9NRU07CisKKyAgICBp b21tdS0+bmVlZF9zeW5jID0gZmFsc2U7IC8qIERpc2FibGUgc3luY2hyb25pemF0aW9uICovCisg ICAgcmV0dXJuIDA7Cit9CisKIHN0YXRpYyB2b2lkIGlvbW11X29wKHhlbl9pb21tdV9vcF90ICpv cCkKIHsKICAgICBzd2l0Y2ggKCBvcC0+b3AgKQpAQCAtODYsNiArMTMxLDEwIEBAIHN0YXRpYyB2 b2lkIGlvbW11X29wKHhlbl9pb21tdV9vcF90ICpvcCkKICAgICAgICAgb3AtPnN0YXR1cyA9IGlv bW11X29wX3F1ZXJ5X3Jlc2VydmVkKCZvcC0+dS5xdWVyeV9yZXNlcnZlZCk7CiAgICAgICAgIGJy ZWFrOwogCisgICAgY2FzZSBYRU5fSU9NTVVPUF9lbmFibGVfbW9kaWZpY2F0aW9uOgorICAgICAg ICBvcC0+c3RhdHVzID0gaW9tbXVfb3BfZW5hYmxlX21vZGlmaWNhdGlvbigmb3AtPnUuZW5hYmxl X21vZGlmaWNhdGlvbik7CisgICAgICAgIGJyZWFrOworCiAgICAgZGVmYXVsdDoKICAgICAgICAg b3AtPnN0YXR1cyA9IC1FT1BOT1RTVVBQOwogICAgICAgICBicmVhazsKQEAgLTk4LDYgKzE0Nyw3 IEBAIGludCBkb19vbmVfaW9tbXVfb3AoeGVuX2lvbW11X29wX2J1Zl90ICpidWYpCiAgICAgc2l6 ZV90IG9mZnNldDsKICAgICBzdGF0aWMgY29uc3Qgc2l6ZV90IG9wX3NpemVbXSA9IHsKICAgICAg ICAgW1hFTl9JT01NVU9QX3F1ZXJ5X3Jlc2VydmVkXSA9IHNpemVvZihzdHJ1Y3QgeGVuX2lvbW11 X29wX3F1ZXJ5X3Jlc2VydmVkKSwKKyAgICAgICAgW1hFTl9JT01NVU9QX2VuYWJsZV9tb2RpZmlj YXRpb25dID0gc2l6ZW9mKHN0cnVjdCB4ZW5faW9tbXVfb3BfZW5hYmxlX21vZGlmaWNhdGlvbiks CiAgICAgfTsKICAgICBzaXplX3Qgc2l6ZTsKICAgICBpbnQgcmM7CkBAIC0xODQsNiArMjM0LDcg QEAgaW50IGNvbXBhdF9vbmVfaW9tbXVfb3AoY29tcGF0X2lvbW11X29wX2J1Zl90ICpidWYpCiAg ICAgc2l6ZV90IG9mZnNldDsKICAgICBzdGF0aWMgY29uc3Qgc2l6ZV90IG9wX3NpemVbXSA9IHsK ICAgICAgICAgW1hFTl9JT01NVU9QX3F1ZXJ5X3Jlc2VydmVkXSA9IHNpemVvZihzdHJ1Y3QgY29t cGF0X2lvbW11X29wX3F1ZXJ5X3Jlc2VydmVkKSwKKyAgICAgICAgW1hFTl9JT01NVU9QX2VuYWJs ZV9tb2RpZmljYXRpb25dID0gc2l6ZW9mKHN0cnVjdCBjb21wYXRfaW9tbXVfb3BfZW5hYmxlX21v ZGlmaWNhdGlvbiksCiAgICAgfTsKICAgICBzaXplX3Qgc2l6ZTsKICAgICB4ZW5faW9tbXVfb3Bf dCBuYXQ7CkBAIC0yMjEsNiArMjcyLDcgQEAgaW50IGNvbXBhdF9vbmVfaW9tbXVfb3AoY29tcGF0 X2lvbW11X29wX2J1Zl90ICpidWYpCiAgICAgICogd2UgbmVlZCB0byBmaXggdGhpbmdzIHVwIGhl cmUuCiAgICAgICovCiAjZGVmaW5lIFhMQVRfaW9tbXVfb3BfdV9xdWVyeV9yZXNlcnZlZCBYRU5f SU9NTVVPUF9xdWVyeV9yZXNlcnZlZAorI2RlZmluZSBYTEFUX2lvbW11X29wX3VfZW5hYmxlX21v ZGlmaWNhdGlvbiBYRU5fSU9NTVVPUF9lbmFibGVfbW9kaWZpY2F0aW9uCiAgICAgdSA9IGNtcC5v cDsKIAogI2RlZmluZSBYTEFUX2lvbW11X29wX3F1ZXJ5X3Jlc2VydmVkX0hORExfcmFuZ2VzKF9k XywgX3NfKSAgICAgICAgICAgIFwKQEAgLTI4MCw2ICszMzIsNyBAQCBpbnQgY29tcGF0X29uZV9p b21tdV9vcChjb21wYXRfaW9tbXVfb3BfYnVmX3QgKmJ1ZikKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgJmNtcCwgc3RhdHVzKSApCiAgICAgICAgIHJldHVybiAtRUZBVUxUOwogCisj dW5kZWYgWExBVF9pb21tdV9vcF91X2VuYWJsZV9tb2RpZmljYXRpb24KICN1bmRlZiBYTEFUX2lv bW11X29wX3VfcXVlcnlfcmVzZXJ2ZWQKIAogICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEveGVu L2RyaXZlcnMvcGFzc3Rocm91Z2gvaW9tbXUuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lv bW11LmMKaW5kZXggODQ4ZDZjN2Q2OS4uMzBiODAwYzk3YiAxMDA2NDQKLS0tIGEveGVuL2RyaXZl cnMvcGFzc3Rocm91Z2gvaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9pb21t dS5jCkBAIC0yNiw3ICsyNiw2IEBAIHN0YXRpYyB2b2lkIGlvbW11X2R1bXBfcDJtX3RhYmxlKHVu c2lnbmVkIGNoYXIga2V5KTsKIAogdW5zaWduZWQgaW50IF9fcmVhZF9tb3N0bHkgaW9tbXVfZGV2 X2lvdGxiX3RpbWVvdXQgPSAxMDAwOwogaW50ZWdlcl9wYXJhbSgiaW9tbXVfZGV2X2lvdGxiX3Rp bWVvdXQiLCBpb21tdV9kZXZfaW90bGJfdGltZW91dCk7Ci0KIC8qCiAgKiBUaGUgJ2lvbW11JyBw YXJhbWV0ZXIgZW5hYmxlcyB0aGUgSU9NTVUuICBPcHRpb25hbCBjb21tYSBzZXBhcmF0ZWQKICAq IHZhbHVlIG1heSBjb250YWluOgpAQCAtMjgwLDYgKzI3OSw3IEBAIHZvaWQgaW9tbXVfZG9tYWlu X2Rlc3Ryb3koc3RydWN0IGRvbWFpbiAqZCkKICAgICBhcmNoX2lvbW11X2RvbWFpbl9kZXN0cm95 KGQpOwogCiAgICAgcmFuZ2VzZXRfZGVzdHJveShoZC0+cmVzZXJ2ZWRfcmFuZ2VzKTsKKyAgICBy YW5nZXNldF9kZXN0cm95KGhkLT5pb21tdV9vcF9yYW5nZXMpOwogfQogCiBpbnQgaW9tbXVfbWFw X3BhZ2Uoc3RydWN0IGRvbWFpbiAqZCwgYmZuX3QgYmZuLCBtZm5fdCBtZm4sCmRpZmYgLS1naXQg YS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2kuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo L3BjaS5jCmluZGV4IGUxMGYwYmJhMWMuLjkxZGU4YjI3ODQgMTAwNjQ0Ci0tLSBhL3hlbi9kcml2 ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5j CkBAIC0xNDYwLDcgKzE0NjAsNyBAQCBzdGF0aWMgaW50IGFzc2lnbl9kZXZpY2Uoc3RydWN0IGRv bWFpbiAqZCwgdTE2IHNlZywgdTggYnVzLCB1OCBkZXZmbiwgdTMyIGZsYWcpCiAgICAgfQogCiAg ZG9uZToKLSAgICBpZiAoICFoYXNfYXJjaF9wZGV2cyhkKSAmJiBoYXNfaW9tbXVfcHQoZCkgKQor ICAgIGlmICggIWhhc19hcmNoX3BkZXZzKGQpICYmIGhhc19pb21tdV9wdChkKSAmJiAhaGQtPmlv bW11X29wX3JhbmdlcyApCiAgICAgICAgIGlvbW11X3RlYXJkb3duKGQpOwogICAgIHBjaWRldnNf dW5sb2NrKCk7CiAKQEAgLTE1MTAsNyArMTUxMCw3IEBAIGludCBkZWFzc2lnbl9kZXZpY2Uoc3Ry dWN0IGRvbWFpbiAqZCwgdTE2IHNlZywgdTggYnVzLCB1OCBkZXZmbikKIAogICAgIHBkZXYtPmZh dWx0LmNvdW50ID0gMDsKIAotICAgIGlmICggIWhhc19hcmNoX3BkZXZzKGQpICYmIGhhc19pb21t dV9wdChkKSApCisgICAgaWYgKCAhaGFzX2FyY2hfcGRldnMoZCkgJiYgaGFzX2lvbW11X3B0KGQp ICYmICFoZC0+aW9tbXVfb3BfcmFuZ2VzICkKICAgICAgICAgaW9tbXVfdGVhcmRvd24oZCk7CiAK ICAgICByZXR1cm4gcmV0OwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvcHVibGljL2lvbW11X29w LmggYi94ZW4vaW5jbHVkZS9wdWJsaWMvaW9tbXVfb3AuaAppbmRleCBhZGU0MDRhODc3Li45Yjk4 YjVjZjg5IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9wdWJsaWMvaW9tbXVfb3AuaAorKysgYi94 ZW4vaW5jbHVkZS9wdWJsaWMvaW9tbXVfb3AuaApAQCAtNjEsNiArNjEsMjUgQEAgc3RydWN0IHhl bl9pb21tdV9vcF9xdWVyeV9yZXNlcnZlZCB7CiAgICAgWEVOX0dVRVNUX0hBTkRMRSh4ZW5faW9t bXVfcmVzZXJ2ZWRfcmFuZ2VfdCkgcmFuZ2VzOwogfTsKIAorLyoKKyAqIFhFTl9JT01NVU9QX2Vu YWJsZV9tb2RpZmljYXRpb246IEVuYWJsZSBvcGVyYXRpb25zIHRoYXQgbW9kaWZ5IElPTU1VCisg KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBwaW5ncy4KKyAqLworI2RlZmlu ZSBYRU5fSU9NTVVPUF9lbmFibGVfbW9kaWZpY2F0aW9uIDIKKworc3RydWN0IHhlbl9pb21tdV9v cF9lbmFibGVfbW9kaWZpY2F0aW9uIHsKKyAgICAvKgorICAgICAqIE9VVCAtIE9uIHN1Y2Nlc3Nm dWwgcmV0dXJuIHRoaXMgaXMgc2V0IHRvIHRoZSBiaXR3aXNlIE9SIG9mIGNhcGFiaWxpdGllcwor ICAgICAqICAgICAgIGRlZmluZWQgYmVsb3cuIE9uIGVudHJ5IHRoaXMgbXVzdCBiZSBzZXQgdG8g emVyby4KKyAgICAgKi8KKyAgICB1bnNpZ25lZCBpbnQgY2FwOworICAgIHVuc2lnbmVkIGludCBw YWQ7CisKKyAgICAvKiBEb2VzIHRoZSBpbXBsZW1lbnRhdGlvbiBzdXBwb3J0IHBlci1kZXZpY2Ug bWFwcGluZ3M/ICovCisjZGVmaW5lIF9YRU5fSU9NTVVfQ0FQX3Blcl9kZXZpY2VfbWFwcGluZ3Mg MAorI2RlZmluZSBYRU5fSU9NTVVfQ0FQX3Blcl9kZXZpY2VfbWFwcGluZ3MgKDF1IDw8IF9YRU5f SU9NTVVfQ0FQX3Blcl9kZXZpY2VfbWFwcGluZ3MpCit9OworCiBzdHJ1Y3QgeGVuX2lvbW11X29w IHsKICAgICB1aW50MTZfdCBvcDsgICAgLyogb3AgdHlwZSAqLwogICAgIHVpbnQxNl90IHBhZDsK QEAgLTY4LDYgKzg3LDcgQEAgc3RydWN0IHhlbl9pb21tdV9vcCB7CiAgICAgICAgICAgICAgICAg ICAgIC8qIDAgZm9yIHN1Y2Nlc3Mgb3RoZXJ3aXNlLCBuZWdhdGl2ZSBlcnJubyAqLwogICAgIHVu aW9uIHsKICAgICAgICAgc3RydWN0IHhlbl9pb21tdV9vcF9xdWVyeV9yZXNlcnZlZCBxdWVyeV9y ZXNlcnZlZDsKKyAgICAgICAgc3RydWN0IHhlbl9pb21tdV9vcF9lbmFibGVfbW9kaWZpY2F0aW9u IGVuYWJsZV9tb2RpZmljYXRpb247CiAgICAgfSB1OwogfTsKIHR5cGVkZWYgc3RydWN0IHhlbl9p b21tdV9vcCB4ZW5faW9tbXVfb3BfdDsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9pb21t dS5oIGIveGVuL2luY2x1ZGUveGVuL2lvbW11LmgKaW5kZXggMzcwNTJlMDMzZi4uMTQxODZhZThl NCAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUveGVuL2lvbW11LmgKKysrIGIveGVuL2luY2x1ZGUv eGVuL2lvbW11LmgKQEAgLTE0Nyw2ICsxNDcsOSBAQCBzdHJ1Y3QgZG9tYWluX2lvbW11IHsKICAg ICAgKiBpbmNsdWRlL3hlbi9tbS5oKS4KICAgICAgKi8KICAgICBib29sIG5lZWRfc3luYzsKKwor ICAgIC8qIFJhbmdlcyB1bmRlciB0aGUgY29udHJvbCBvZiBQViBJT01NVSBpbnRlcmZhY2UgKi8K KyAgICBzdHJ1Y3QgcmFuZ2VzZXQgKmlvbW11X29wX3JhbmdlczsKIH07CiAKICNkZWZpbmUgZG9t X2lvbW11KGQpICAgICAgICAgICAgICAoJihkKS0+aW9tbXUpCmRpZmYgLS1naXQgYS94ZW4vaW5j bHVkZS94bGF0LmxzdCBiL3hlbi9pbmNsdWRlL3hsYXQubHN0CmluZGV4IGQyZjliMTAzNGIuLmMx YjI3ZTAzNDkgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hsYXQubHN0CisrKyBiL3hlbi9pbmNs dWRlL3hsYXQubHN0CkBAIC03OSw2ICs3OSw3IEBACiA/CXZjcHVfaHZtX3g4Nl82NAkJCWh2bS9o dm1fdmNwdS5oCiAhCWlvbW11X29wCQkJaW9tbXVfb3AuaAogIQlpb21tdV9vcF9idWYJCQlpb21t dV9vcC5oCishCWlvbW11X29wX2VuYWJsZV9tb2RpZmljYXRpb24JaW9tbXVfb3AuaAogIQlpb21t dV9vcF9xdWVyeV9yZXNlcnZlZAkJaW9tbXVfb3AuaAogPwlpb21tdV9yZXNlcnZlZF9yYW5nZQkJ aW9tbXVfb3AuaAogPwlrZXhlY19leGVjCQkJa2V4ZWMuaAotLSAKMi4xMS4wCgoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcg bGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==