From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Paul Subject: Re: [PATCH 06/15] drm: drop _mode_ from drm_mode_connector_attach_encoder Date: Fri, 13 Jul 2018 11:01:14 -0400 Message-ID: <20180713150114.GE20303@art_vandelay> References: <20180709084016.23750-1-daniel.vetter@ffwll.ch> <20180709084016.23750-7-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-yw0-x244.google.com (mail-yw0-x244.google.com [IPv6:2607:f8b0:4002:c05::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6451E6F0E0 for ; Fri, 13 Jul 2018 15:01:17 +0000 (UTC) Received: by mail-yw0-x244.google.com with SMTP id q129-v6so9029930ywg.8 for ; Fri, 13 Jul 2018 08:01:17 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20180709084016.23750-7-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: Daniel Vetter , DRI Development List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBKdWwgMDksIDIwMTggYXQgMTA6NDA6MDdBTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBBZ2FpbiB0byBhbGlnbiB3aXRoIHRoZSB1c3VhbCBwcmVmaXggb2YganVzdCBkcm1f Y29ubmVjdG9yXy4gQWdhaW4KPiBkb25lIHdpdGggc2VkICsgbWFudWFsIGZpeHVwIGZvciBpbmRl bnQgaXNzdWVzLgo+IAo+IFNpZ25lZC1vZmYtYnk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0 ZXJAaW50ZWwuY29tPgoKUmV2aWV3ZWQtYnk6IFNlYW4gUGF1bCA8c2VhbnBhdWxAY2hyb21pdW0u b3JnPgoKPiAtLS0KPiAgRG9jdW1lbnRhdGlvbi9ncHUvZHJtLWttcy5yc3QgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1 X2VuY29kZXJzLmMgICAgICAgICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvZGNlX3ZpcnR1YWwuYyAgICAgICAgICAgICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJt L2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uYyAgICAgIHwgIDIgKy0KPiAgZHJpdmVy cy9ncHUvZHJtL2FyYy9hcmNwZ3Vfc2ltLmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0K PiAgZHJpdmVycy9ncHUvZHJtL2FzdC9hc3RfbW9kZS5jICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2JvY2hzL2JvY2hzX2ttcy5jICAgICAgICAgICAg ICAgICAgICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hZHY3NTExL2Fkdjc1 MTFfZHJ2LmMgICAgICAgICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hbmFs b2dpeC1hbng3OHh4LmMgICAgICAgICAgICAgIHwgIDQgKystLQo+ICBkcml2ZXJzL2dwdS9kcm0v YnJpZGdlL2FuYWxvZ2l4L2FuYWxvZ2l4X2RwX2NvcmUuYyAgICAgfCAgMiArLQo+ICBkcml2ZXJz L2dwdS9kcm0vYnJpZGdlL2R1bWItdmdhLWRhYy5jICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ ICAuLi4vZ3B1L2RybS9icmlkZ2UvbWVnYWNoaXBzLXN0ZHB4eHh4LWdlLWI4NTB2My1mdy5jICAg fCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL254cC1wdG4zNDYwLmMgICAgICAgICAg ICAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3BhbmVsLmMgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3BhcmFk ZS1wczg2MjIuYyAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vYnJp ZGdlL3NpaTkwMnguYyAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dw dS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3LWhkbWkuYyAgICAgICAgICAgICAgfCAgMiArLQo+ICBk cml2ZXJzL2dwdS9kcm0vYnJpZGdlL3RjMzU4NzY3LmMgICAgICAgICAgICAgICAgICAgICAgfCAg MiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3RpLXRmcDQxMC5jICAgICAgICAgICAgICAg ICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vY2lycnVzL2NpcnJ1c19tb2RlLmMgICAg ICAgICAgICAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5j ICAgICAgICAgICAgICAgICAgICAgICAgfCAxMCArKysrKy0tLS0tCj4gIGRyaXZlcnMvZ3B1L2Ry bS9kcm1fc2ltcGxlX2ttc19oZWxwZXIuYyAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZl cnMvZ3B1L2RybS9kcm1fd3JpdGViYWNrLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICst Cj4gIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9kcGkuYyAgICAgICAgICAgICAg ICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9kc2kuYyAgICAg ICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV92 aWRpLmMgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5 bm9zX2hkbWkuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9m c2wtZGN1L2ZzbF9kY3VfZHJtX3JnYi5jICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMv Z3B1L2RybS9nbWE1MDAvZ21hX2Rpc3BsYXkuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCj4g IGRyaXZlcnMvZ3B1L2RybS9nbWE1MDAvbWRmbGRfZHNpX2RwaS5jICAgICAgICAgICAgICAgICB8 ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24vaGlibWMvaGlibWNfZHJtX3ZkYWMu YyAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9pMmMvdGRhOTk4eF9kcnYuYyAgICAg ICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rp c3BsYXkuYyAgICAgICAgICAgICAgICAgICB8ICAzICstLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcF9tc3QuYyAgICAgICAgICAgICAgICAgICAgfCAgMyArLS0KPiAgZHJpdmVycy9n cHUvZHJtL2lteC9pbXgtbGRiLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDMgKy0tCj4g IGRyaXZlcnMvZ3B1L2RybS9pbXgvaW14LXR2ZS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9pbXgvcGFyYWxsZWwtZGlzcGxheS5jICAgICAgICAg ICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHNpLmMgICAg ICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtf aGRtaS5jICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9tZXNv bi9tZXNvbl92ZW5jX2N2YnMuYyAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1 L2RybS9tZ2FnMjAwL21nYWcyMDBfbW9kZS5jICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRy aXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA0L21kcDRfbHZkc19jb25uZWN0b3IuYyAgICB8ICAy ICstCj4gIGRyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaV9tYW5hZ2VyLmMgICAgICAgICAgICAg ICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9tc20vZWRwL2VkcF9jb25uZWN0b3IuYyAg ICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9tc20vaGRtaS9oZG1pX2Nv bm5lY3Rvci5jICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1 L2Rpc3BudjA0L2RhYy5jICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2Ry bS9ub3V2ZWF1L2Rpc3BudjA0L2RmcC5jICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZl cnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjA0L3R2bnYwNC5jICAgICAgICAgICAgICB8ICAyICst Cj4gIGRyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjA0L3R2bnYxNy5jICAgICAgICAgICAg ICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjUwL2Rpc3AuYyAgICAg ICAgICAgICAgICB8ICA4ICsrKystLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBf ZHJ2LmMgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9xeGwv cXhsX2Rpc3BsYXkuYyAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1 L2RybS9yYWRlb24vcmFkZW9uX2VuY29kZXJzLmMgICAgICAgICAgICAgICB8ICAyICstCj4gIGRy aXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfbHZkcy5jICAgICAgICAgICAgICAgICAgICB8ICAy ICstCj4gIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9jZG4tZHAtY29yZS5jICAgICAgICAgICAg ICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9kdy1taXBpLWRzaS5jICAg ICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9pbm5vX2hk bWkuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hp cC9yb2NrY2hpcF9sdmRzLmMgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2Ry bS9zaG1vYmlsZS9zaG1vYl9kcm1fY3J0Yy5jICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZl cnMvZ3B1L2RybS9zdGkvc3RpX2R2by5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICst Cj4gIGRyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2hkYS5jICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2hkbWkuYyAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV9oZG1pX2Vu Yy5jICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40 aV9sdmRzLmMgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9z dW40aS9zdW40aV9yZ2IuYyAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMv Z3B1L2RybS9zdW40aS9zdW40aV90di5jICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4g IGRyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW42aV9taXBpX2RzaS5jICAgICAgICAgICAgICAgICB8 ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS90ZWdyYS9kc2kuYyAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS90ZWdyYS9oZG1pLmMgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS90ZWdyYS9yZ2IuYyAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS90ZWdy YS9zb3IuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1 L2RybS90aWxjZGMvdGlsY2RjX3BhbmVsLmMgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRy aXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX3RmcDQxMC5jICAgICAgICAgICAgICAgICB8ICAy ICstCj4gIGRyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX2Nvbm5lY3Rvci5jICAgICAgICAgICAgICAg ICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2hkbWkuYyAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS92YzQvdmM0X3ZlYy5jICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS92aXJ0aW8v dmlydGdwdV9kaXNwbGF5LmMgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2Ry bS92a21zL3ZrbXNfb3V0cHV0LmMgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZl cnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2xkdS5jICAgICAgICAgICAgICAgICAgICB8ICAyICst Cj4gIGRyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3Njcm4uYyAgICAgICAgICAgICAgICAg ICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3N0ZHUuYyAgICAgICAg ICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS96dGUvenhfaGRtaS5jICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS96dGUvenhfdHZl bmMuYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS96 dGUvenhfdmdhLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMv c3RhZ2luZy92Ym94dmlkZW8vdmJveF9tb2RlLmMgICAgICAgICAgICAgICAgICB8ICAyICstCj4g IGluY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAyICstCj4gIDg2IGZpbGVzIGNoYW5nZWQsIDk0IGluc2VydGlvbnMoKyksIDk3IGRlbGV0aW9u cygtKQo+IAo+IGRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dwdS9kcm0ta21zLnJzdCBiL0Rv Y3VtZW50YXRpb24vZ3B1L2RybS1rbXMucnN0Cj4gaW5kZXggNTE0OTM5NDMzMDA0Li41OGVlZDA4 ZmJlMzEgMTAwNjQ0Cj4gLS0tIGEvRG9jdW1lbnRhdGlvbi9ncHUvZHJtLWttcy5yc3QKPiArKysg Yi9Eb2N1bWVudGF0aW9uL2dwdS9kcm0ta21zLnJzdAo+IEBAIC00NjYsNyArNDY2LDcgQEAgT3V0 cHV0IGRpc2NvdmVyeSBhbmQgaW5pdGlhbGl6YXRpb24gZXhhbXBsZQo+ICAgICAgICAgIGRybV9l bmNvZGVyX2luaXQoZGV2LCAmaW50ZWxfb3V0cHV0LT5lbmMsICZpbnRlbF9jcnRfZW5jX2Z1bmNz LAo+ICAgICAgICAgICAgICAgICAgIERSTV9NT0RFX0VOQ09ERVJfREFDKTsKPiAgCj4gLSAgICAg ICAgZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZpbnRlbF9vdXRwdXQtPmJhc2Us Cj4gKyAgICAgICAgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmaW50ZWxfb3V0cHV0LT5i YXNlLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZpbnRlbF9vdXRwdXQtPmVuYyk7Cj4g IAo+ICAgICAgICAgIC8qIFNldCB1cCB0aGUgRERDIGJ1cy4gKi8KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2VuY29kZXJzLmMgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfZW5jb2RlcnMuYwo+IGluZGV4IDk0MTM4YWJlMDkzYi4uYWU4 ZmFjMzRmN2E1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV9lbmNvZGVycy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Vu Y29kZXJzLmMKPiBAQCAtNDYsNyArNDYsNyBAQCBhbWRncHVfbGlua19lbmNvZGVyX2Nvbm5lY3Rv cihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCWxpc3RfZm9yX2VhY2hfZW50cnkoZW5jb2Rl ciwgJmRldi0+bW9kZV9jb25maWcuZW5jb2Rlcl9saXN0LCBoZWFkKSB7Cj4gIAkJCWFtZGdwdV9l bmNvZGVyID0gdG9fYW1kZ3B1X2VuY29kZXIoZW5jb2Rlcik7Cj4gIAkJCWlmIChhbWRncHVfZW5j b2Rlci0+ZGV2aWNlcyAmIGFtZGdwdV9jb25uZWN0b3ItPmRldmljZXMpIHsKPiAtCQkJCWRybV9t b2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJCQkJ ZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICAJCQkJ aWYgKGFtZGdwdV9lbmNvZGVyLT5kZXZpY2VzICYgKEFUT01fREVWSUNFX0xDRF9TVVBQT1JUKSkg ewo+ICAJCQkJCWFtZGdwdV9hdG9tYmlvc19lbmNvZGVyX2luaXRfYmFja2xpZ2h0KGFtZGdwdV9l bmNvZGVyLCBjb25uZWN0b3IpOwo+ICAJCQkJCWFkZXYtPm1vZGVfaW5mby5ibF9lbmNvZGVyID0g YW1kZ3B1X2VuY29kZXI7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2RjZV92aXJ0dWFsLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdmlydHVhbC5j Cj4gaW5kZXggMDE2ZjE1MDkzMTczLi42NzdlOTZhNTYzMzAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3ZpcnR1YWwuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2RjZV92aXJ0dWFsLmMKPiBAQCAtNjI3LDcgKzYyNyw3IEBAIHN0YXRpYyBp bnQgZGNlX3ZpcnR1YWxfY29ubmVjdG9yX2VuY29kZXJfaW5pdChzdHJ1Y3QgYW1kZ3B1X2Rldmlj ZSAqYWRldiwKPiAgCWRybV9jb25uZWN0b3JfcmVnaXN0ZXIoY29ubmVjdG9yKTsKPiAgCj4gIAkv KiBsaW5rIHRoZW0gKi8KPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25u ZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0 b3IsIGVuY29kZXIpOwo+ICAKPiAgCXJldHVybiAwOwo+ICB9Cj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmMgYi9kcml2ZXJzL2dw dS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbS5jCj4gaW5kZXggYjkzZmE0YjM4 NDFmLi5hMWU2YWFjOWVkMTEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNw bGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlz cGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmMKPiBAQCAtMzY2MCw3ICszNjYwLDcgQEAgc3RhdGlj IGludCBhbWRncHVfZG1fY29ubmVjdG9yX2luaXQoc3RydWN0IGFtZGdwdV9kaXNwbGF5X21hbmFn ZXIgKmRtLAo+ICAJCWxpbmssCj4gIAkJbGlua19pbmRleCk7Cj4gIAo+IC0JZHJtX21vZGVfY29u bmVjdG9yX2F0dGFjaF9lbmNvZGVyKAo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigK PiAgCQkmYWNvbm5lY3Rvci0+YmFzZSwgJmFlbmNvZGVyLT5iYXNlKTsKPiAgCj4gIAlkcm1fY29u bmVjdG9yX3JlZ2lzdGVyKCZhY29ubmVjdG9yLT5iYXNlKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2FyYy9hcmNwZ3Vfc2ltLmMgYi9kcml2ZXJzL2dwdS9kcm0vYXJjL2FyY3BndV9z aW0uYwo+IGluZGV4IGI4ZjZmOWE1ZGZiZS4uNjg2MjllNjE0OTkwIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hcmMvYXJjcGd1X3NpbS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2Fy Yy9hcmNwZ3Vfc2ltLmMKPiBAQCAtOTksNyArOTksNyBAQCBpbnQgYXJjcGd1X2RybV9zaW1faW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLCBzdHJ1Y3QgZGV2aWNlX25vZGUgKm5wKQo+ICAJCWdv dG8gZXJyb3JfZW5jb2Rlcl9jbGVhbnVwOwo+ICAJfQo+ICAKPiAtCXJldCA9IGRybV9tb2RlX2Nv bm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJcmV0ID0gZHJt X2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICAJaWYgKHJl dCA8IDApIHsKPiAgCQlkZXZfZXJyKGRybS0+ZGV2LCAiY291bGQgbm90IGF0dGFjaCBjb25uZWN0 b3IgdG8gZW5jb2RlclxuIik7Cj4gIAkJZHJtX2Nvbm5lY3Rvcl91bnJlZ2lzdGVyKGNvbm5lY3Rv cik7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X21vZGUuYyBiL2RyaXZl cnMvZ3B1L2RybS9hc3QvYXN0X21vZGUuYwo+IGluZGV4IDFiYjgxNzRhZDE1NS4uNWU3N2Q0NTZk OWJiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X21vZGUuYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X21vZGUuYwo+IEBAIC05MDAsNyArOTAwLDcgQEAgc3Rh dGljIGludCBhc3RfY29ubmVjdG9yX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCWNv bm5lY3Rvci0+cG9sbGVkID0gRFJNX0NPTk5FQ1RPUl9QT0xMX0NPTk5FQ1Q7Cj4gIAo+ICAJZW5j b2RlciA9IGxpc3RfZmlyc3RfZW50cnkoJmRldi0+bW9kZV9jb25maWcuZW5jb2Rlcl9saXN0LCBz dHJ1Y3QgZHJtX2VuY29kZXIsIGhlYWQpOwo+IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9l bmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNv ZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAo+ICAJYXN0X2Nvbm5lY3Rvci0+aTJjID0gYXN0 X2kyY19jcmVhdGUoZGV2KTsKPiAgCWlmICghYXN0X2Nvbm5lY3Rvci0+aTJjKQo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHNfa21zLmMgYi9kcml2ZXJzL2dwdS9kcm0v Ym9jaHMvYm9jaHNfa21zLmMKPiBpbmRleCAyMzM5ODBhNzg1OTEuLmNhNWE5YWZkZDVjZiAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHNfa21zLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHNfa21zLmMKPiBAQCAtMjU5LDcgKzI1OSw3IEBAIGludCBi b2Noc19rbXNfaW5pdChzdHJ1Y3QgYm9jaHNfZGV2aWNlICpib2NocykKPiAgCWJvY2hzX2NydGNf aW5pdChib2Nocy0+ZGV2KTsKPiAgCWJvY2hzX2VuY29kZXJfaW5pdChib2Nocy0+ZGV2KTsKPiAg CWJvY2hzX2Nvbm5lY3Rvcl9pbml0KGJvY2hzLT5kZXYpOwo+IC0JZHJtX21vZGVfY29ubmVjdG9y X2F0dGFjaF9lbmNvZGVyKCZib2Nocy0+Y29ubmVjdG9yLAo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRh Y2hfZW5jb2RlcigmYm9jaHMtPmNvbm5lY3RvciwKPiAgCQkJCQkgICZib2Nocy0+ZW5jb2Rlcik7 Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uv YWR2NzUxMS9hZHY3NTExX2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hZHY3NTExL2Fk djc1MTFfZHJ2LmMKPiBpbmRleCAxZjQ3NDU5NTNhY2EuLjY0MzdiODc4NzI0YSAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2Fkdjc1MTEvYWR2NzUxMV9kcnYuYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYWR2NzUxMS9hZHY3NTExX2Rydi5jCj4gQEAgLTg2MCw3 ICs4NjAsNyBAQCBzdGF0aWMgaW50IGFkdjc1MTFfYnJpZGdlX2F0dGFjaChzdHJ1Y3QgZHJtX2Jy aWRnZSAqYnJpZGdlKQo+ICAJfQo+ICAJZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfYWRkKCZhZHYtPmNv bm5lY3RvciwKPiAgCQkJCSAmYWR2NzUxMV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzKTsKPiAtCWRy bV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmYWR2LT5jb25uZWN0b3IsIGJyaWRnZS0+ ZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZhZHYtPmNvbm5lY3Rv ciwgYnJpZGdlLT5lbmNvZGVyKTsKPiAgCj4gIAlpZiAoYWR2LT50eXBlID09IEFEVjc1MzMpCj4g IAkJcmV0ID0gYWR2NzUzM19hdHRhY2hfZHNpKGFkdik7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9icmlkZ2UvYW5hbG9naXgtYW54Nzh4eC5jIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRn ZS9hbmFsb2dpeC1hbng3OHh4LmMKPiBpbmRleCAzN2Y5NDdkY2FkZWMuLmY4NDMzYzkzZjQ2MyAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxvZ2l4LWFueDc4eHguYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgtYW54Nzh4eC5jCj4gQEAgLTEw NDgsOCArMTA0OCw4IEBAIHN0YXRpYyBpbnQgYW54Nzh4eF9icmlkZ2VfYXR0YWNoKHN0cnVjdCBk cm1fYnJpZGdlICpicmlkZ2UpCj4gIAo+ICAJYW54Nzh4eC0+Y29ubmVjdG9yLnBvbGxlZCA9IERS TV9DT05ORUNUT1JfUE9MTF9IUEQ7Cj4gIAo+IC0JZXJyID0gZHJtX21vZGVfY29ubmVjdG9yX2F0 dGFjaF9lbmNvZGVyKCZhbng3OHh4LT5jb25uZWN0b3IsCj4gLQkJCQkJCWJyaWRnZS0+ZW5jb2Rl cik7Cj4gKwllcnIgPSBkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZhbng3OHh4LT5jb25u ZWN0b3IsCj4gKwkJCQkJICAgYnJpZGdlLT5lbmNvZGVyKTsKPiAgCWlmIChlcnIpIHsKPiAgCQlE Uk1fRVJST1IoIkZhaWxlZCB0byBsaW5rIHVwIGNvbm5lY3RvciB0byBlbmNvZGVyOiAlZFxuIiwg ZXJyKTsKPiAgCQlyZXR1cm4gZXJyOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJp ZGdlL2FuYWxvZ2l4L2FuYWxvZ2l4X2RwX2NvcmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uv YW5hbG9naXgvYW5hbG9naXhfZHBfY29yZS5jCj4gaW5kZXggMjg4YzAxNWY3NDYwLi5kNjg5ODZj ZWExMzIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hbmFsb2dpeC9hbmFs b2dpeF9kcF9jb3JlLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxvZ2l4L2Fu YWxvZ2l4X2RwX2NvcmUuYwo+IEBAIC0xMjEwLDcgKzEyMTAsNyBAQCBzdGF0aWMgaW50IGFuYWxv Z2l4X2RwX2JyaWRnZV9hdHRhY2goc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKPiAgCj4gIAkJ ZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfYWRkKGNvbm5lY3RvciwKPiAgCQkJCQkgJmFuYWxvZ2l4X2Rw X2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3MpOwo+IC0JCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hf ZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJCWRybV9jb25uZWN0b3JfYXR0YWNoX2Vu Y29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCX0KPiAgCj4gIAkvKgo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2R1bWItdmdhLWRhYy5jIGIvZHJpdmVycy9ncHUvZHJt L2JyaWRnZS9kdW1iLXZnYS1kYWMuYwo+IGluZGV4IGRhOTliOGJhNGVlMS4uOWI3MDY3ODlhMzQx IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvZHVtYi12Z2EtZGFjLmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2R1bWItdmdhLWRhYy5jCj4gQEAgLTEyMiw3ICsx MjIsNyBAQCBzdGF0aWMgaW50IGR1bWJfdmdhX2F0dGFjaChzdHJ1Y3QgZHJtX2JyaWRnZSAqYnJp ZGdlKQo+ICAJCXJldHVybiByZXQ7Cj4gIAl9Cj4gIAo+IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0 dGFjaF9lbmNvZGVyKCZ2Z2EtPmNvbm5lY3RvciwKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2Vu Y29kZXIoJnZnYS0+Y29ubmVjdG9yLAo+ICAJCQkJCSAgYnJpZGdlLT5lbmNvZGVyKTsKPiAgCj4g IAlyZXR1cm4gMDsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9tZWdhY2hp cHMtc3RkcHh4eHgtZ2UtYjg1MHYzLWZ3LmMgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL21lZ2Fj aGlwcy1zdGRweHh4eC1nZS1iODUwdjMtZncuYwo+IGluZGV4IGI0OWI1NDNiZDFmNi4uMjEzNmM5 N2FlYjhlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvbWVnYWNoaXBzLXN0 ZHB4eHh4LWdlLWI4NTB2My1mdy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9tZWdh Y2hpcHMtc3RkcHh4eHgtZ2UtYjg1MHYzLWZ3LmMKPiBAQCAtMjQxLDcgKzI0MSw3IEBAIHN0YXRp YyBpbnQgZ2VfYjg1MHYzX2x2ZHNfYXR0YWNoKHN0cnVjdCBkcm1fYnJpZGdlICpicmlkZ2UpCj4g IAkJcmV0dXJuIHJldDsKPiAgCX0KPiAgCj4gLQlyZXQgPSBkcm1fbW9kZV9jb25uZWN0b3JfYXR0 YWNoX2VuY29kZXIoY29ubmVjdG9yLCBicmlkZ2UtPmVuY29kZXIpOwo+ICsJcmV0ID0gZHJtX2Nv bm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGJyaWRnZS0+ZW5jb2Rlcik7Cj4gIAlp ZiAocmV0KQo+ICAJCXJldHVybiByZXQ7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vYnJpZGdlL254cC1wdG4zNDYwLmMgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL254cC1wdG4z NDYwLmMKPiBpbmRleCBiZDVjMTkxODU4Y2IuLmEzZTgxN2FiYWNlMSAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vYnJpZGdlL254cC1wdG4zNDYwLmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vYnJpZGdlL254cC1wdG4zNDYwLmMKPiBAQCAtMjY1LDcgKzI2NSw3IEBAIHN0YXRpYyBpbnQg cHRuMzQ2MF9icmlkZ2VfYXR0YWNoKHN0cnVjdCBkcm1fYnJpZGdlICpicmlkZ2UpCj4gIAlkcm1f Y29ubmVjdG9yX2hlbHBlcl9hZGQoJnB0bl9icmlkZ2UtPmNvbm5lY3RvciwKPiAgCQkJCQkmcHRu MzQ2MF9jb25uZWN0b3JfaGVscGVyX2Z1bmNzKTsKPiAgCWRybV9jb25uZWN0b3JfcmVnaXN0ZXIo JnB0bl9icmlkZ2UtPmNvbm5lY3Rvcik7Cj4gLQlkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2Vu Y29kZXIoJnB0bl9icmlkZ2UtPmNvbm5lY3RvciwKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2Vu Y29kZXIoJnB0bl9icmlkZ2UtPmNvbm5lY3RvciwKPiAgCQkJCQkJCWJyaWRnZS0+ZW5jb2Rlcik7 Cj4gIAo+ICAJaWYgKHB0bl9icmlkZ2UtPnBhbmVsKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vYnJpZGdlL3BhbmVsLmMgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3BhbmVsLmMKPiBp bmRleCA2ZDk5ZDRhM2JlYjMuLjdjYmFiYTIxM2VmNiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vYnJpZGdlL3BhbmVsLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3BhbmVs LmMKPiBAQCAtNzksNyArNzksNyBAQCBzdGF0aWMgaW50IHBhbmVsX2JyaWRnZV9hdHRhY2goc3Ry dWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKPiAgCQlyZXR1cm4gcmV0Owo+ICAJfQo+ICAKPiAtCWRy bV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmcGFuZWxfYnJpZGdlLT5jb25uZWN0b3Is Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZwYW5lbF9icmlkZ2UtPmNvbm5lY3Rv ciwKPiAgCQkJCQkgIGJyaWRnZS0+ZW5jb2Rlcik7Cj4gIAo+ICAJcmV0ID0gZHJtX3BhbmVsX2F0 dGFjaChwYW5lbF9icmlkZ2UtPnBhbmVsLCAmcGFuZWxfYnJpZGdlLT5jb25uZWN0b3IpOwo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3BhcmFkZS1wczg2MjIuYyBiL2RyaXZl cnMvZ3B1L2RybS9icmlkZ2UvcGFyYWRlLXBzODYyMi5jCj4gaW5kZXggODExOThmNWU5YWZhLi43 MzM0ZDFiNjJiNzEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9wYXJhZGUt cHM4NjIyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3BhcmFkZS1wczg2MjIuYwo+ IEBAIC01MDMsNyArNTAzLDcgQEAgc3RhdGljIGludCBwczg2MjJfYXR0YWNoKHN0cnVjdCBkcm1f YnJpZGdlICpicmlkZ2UpCj4gIAlkcm1fY29ubmVjdG9yX2hlbHBlcl9hZGQoJnBzODYyMi0+Y29u bmVjdG9yLAo+ICAJCQkJCSZwczg2MjJfY29ubmVjdG9yX2hlbHBlcl9mdW5jcyk7Cj4gIAlkcm1f Y29ubmVjdG9yX3JlZ2lzdGVyKCZwczg2MjItPmNvbm5lY3Rvcik7Cj4gLQlkcm1fbW9kZV9jb25u ZWN0b3JfYXR0YWNoX2VuY29kZXIoJnBzODYyMi0+Y29ubmVjdG9yLAo+ICsJZHJtX2Nvbm5lY3Rv cl9hdHRhY2hfZW5jb2RlcigmcHM4NjIyLT5jb25uZWN0b3IsCj4gIAkJCQkJCQlicmlkZ2UtPmVu Y29kZXIpOwo+ICAKPiAgCWlmIChwczg2MjItPnBhbmVsKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vYnJpZGdlL3NpaTkwMnguYyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc2lpOTAy eC5jCj4gaW5kZXggY2QzMzE5MzNjMjMwLi5lNTlhMTM1NDIzMzMgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2JyaWRnZS9zaWk5MDJ4LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYnJp ZGdlL3NpaTkwMnguYwo+IEBAIC0zMjQsNyArMzI0LDcgQEAgc3RhdGljIGludCBzaWk5MDJ4X2Jy aWRnZV9hdHRhY2goc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKPiAgCWVsc2UKPiAgCQlzaWk5 MDJ4LT5jb25uZWN0b3IucG9sbGVkID0gRFJNX0NPTk5FQ1RPUl9QT0xMX0NPTk5FQ1Q7Cj4gIAo+ IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZzaWk5MDJ4LT5jb25uZWN0b3Is IGJyaWRnZS0+ZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZzaWk5 MDJ4LT5jb25uZWN0b3IsIGJyaWRnZS0+ZW5jb2Rlcik7Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gIH0K PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zeW5vcHN5cy9kdy1oZG1pLmMg Yi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3LWhkbWkuYwo+IGluZGV4IGFiMzJh Y2ViNmYyNC4uNTk3MTk3NjI4NGJmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9icmlk Z2Uvc3lub3BzeXMvZHctaGRtaS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zeW5v cHN5cy9kdy1oZG1pLmMKPiBAQCAtMTk3NCw3ICsxOTc0LDcgQEAgc3RhdGljIGludCBkd19oZG1p X2JyaWRnZV9hdHRhY2goc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKPiAgCWRybV9jb25uZWN0 b3JfaW5pdChicmlkZ2UtPmRldiwgY29ubmVjdG9yLCAmZHdfaGRtaV9jb25uZWN0b3JfZnVuY3Ms Cj4gIAkJCSAgIERSTV9NT0RFX0NPTk5FQ1RPUl9IRE1JQSk7Cj4gIAo+IC0JZHJtX21vZGVfY29u bmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVj dG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAo+ICAJcmV0dXJuIDA7 Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS90YzM1ODc2Ny5jIGIv ZHJpdmVycy9ncHUvZHJtL2JyaWRnZS90YzM1ODc2Ny5jCj4gaW5kZXggZWUyZmQwYTM0OWIzLi44 ZTI4ZTczOGNiNTIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS90YzM1ODc2 Ny5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS90YzM1ODc2Ny5jCj4gQEAgLTExOTUs NyArMTE5NSw3IEBAIHN0YXRpYyBpbnQgdGNfYnJpZGdlX2F0dGFjaChzdHJ1Y3QgZHJtX2JyaWRn ZSAqYnJpZGdlKQo+ICAKPiAgCWRybV9kaXNwbGF5X2luZm9fc2V0X2J1c19mb3JtYXRzKCZ0Yy0+ Y29ubmVjdG9yLmRpc3BsYXlfaW5mbywKPiAgCQkJCQkgJmJ1c19mb3JtYXQsIDEpOwo+IC0JZHJt X21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZ0Yy0+Y29ubmVjdG9yLCB0Yy0+YnJpZGdl LmVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmdGMtPmNvbm5lY3Rv ciwgdGMtPmJyaWRnZS5lbmNvZGVyKTsKPiAgCj4gIAlyZXR1cm4gMDsKPiAgfQo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3RpLXRmcDQxMC5jIGIvZHJpdmVycy9ncHUvZHJt L2JyaWRnZS90aS10ZnA0MTAuYwo+IGluZGV4IGM4MWJmNzkxMGJiZS4uYzNlMzIxMzhjNmJiIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvdGktdGZwNDEwLmMKPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vYnJpZGdlL3RpLXRmcDQxMC5jCj4gQEAgLTEzMiw3ICsxMzIsNyBAQCBz dGF0aWMgaW50IHRmcDQxMF9hdHRhY2goc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKPiAgCQly ZXR1cm4gcmV0Owo+ICAJfQo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rl cigmZHZpLT5jb25uZWN0b3IsCj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZkdmkt PmNvbm5lY3RvciwKPiAgCQkJCQkgIGJyaWRnZS0+ZW5jb2Rlcik7Cj4gIAo+ICAJcmV0dXJuIDA7 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVzX21vZGUuYyBiL2Ry aXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVzX21vZGUuYwo+IGluZGV4IGI1MjlmOGM4ZTJhNi4u MzM2YmZkYTQwMTI1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVz X21vZGUuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVzX21vZGUuYwo+IEBA IC01MzAsNyArNTMwLDcgQEAgaW50IGNpcnJ1c19tb2Rlc2V0X2luaXQoc3RydWN0IGNpcnJ1c19k ZXZpY2UgKmNkZXYpCj4gIAkJcmV0dXJuIC0xOwo+ICAJfQo+ICAKPiAtCWRybV9tb2RlX2Nvbm5l Y3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rv cl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICAKPiAgCXJldCA9IGNpcnJ1 c19mYmRldl9pbml0KGNkZXYpOwo+ICAJaWYgKHJldCkgewo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3Iu Ywo+IGluZGV4IGNjYjcwYTQ0OTBkMy4uNDNjZDYzNmQ4M2I1IDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nv bm5lY3Rvci5jCj4gQEAgLTUyLDcgKzUyLDcgQEAKPiAgICoKPiAgICogQ29ubmVjdG9ycyBtdXN0 IGJlIGF0dGFjaGVkIHRvIGFuIGVuY29kZXIgdG8gYmUgdXNlZC4gRm9yIGRldmljZXMgdGhhdCBt YXAKPiAgICogY29ubmVjdG9ycyB0byBlbmNvZGVycyAxOjEsIHRoZSBjb25uZWN0b3Igc2hvdWxk IGJlIGF0dGFjaGVkIGF0Cj4gLSAqIGluaXRpYWxpemF0aW9uIHRpbWUgd2l0aCBhIGNhbGwgdG8g ZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCkuIFRoZQo+ICsgKiBpbml0aWFsaXph dGlvbiB0aW1lIHdpdGggYSBjYWxsIHRvIGRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoKS4g VGhlCj4gICAqIGRyaXZlciBtdXN0IGFsc28gc2V0IHRoZSAmZHJtX2Nvbm5lY3Rvci5lbmNvZGVy IGZpZWxkIHRvIHBvaW50IHRvIHRoZQo+ICAgKiBhdHRhY2hlZCBlbmNvZGVyLgo+ICAgKgo+IEBA IC0yOTUsNyArMjk1LDcgQEAgaW50IGRybV9jb25uZWN0b3JfaW5pdChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAo+ICBFWFBPUlRfU1lNQk9MKGRybV9jb25uZWN0b3JfaW5pdCk7Cj4gIAo+ICAvKioK PiAtICogZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyIC0gYXR0YWNoIGEgY29ubmVj dG9yIHRvIGFuIGVuY29kZXIKPiArICogZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlciAtIGF0 dGFjaCBhIGNvbm5lY3RvciB0byBhbiBlbmNvZGVyCj4gICAqIEBjb25uZWN0b3I6IGNvbm5lY3Rv ciB0byBhdHRhY2gKPiAgICogQGVuY29kZXI6IGVuY29kZXIgdG8gYXR0YWNoIEBjb25uZWN0b3Ig dG8KPiAgICoKPiBAQCAtMzA2LDggKzMwNiw4IEBAIEVYUE9SVF9TWU1CT0woZHJtX2Nvbm5lY3Rv cl9pbml0KTsKPiAgICogUmV0dXJuczoKPiAgICogWmVybyBvbiBzdWNjZXNzLCBuZWdhdGl2ZSBl cnJubyBvbiBmYWlsdXJlLgo+ICAgKi8KPiAtaW50IGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hf ZW5jb2RlcihzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+IC0JCQkJICAgICAgc3Ry dWN0IGRybV9lbmNvZGVyICplbmNvZGVyKQo+ICtpbnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5j b2RlcihzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ICsJCQkJIHN0cnVjdCBkcm1f ZW5jb2RlciAqZW5jb2RlcikKPiAgewo+ICAJaW50IGk7Cj4gIAo+IEBAIC0zMzMsNyArMzMzLDcg QEAgaW50IGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcihzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yLAo+ICAJfQo+ICAJcmV0dXJuIC1FTk9NRU07Cj4gIH0KPiAtRVhQT1JU X1NZTUJPTChkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIpOwo+ICtFWFBPUlRfU1lN Qk9MKGRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIpOwo+ICAKPiAgLyoqCj4gICAqIGRybV9j b25uZWN0b3JfaGFzX3Bvc3NpYmxlX2VuY29kZXIgLSBjaGVjayBpZiB0aGUgY29ubmVjdG9yIGFu ZCBlbmNvZGVyIGFyZSBhc3Nvc2ljYXRlZCB3aXRoIGVhY2ggb3RoZXIKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2RybV9zaW1wbGVfa21zX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJt L2RybV9zaW1wbGVfa21zX2hlbHBlci5jCj4gaW5kZXggYjcyZmNmMWU5NjA1Li41MWZhOTc4ZjBk MjMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9zaW1wbGVfa21zX2hlbHBlci5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9zaW1wbGVfa21zX2hlbHBlci5jCj4gQEAgLTI4 Nyw3ICsyODcsNyBAQCBpbnQgZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGVfaW5pdChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LAo+ICAJaWYgKHJldCB8fCAhY29ubmVjdG9yKQo+ICAJCXJldHVybiByZXQ7 Cj4gIAo+IC0JcmV0dXJuIGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0 b3IsIGVuY29kZXIpOwo+ICsJcmV0dXJuIGRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29u bmVjdG9yLCBlbmNvZGVyKTsKPiAgfQo+ICBFWFBPUlRfU1lNQk9MKGRybV9zaW1wbGVfZGlzcGxh eV9waXBlX2luaXQpOwo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV93cml0 ZWJhY2suYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fd3JpdGViYWNrLmMKPiBpbmRleCA4MjczOTUw NzFmMGIuLmU2NTViY2M2Yzc1YyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3dy aXRlYmFjay5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV93cml0ZWJhY2suYwo+IEBAIC0x OTksNyArMTk5LDcgQEAgaW50IGRybV93cml0ZWJhY2tfY29ubmVjdG9yX2luaXQoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwKPiAgCWlmIChyZXQpCj4gIAkJZ290byBjb25uZWN0b3JfZmFpbDsKPiAg Cj4gLQlyZXQgPSBkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLAo+ ICsJcmV0ID0gZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsCj4gIAkJCQkJ CSZ3Yl9jb25uZWN0b3ItPmVuY29kZXIpOwo+ICAJaWYgKHJldCkKPiAgCQlnb3RvIGF0dGFjaF9m YWlsOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZHBp LmMgYi9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZHBpLmMKPiBpbmRleCA2Njk0 NWUwZGM1N2YuLmUzYTM0M2JiMTRiNyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZXh5 bm9zL2V4eW5vc19kcm1fZHBpLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5v c19kcm1fZHBpLmMKPiBAQCAtMTEzLDcgKzExMyw3IEBAIHN0YXRpYyBpbnQgZXh5bm9zX2RwaV9j cmVhdGVfY29ubmVjdG9yKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKPiAgCX0KPiAgCj4g IAlkcm1fY29ubmVjdG9yX2hlbHBlcl9hZGQoY29ubmVjdG9yLCAmZXh5bm9zX2RwaV9jb25uZWN0 b3JfaGVscGVyX2Z1bmNzKTsKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihj b25uZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25u ZWN0b3IsIGVuY29kZXIpOwo+ICAKPiAgCXJldHVybiAwOwo+ICB9Cj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9kc2kuYyBiL2RyaXZlcnMvZ3B1L2RybS9l eHlub3MvZXh5bm9zX2RybV9kc2kuYwo+IGluZGV4IDZkMjk3Nzc4ODRmOS4uYmVlNmQ0YTQwNzhk IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9kc2kuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9kc2kuYwo+IEBAIC0xNDc5 LDcgKzE0NzksNyBAQCBzdGF0aWMgaW50IGV4eW5vc19kc2lfY3JlYXRlX2Nvbm5lY3RvcihzdHJ1 Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCj4gIAo+ICAJY29ubmVjdG9yLT5zdGF0dXMgPSBjb25u ZWN0b3Jfc3RhdHVzX2Rpc2Nvbm5lY3RlZDsKPiAgCWRybV9jb25uZWN0b3JfaGVscGVyX2FkZChj b25uZWN0b3IsICZleHlub3NfZHNpX2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3MpOwo+IC0JZHJtX21v ZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gKwlkcm1f Y29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAo+ICAJcmV0 dXJuIDA7Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3Nf ZHJtX3ZpZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV92aWRpLmMKPiBp bmRleCBkZmVhNjFlZGJhNGEuLjE5Njk3YzEzNjJkOCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fdmlkaS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2V4 eW5vcy9leHlub3NfZHJtX3ZpZGkuYwo+IEBAIC0zNDQsNyArMzQ0LDcgQEAgc3RhdGljIGludCB2 aWRpX2NyZWF0ZV9jb25uZWN0b3Ioc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyKQo+ICAJfQo+ ICAKPiAgCWRybV9jb25uZWN0b3JfaGVscGVyX2FkZChjb25uZWN0b3IsICZ2aWRpX2Nvbm5lY3Rv cl9oZWxwZXJfZnVuY3MpOwo+IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNv bm5lY3RvciwgZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5l Y3RvciwgZW5jb2Rlcik7Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfaGRtaS5jIGIvZHJpdmVycy9ncHUvZHJtL2V4eW5v cy9leHlub3NfaGRtaS5jCj4gaW5kZXggNjY3MmQwZmYwNDIzLi4zYTExYzcxOWE1ODAgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfaGRtaS5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfaGRtaS5jCj4gQEAgLTk1MSw3ICs5NTEsNyBAQCBz dGF0aWMgaW50IGhkbWlfY3JlYXRlX2Nvbm5lY3RvcihzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29k ZXIpCj4gIAl9Cj4gIAo+ICAJZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfYWRkKGNvbm5lY3RvciwgJmhk bWlfY29ubmVjdG9yX2hlbHBlcl9mdW5jcyk7Cj4gLQlkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNo X2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2Vu Y29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCj4gIAlpZiAoaGRhdGEtPmJyaWRnZSkgewo+ ICAJCXJldCA9IGRybV9icmlkZ2VfYXR0YWNoKGVuY29kZXIsIGhkYXRhLT5icmlkZ2UsIE5VTEwp Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZnNsLWRjdS9mc2xfZGN1X2RybV9yZ2Iu YyBiL2RyaXZlcnMvZ3B1L2RybS9mc2wtZGN1L2ZzbF9kY3VfZHJtX3JnYi5jCj4gaW5kZXggYzU0 ODA2ZDA4ZGQ3Li5hMzdjMDY5OTZmZmUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2Zz bC1kY3UvZnNsX2RjdV9kcm1fcmdiLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZnNsLWRjdS9m c2xfZGN1X2RybV9yZ2IuYwo+IEBAIC0xMTcsNyArMTE3LDcgQEAgc3RhdGljIGludCBmc2xfZGN1 X2F0dGFjaF9wYW5lbChzdHJ1Y3QgZnNsX2RjdV9kcm1fZGV2aWNlICpmc2xfZGV2LAo+ICAJaWYg KHJldCA8IDApCj4gIAkJZ290byBlcnJfY2xlYW51cDsKPiAgCj4gLQlyZXQgPSBkcm1fbW9kZV9j b25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiArCXJldCA9IGRy bV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCWlmIChy ZXQgPCAwKQo+ICAJCWdvdG8gZXJyX3N5c2ZzOwo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2dtYTUwMC9nbWFfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2dtYTUwMC9nbWFf ZGlzcGxheS5jCj4gaW5kZXggMDhmMTdmODViODAxLi4wOWMxMTYxYTdhYzYgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2dtYTUwMC9nbWFfZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2dtYTUwMC9nbWFfZGlzcGxheS5jCj4gQEAgLTY2NSw3ICs2NjUsNyBAQCB2b2lkIGdt YV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoc3RydWN0IGdtYV9jb25uZWN0b3IgKmNvbm5lY3Rv ciwKPiAgCQkJCSAgc3RydWN0IGdtYV9lbmNvZGVyICplbmNvZGVyKQo+ICB7Cj4gIAljb25uZWN0 b3ItPmVuY29kZXIgPSBlbmNvZGVyOwo+IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNv ZGVyKCZjb25uZWN0b3ItPmJhc2UsCj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZj b25uZWN0b3ItPmJhc2UsCj4gIAkJCQkJICAmZW5jb2Rlci0+YmFzZSk7Cj4gIH0KPiAgCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9nbWE1MDAvbWRmbGRfZHNpX2RwaS5jIGIvZHJpdmVy cy9ncHUvZHJtL2dtYTUwMC9tZGZsZF9kc2lfZHBpLmMKPiBpbmRleCBhMDVjMDIwNjAyYmQuLmQw YmY1YTFlOTRlOCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZ21hNTAwL21kZmxkX2Rz aV9kcGkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9nbWE1MDAvbWRmbGRfZHNpX2RwaS5jCj4g QEAgLTk5OSw3ICs5OTksNyBAQCBzdHJ1Y3QgbWRmbGRfZHNpX2VuY29kZXIgKm1kZmxkX2RzaV9k cGlfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJCQkJcF9mdW5jcy0+ZW5jb2Rlcl9o ZWxwZXJfZnVuY3MpOwo+ICAKPiAgCS8qYXR0YWNoIHRvIGdpdmVuIGNvbm5lY3RvciovCj4gLQlk cm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAr CWRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCj4g IAkvKnNldCBwb3NzaWJsZSBjcnRjcyBhbmQgY2xvbmVzKi8KPiAgCWlmIChkc2lfY29ubmVjdG9y LT5waXBlKSB7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24vaGlibWMv aGlibWNfZHJtX3ZkYWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24vaGlibWMvaGlibWNf ZHJtX3ZkYWMuYwo+IGluZGV4IGQyZjQ3NDllYmY4ZC4uNzQ0OTU2Y2VhNzQ5IDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24vaGlibWMvaGlibWNfZHJtX3ZkYWMuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24vaGlibWMvaGlibWNfZHJtX3ZkYWMuYwo+IEBA IC0xMzMsNyArMTMzLDcgQEAgaW50IGhpYm1jX3ZkYWNfaW5pdChzdHJ1Y3QgaGlibWNfZHJtX3By aXZhdGUgKnByaXYpCj4gIAl9Cj4gIAo+ICAJZHJtX2VuY29kZXJfaGVscGVyX2FkZChlbmNvZGVy LCAmaGlibWNfZW5jb2Rlcl9oZWxwZXJfZnVuY3MpOwo+IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0 dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFj aF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gIH0KPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jIGIvZHJpdmVycy9n cHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jCj4gaW5kZXggZDQzNGY1NzZlNmIyLi5lZWNkYzMyN2I5 ZjggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jCj4gQEAgLTEzMDEsNyArMTMwMSw3 IEBAIHN0YXRpYyBpbnQgdGRhOTk4eF9jb25uZWN0b3JfaW5pdChzdHJ1Y3QgdGRhOTk4eF9wcml2 ICpwcml2LAo+ICAJaWYgKHJldCkKPiAgCQlyZXR1cm4gcmV0Owo+ICAKPiAtCWRybV9tb2RlX2Nv bm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmcHJpdi0+Y29ubmVjdG9yLCAmcHJpdi0+ZW5jb2Rlcik7 Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZwcml2LT5jb25uZWN0b3IsICZwcml2 LT5lbmNvZGVyKTsKPiAgCj4gIAlyZXR1cm4gMDsKPiAgfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMKPiBpbmRleCBiYjkzMDc1NTU0NGQuLmJlNWQ1ZGQ3NWMzYiAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBAQCAtMTU5MzQsOCArMTU5MzQsNyBAQCB2 b2lkIGludGVsX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcihzdHJ1Y3QgaW50ZWxfY29ubmVjdG9y ICpjb25uZWN0b3IsCj4gIAkJCQkgICAgc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4g IHsKPiAgCWNvbm5lY3Rvci0+ZW5jb2RlciA9IGVuY29kZXI7Cj4gLQlkcm1fbW9kZV9jb25uZWN0 b3JfYXR0YWNoX2VuY29kZXIoJmNvbm5lY3Rvci0+YmFzZSwKPiAtCQkJCQkgICZlbmNvZGVyLT5i YXNlKTsKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJmNvbm5lY3Rvci0+YmFzZSwg JmVuY29kZXItPmJhc2UpOwo+ICB9Cj4gIAo+ICAvKgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcF9tc3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rw X21zdC5jCj4gaW5kZXggODVlY2Y0MWVlYWJiLi40OTRlNWM0MGE0NjQgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfbXN0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcF9tc3QuYwo+IEBAIC00NjYsOCArNDY2LDcgQEAgc3RhdGljIHN0cnVj dCBkcm1fY29ubmVjdG9yICppbnRlbF9kcF9hZGRfbXN0X2Nvbm5lY3RvcihzdHJ1Y3QgZHJtX2Rw X21zdF90b3BvbG8KPiAgCQlzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuYyA9Cj4gIAkJCSZpbnRlbF9k cC0+bXN0X2VuY29kZXJzW3BpcGVdLT5iYXNlLmJhc2U7Cj4gIAo+IC0JCXJldCA9IGRybV9tb2Rl X2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmaW50ZWxfY29ubmVjdG9yLT5iYXNlLAo+IC0JCQkJ CQkJZW5jKTsKPiArCQlyZXQgPSBkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZpbnRlbF9j b25uZWN0b3ItPmJhc2UsIGVuYyk7Cj4gIAkJaWYgKHJldCkKPiAgCQkJZ290byBlcnI7Cj4gIAl9 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvaW14LWxkYi5jIGIvZHJpdmVycy9n cHUvZHJtL2lteC9pbXgtbGRiLmMKPiBpbmRleCBhZTgxY2JiNzVmNTEuLjczMTJiZWI2ZjFmYyAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1sZGIuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pbXgvaW14LWxkYi5jCj4gQEAgLTQ3MSw4ICs0NzEsNyBAQCBzdGF0aWMgaW50 IGlteF9sZGJfcmVnaXN0ZXIoc3RydWN0IGRybV9kZXZpY2UgKmRybSwKPiAgCQlkcm1fY29ubmVj dG9yX2luaXQoZHJtLCAmaW14X2xkYl9jaC0+Y29ubmVjdG9yLAo+ICAJCQkJJmlteF9sZGJfY29u bmVjdG9yX2Z1bmNzLAo+ICAJCQkJRFJNX01PREVfQ09OTkVDVE9SX0xWRFMpOwo+IC0JCWRybV9t b2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmaW14X2xkYl9jaC0+Y29ubmVjdG9yLAo+IC0J CQkJZW5jb2Rlcik7Cj4gKwkJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmaW14X2xkYl9j aC0+Y29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCX0KPiAgCj4gIAlpZiAoaW14X2xkYl9jaC0+cGFu ZWwpIHsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2lteC9pbXgtdHZlLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaW14L2lteC10dmUuYwo+IGluZGV4IDFhNGNlZDVjMDliNS4uY2ZmZDMzMTAy NDBlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvaW14LXR2ZS5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2lteC9pbXgtdHZlLmMKPiBAQCAtNDkzLDcgKzQ5Myw3IEBAIHN0YXRp YyBpbnQgaW14X3R2ZV9yZWdpc3RlcihzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLCBzdHJ1Y3QgaW14 X3R2ZSAqdHZlKQo+ICAJZHJtX2Nvbm5lY3Rvcl9pbml0KGRybSwgJnR2ZS0+Y29ubmVjdG9yLCAm aW14X3R2ZV9jb25uZWN0b3JfZnVuY3MsCj4gIAkJCSAgIERSTV9NT0RFX0NPTk5FQ1RPUl9WR0Ep Owo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmdHZlLT5jb25uZWN0 b3IsICZ0dmUtPmVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmdHZl LT5jb25uZWN0b3IsICZ0dmUtPmVuY29kZXIpOwo+ICAKPiAgCXJldHVybiAwOwo+ICB9Cj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvcGFyYWxsZWwtZGlzcGxheS5jIGIvZHJpdmVy cy9ncHUvZHJtL2lteC9wYXJhbGxlbC1kaXNwbGF5LmMKPiBpbmRleCA0ZmMxY2Y1ODM0MzUuLmFl ZmQwNGUxOGY5MyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaW14L3BhcmFsbGVsLWRp c3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pbXgvcGFyYWxsZWwtZGlzcGxheS5jCj4g QEAgLTE5Nyw3ICsxOTcsNyBAQCBzdGF0aWMgaW50IGlteF9wZF9yZWdpc3RlcihzdHJ1Y3QgZHJt X2RldmljZSAqZHJtLAo+ICAJCQlyZXR1cm4gcmV0Owo+ICAJCX0KPiAgCX0gZWxzZSB7Cj4gLQkJ ZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZpbXhwZC0+Y29ubmVjdG9yLCBlbmNv ZGVyKTsKPiArCQlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZpbXhwZC0+Y29ubmVjdG9y LCBlbmNvZGVyKTsKPiAgCX0KPiAgCj4gIAlyZXR1cm4gMDsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL21lZGlhdGVrL210a19kc2kuYyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9t dGtfZHNpLmMKPiBpbmRleCBhYTA5NDNlYzMyYjAuLjY2ZGYxYjE3Nzk1OSAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RzaS5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL21lZGlhdGVrL210a19kc2kuYwo+IEBAIC03ODIsNyArNzgyLDcgQEAgc3RhdGljIGludCBt dGtfZHNpX2NyZWF0ZV9jb25uZWN0b3Ioc3RydWN0IGRybV9kZXZpY2UgKmRybSwgc3RydWN0IG10 a19kc2kgKmRzaSkKPiAgCWRybV9jb25uZWN0b3JfaGVscGVyX2FkZCgmZHNpLT5jb25uLCAmbXRr X2RzaV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzKTsKPiAgCj4gIAlkc2ktPmNvbm4uZHBtcyA9IERS TV9NT0RFX0RQTVNfT0ZGOwo+IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZk c2ktPmNvbm4sICZkc2ktPmVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rl cigmZHNpLT5jb25uLCAmZHNpLT5lbmNvZGVyKTsKPiAgCj4gIAlpZiAoZHNpLT5wYW5lbCkgewo+ ICAJCXJldCA9IGRybV9wYW5lbF9hdHRhY2goZHNpLT5wYW5lbCwgJmRzaS0+Y29ubik7Cj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfaGRtaS5jIGIvZHJpdmVycy9n cHUvZHJtL21lZGlhdGVrL210a19oZG1pLmMKPiBpbmRleCA4MzUzMTM5NDAzOTUuLjJkNDVkMWRk OTU1NCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2hkbWkuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfaGRtaS5jCj4gQEAgLTEzMDYsNyAr MTMwNiw3IEBAIHN0YXRpYyBpbnQgbXRrX2hkbWlfYnJpZGdlX2F0dGFjaChzdHJ1Y3QgZHJtX2Jy aWRnZSAqYnJpZGdlKQo+ICAJaGRtaS0+Y29ubi5pbnRlcmxhY2VfYWxsb3dlZCA9IHRydWU7Cj4g IAloZG1pLT5jb25uLmRvdWJsZXNjYW5fYWxsb3dlZCA9IGZhbHNlOwo+ICAKPiAtCXJldCA9IGRy bV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmaGRtaS0+Y29ubiwKPiArCXJldCA9IGRy bV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJmhkbWktPmNvbm4sCj4gIAkJCQkJCWJyaWRnZS0+ ZW5jb2Rlcik7Cj4gIAlpZiAocmV0KSB7Cj4gIAkJZGV2X2VycihoZG1pLT5kZXYsCj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZXNvbi9tZXNvbl92ZW5jX2N2YnMuYyBiL2RyaXZlcnMv Z3B1L2RybS9tZXNvbi9tZXNvbl92ZW5jX2N2YnMuYwo+IGluZGV4IDc5ZDk1Y2E4YTBjMC4uZjc5 NDViYWUzYjRhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZXNvbi9tZXNvbl92ZW5j X2N2YnMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZXNvbi9tZXNvbl92ZW5jX2N2YnMuYwo+ IEBAIC0yODIsNyArMjgyLDcgQEAgaW50IG1lc29uX3ZlbmNfY3Zic19jcmVhdGUoc3RydWN0IG1l c29uX2RybSAqcHJpdikKPiAgCj4gIAllbmNvZGVyLT5wb3NzaWJsZV9jcnRjcyA9IEJJVCgwKTsK PiAgCj4gLQlkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNv ZGVyKTsKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVy KTsKPiAgCj4gIAlyZXR1cm4gMDsKPiAgfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v bWdhZzIwMC9tZ2FnMjAwX21vZGUuYyBiL2RyaXZlcnMvZ3B1L2RybS9tZ2FnMjAwL21nYWcyMDBf bW9kZS5jCj4gaW5kZXggNWYxMDRmMTM5MTk3Li5hY2Y3YmZlNjg0NTQgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9tb2RlLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vbWdhZzIwMC9tZ2FnMjAwX21vZGUuYwo+IEBAIC0xNzQ3LDcgKzE3NDcsNyBAQCBpbnQg bWdhZzIwMF9tb2Rlc2V0X2luaXQoc3RydWN0IG1nYV9kZXZpY2UgKm1kZXYpCj4gIAkJcmV0dXJu IC0xOwo+ICAJfQo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25u ZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0 b3IsIGVuY29kZXIpOwo+ICAKPiAgCXJldCA9IG1nYWcyMDBfZmJkZXZfaW5pdChtZGV2KTsKPiAg CWlmIChyZXQpIHsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL21kcDQv bWRwNF9sdmRzX2Nvbm5lY3Rvci5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL21kcDQvbWRw NF9sdmRzX2Nvbm5lY3Rvci5jCj4gaW5kZXggZTNiMWM4NmI3YWFlLi5kZjY0MmUwNmVkMGQgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL21kcDQvbWRwNF9sdmRzX2Nvbm5l Y3Rvci5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL21kcDQvbWRwNF9sdmRzX2Nv bm5lY3Rvci5jCj4gQEAgLTEyOSw3ICsxMjksNyBAQCBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqbWRw NF9sdmRzX2Nvbm5lY3Rvcl9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAljb25uZWN0 b3ItPmludGVybGFjZV9hbGxvd2VkID0gMDsKPiAgCWNvbm5lY3Rvci0+ZG91Ymxlc2Nhbl9hbGxv d2VkID0gMDsKPiAgCj4gLQlkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVj dG9yLCBlbmNvZGVyKTsKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9y LCBlbmNvZGVyKTsKPiAgCj4gIAlyZXR1cm4gY29ubmVjdG9yOwo+ICB9Cj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaV9tYW5hZ2VyLmMgYi9kcml2ZXJzL2dwdS9kcm0v bXNtL2RzaS9kc2lfbWFuYWdlci5jCj4gaW5kZXggNGJlYmEzZjdkMDY3Li4yMWUwZGM1MTUzMWQg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kc2kvZHNpX21hbmFnZXIuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaV9tYW5hZ2VyLmMKPiBAQCAtNjg0LDcgKzY4 NCw3IEBAIHN0cnVjdCBkcm1fY29ubmVjdG9yICptc21fZHNpX21hbmFnZXJfY29ubmVjdG9yX2lu aXQodTggaWQpCj4gIAljb25uZWN0b3ItPmludGVybGFjZV9hbGxvd2VkID0gMDsKPiAgCWNvbm5l Y3Rvci0+ZG91Ymxlc2Nhbl9hbGxvd2VkID0gMDsKPiAgCj4gLQlkcm1fbW9kZV9jb25uZWN0b3Jf YXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBtc21fZHNpLT5lbmNvZGVyKTsKPiArCWRybV9jb25u ZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBtc21fZHNpLT5lbmNvZGVyKTsKPiAgCj4g IAlyZXR1cm4gY29ubmVjdG9yOwo+ICB9Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9t c20vZWRwL2VkcF9jb25uZWN0b3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZWRwL2VkcF9jb25u ZWN0b3IuYwo+IGluZGV4IDBiNWVhYzA1NDE5NS4uMDU4ZmY5MmEwMjA3IDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZWRwL2VkcF9jb25uZWN0b3IuYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9tc20vZWRwL2VkcF9jb25uZWN0b3IuYwo+IEBAIC0xMzQsNyArMTM0LDcgQEAgc3Ry dWN0IGRybV9jb25uZWN0b3IgKm1zbV9lZHBfY29ubmVjdG9yX2luaXQoc3RydWN0IG1zbV9lZHAg KmVkcCkKPiAgCWNvbm5lY3Rvci0+aW50ZXJsYWNlX2FsbG93ZWQgPSBmYWxzZTsKPiAgCWNvbm5l Y3Rvci0+ZG91Ymxlc2Nhbl9hbGxvd2VkID0gZmFsc2U7Cj4gIAo+IC0JZHJtX21vZGVfY29ubmVj dG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZWRwLT5lbmNvZGVyKTsKPiArCWRybV9jb25u ZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlZHAtPmVuY29kZXIpOwo+ICAKPiAgCXJl dHVybiBjb25uZWN0b3I7Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9o ZG1pL2hkbWlfY29ubmVjdG9yLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2hkbWkvaGRtaV9jb25u ZWN0b3IuYwo+IGluZGV4IDA3ZmVhY2M1YTQ0MS4uZTljOWEwYWY1MDhlIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9tc20vaGRtaS9oZG1pX2Nvbm5lY3Rvci5jCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL21zbS9oZG1pL2hkbWlfY29ubmVjdG9yLmMKPiBAQCAtNDc3LDcgKzQ3Nyw3IEBA IHN0cnVjdCBkcm1fY29ubmVjdG9yICptc21faGRtaV9jb25uZWN0b3JfaW5pdChzdHJ1Y3QgaGRt aSAqaGRtaSkKPiAgCQlyZXR1cm4gRVJSX1BUUihyZXQpOwo+ICAJfQo+ICAKPiAtCWRybV9tb2Rl X2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGhkbWktPmVuY29kZXIpOwo+ICsJ ZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGhkbWktPmVuY29kZXIpOwo+ ICAKPiAgCXJldHVybiBjb25uZWN0b3I7Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL25vdXZlYXUvZGlzcG52MDQvZGFjLmMgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9kaXNw bnYwNC9kYWMuYwo+IGluZGV4IDRmZWFiMGE1NDE5ZC4uZTdhZjk1ZDM3ZGRiIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjA0L2RhYy5jCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL25vdXZlYXUvZGlzcG52MDQvZGFjLmMKPiBAQCAtNTU2LDYgKzU1Niw2IEBAIG52 MDRfZGFjX2NyZWF0ZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBzdHJ1Y3QgZGNi X291dHB1dCAqZW50cnkpCj4gIAllbmNvZGVyLT5wb3NzaWJsZV9jcnRjcyA9IGVudHJ5LT5oZWFk czsKPiAgCWVuY29kZXItPnBvc3NpYmxlX2Nsb25lcyA9IDA7Cj4gIAo+IC0JZHJtX21vZGVfY29u bmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVj dG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAlyZXR1cm4gMDsKPiAg fQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9kaXNwbnYwNC9kZnAuYyBi L2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjA0L2RmcC5jCj4gaW5kZXggOTgwNWQyY2Rj MWExLi43M2Q0MWFiYmI1MTAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUv ZGlzcG52MDQvZGZwLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9kaXNwbnYwNC9k ZnAuYwo+IEBAIC03MTYsNiArNzE2LDYgQEAgbnYwNF9kZnBfY3JlYXRlKHN0cnVjdCBkcm1fY29u bmVjdG9yICpjb25uZWN0b3IsIHN0cnVjdCBkY2Jfb3V0cHV0ICplbnRyeSkKPiAgCSAgICBlbnRy eS0+bG9jYXRpb24gIT0gRENCX0xPQ19PTl9DSElQKQo+ICAJCW52MDRfdG1kc19zbGF2ZV9pbml0 KGVuY29kZXIpOwo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25u ZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0 b3IsIGVuY29kZXIpOwo+ICAJcmV0dXJuIDA7Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL25vdXZlYXUvZGlzcG52MDQvdHZudjA0LmMgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVh dS9kaXNwbnYwNC90dm52MDQuYwo+IGluZGV4IDAxNjY0MzU3ZDNlMS4uZGU0NDkwYjRlZDMwIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjA0L3R2bnYwNC5jCj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvZGlzcG52MDQvdHZudjA0LmMKPiBAQCAtMjQ0 LDcgKzI0NCw3IEBAIG52MDRfdHZfY3JlYXRlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0 b3IsIHN0cnVjdCBkY2Jfb3V0cHV0ICplbnRyeSkKPiAgCj4gIAkvKiBBdHRhY2ggaXQgdG8gdGhl IHNwZWNpZmllZCBjb25uZWN0b3IuICovCj4gIAlnZXRfc2xhdmVfZnVuY3MoZW5jb2RlciktPmNy ZWF0ZV9yZXNvdXJjZXMoZW5jb2RlciwgY29ubmVjdG9yKTsKPiAtCWRybV9tb2RlX2Nvbm5lY3Rv cl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9h dHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICAKPiAgCXJldHVybiAwOwo+ICAK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvZGlzcG52MDQvdHZudjE3LmMg Yi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9kaXNwbnYwNC90dm52MTcuYwo+IGluZGV4IDZkOTlm MTFmZWU0ZS4uNmE0Y2ExMzljZjVkIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2 ZWF1L2Rpc3BudjA0L3R2bnYxNy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvZGlz cG52MDQvdHZudjE3LmMKPiBAQCAtODIxLDYgKzgyMSw2IEBAIG52MTdfdHZfY3JlYXRlKHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIHN0cnVjdCBkY2Jfb3V0cHV0ICplbnRyeSkKPiAg CWVuY29kZXItPnBvc3NpYmxlX2Nsb25lcyA9IDA7Cj4gIAo+ICAJbnYxN190dl9jcmVhdGVfcmVz b3VyY2VzKGVuY29kZXIsIGNvbm5lY3Rvcik7Cj4gLQlkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNo X2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2Vu Y29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCXJldHVybiAwOwo+ICB9Cj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjUwL2Rpc3AuYyBiL2RyaXZlcnMvZ3B1 L2RybS9ub3V2ZWF1L2Rpc3BudjUwL2Rpc3AuYwo+IGluZGV4IDJmYWJiNjllNDUyYi4uNDc1NDU2 YzE5Yjc2IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjUwL2Rp c3AuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjUwL2Rpc3AuYwo+IEBA IC00MjQsNyArNDI0LDcgQEAgbnY1MF9kYWNfY3JlYXRlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IsIHN0cnVjdCBkY2Jfb3V0cHV0ICpkY2JlKQo+ICAJCQkgImRhYy0lMDR4LSUwNHgi LCBkY2JlLT5oYXNodCwgZGNiZS0+aGFzaG0pOwo+ICAJZHJtX2VuY29kZXJfaGVscGVyX2FkZChl bmNvZGVyLCAmbnY1MF9kYWNfaGVscCk7Cj4gIAo+IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0dGFj aF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9l bmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBAQCAt OTI3LDcgKzkyNyw3IEBAIG52NTBfbXN0Y19uZXcoc3RydWN0IG52NTBfbXN0bSAqbXN0bSwgc3Ry dWN0IGRybV9kcF9tc3RfcG9ydCAqcG9ydCwKPiAgCW5vdXZlYXVfY29ubl9hdHRhY2hfcHJvcGVy dGllcygmbXN0Yy0+Y29ubmVjdG9yKTsKPiAgCj4gIAlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0la RShtc3RtLT5tc3RvKSAmJiBtc3RtLT5tc3RvW2ldOyBpKyspCj4gLQkJZHJtX21vZGVfY29ubmVj dG9yX2F0dGFjaF9lbmNvZGVyKCZtc3RjLT5jb25uZWN0b3IsICZtc3RtLT5tc3RvW2ldLT5lbmNv ZGVyKTsKPiArCQlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZtc3RjLT5jb25uZWN0b3Is ICZtc3RtLT5tc3RvW2ldLT5lbmNvZGVyKTsKPiAgCj4gIAlkcm1fb2JqZWN0X2F0dGFjaF9wcm9w ZXJ0eSgmbXN0Yy0+Y29ubmVjdG9yLmJhc2UsIGRldi0+bW9kZV9jb25maWcucGF0aF9wcm9wZXJ0 eSwgMCk7Cj4gIAlkcm1fb2JqZWN0X2F0dGFjaF9wcm9wZXJ0eSgmbXN0Yy0+Y29ubmVjdG9yLmJh c2UsIGRldi0+bW9kZV9jb25maWcudGlsZV9wcm9wZXJ0eSwgMCk7Cj4gQEAgLTE0MTgsNyArMTQx OCw3IEBAIG52NTBfc29yX2NyZWF0ZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBz dHJ1Y3QgZGNiX291dHB1dCAqZGNiZSkKPiAgCQkJICJzb3ItJTA0eC0lMDR4IiwgZGNiZS0+aGFz aHQsIGRjYmUtPmhhc2htKTsKPiAgCWRybV9lbmNvZGVyX2hlbHBlcl9hZGQoZW5jb2RlciwgJm52 NTBfc29yX2hlbHApOwo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihj b25uZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25u ZWN0b3IsIGVuY29kZXIpOwo+ICAKPiAgCWlmIChkY2JlLT50eXBlID09IERDQl9PVVRQVVRfRFAp IHsKPiAgCQlzdHJ1Y3QgbnY1MF9kaXNwICpkaXNwID0gbnY1MF9kaXNwKGVuY29kZXItPmRldik7 Cj4gQEAgLTE1NzYsNyArMTU3Niw3IEBAIG52NTBfcGlvcl9jcmVhdGUoc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3Rvciwgc3RydWN0IGRjYl9vdXRwdXQgKmRjYmUpCj4gIAkJCSAicGlvci0l MDR4LSUwNHgiLCBkY2JlLT5oYXNodCwgZGNiZS0+aGFzaG0pOwo+ICAJZHJtX2VuY29kZXJfaGVs cGVyX2FkZChlbmNvZGVyLCAmbnY1MF9waW9yX2hlbHApOwo+ICAKPiAtCWRybV9tb2RlX2Nvbm5l Y3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rv cl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICAJcmV0dXJuIDA7Cj4gIH0K PiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfZHJ2LmMgYi9k cml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2Rydi5jCj4gaW5kZXggNTAwNWVjYzI4NGQyLi4x YjY2MDFlOWIxMDcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9k cnYuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfZHJ2LmMKPiBAQCAtMjc0 LDcgKzI3NCw3IEBAIHN0YXRpYyBpbnQgb21hcF9tb2Rlc2V0X2luaXQoc3RydWN0IGRybV9kZXZp Y2UgKmRldikKPiAgCQlpZiAoSVNfRVJSKGNydGMpKQo+ICAJCQlyZXR1cm4gUFRSX0VSUihjcnRj KTsKPiAgCj4gLQkJZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3Rvciwg ZW5jb2Rlcik7Cj4gKwkJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVu Y29kZXIpOwo+ICAJCWVuY29kZXItPnBvc3NpYmxlX2NydGNzID0gKDEgPDwgY3J0Y19pZHgpOwo+ ICAKPiAgCQlwcml2LT5jcnRjc1twcml2LT5udW1fY3J0Y3MrK10gPSBjcnRjOwo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0v cXhsL3F4bF9kaXNwbGF5LmMKPiBpbmRleCA3NjgyMDdmYmJhZTMuLjA1NzBjNjgyNmJmZiAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9kaXNwbGF5LmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vcXhsL3F4bF9kaXNwbGF5LmMKPiBAQCAtMTA4Niw3ICsxMDg2LDcgQEAgc3Rh dGljIGludCBxZGV2X291dHB1dF9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBudW1f b3V0cHV0KQo+ICAJLyogd2UgZ2V0IEhQRCB2aWEgY2xpZW50IG1vbml0b3JzIGNvbmZpZyAqLwo+ ICAJY29ubmVjdG9yLT5wb2xsZWQgPSBEUk1fQ09OTkVDVE9SX1BPTExfSFBEOwo+ICAJZW5jb2Rl ci0+cG9zc2libGVfY3J0Y3MgPSAxIDw8IG51bV9vdXRwdXQ7Cj4gLQlkcm1fbW9kZV9jb25uZWN0 b3JfYXR0YWNoX2VuY29kZXIoJnF4bF9vdXRwdXQtPmJhc2UsCj4gKwlkcm1fY29ubmVjdG9yX2F0 dGFjaF9lbmNvZGVyKCZxeGxfb3V0cHV0LT5iYXNlLAo+ICAJCQkJCSAgJnF4bF9vdXRwdXQtPmVu Yyk7Cj4gIAlkcm1fZW5jb2Rlcl9oZWxwZXJfYWRkKGVuY29kZXIsICZxeGxfZW5jX2hlbHBlcl9m dW5jcyk7Cj4gIAlkcm1fY29ubmVjdG9yX2hlbHBlcl9hZGQoY29ubmVjdG9yLCAmcXhsX2Nvbm5l Y3Rvcl9oZWxwZXJfZnVuY3MpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9u L3JhZGVvbl9lbmNvZGVycy5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZW5jb2Rl cnMuYwo+IGluZGV4IGM2ZWU4MDIxNmNmNC4uYzM0MWZiMmE1YjU2IDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2VuY29kZXJzLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vcmFkZW9uL3JhZGVvbl9lbmNvZGVycy5jCj4gQEAgLTIxMSw3ICsyMTEsNyBAQCByYWRl b25fbGlua19lbmNvZGVyX2Nvbm5lY3RvcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCWxp c3RfZm9yX2VhY2hfZW50cnkoZW5jb2RlciwgJmRldi0+bW9kZV9jb25maWcuZW5jb2Rlcl9saXN0 LCBoZWFkKSB7Cj4gIAkJCXJhZGVvbl9lbmNvZGVyID0gdG9fcmFkZW9uX2VuY29kZXIoZW5jb2Rl cik7Cj4gIAkJCWlmIChyYWRlb25fZW5jb2Rlci0+ZGV2aWNlcyAmIHJhZGVvbl9jb25uZWN0b3It PmRldmljZXMpIHsKPiAtCQkJCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25u ZWN0b3IsIGVuY29kZXIpOwo+ICsJCQkJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25u ZWN0b3IsIGVuY29kZXIpOwo+ICAJCQkJaWYgKHJhZGVvbl9lbmNvZGVyLT5kZXZpY2VzICYgKEFU T01fREVWSUNFX0xDRF9TVVBQT1JUKSkKPiAgCQkJCQlyYWRlb25fZW5jb2Rlcl9hZGRfYmFja2xp Z2h0KHJhZGVvbl9lbmNvZGVyLCBjb25uZWN0b3IpOwo+ICAJCQl9Cj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfbHZkcy5jIGIvZHJpdmVycy9ncHUvZHJtL3JjYXIt ZHUvcmNhcl9sdmRzLmMKPiBpbmRleCAxNTVhZDg0MGYzYzUuLjRmZWVhNzZhMzk2NyAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2x2ZHMuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfbHZkcy5jCj4gQEAgLTM1Myw3ICszNTMsNyBAQCBzdGF0 aWMgaW50IHJjYXJfbHZkc19hdHRhY2goc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKPiAgCj4g IAlkcm1fY29ubmVjdG9yX2hlbHBlcl9hZGQoY29ubmVjdG9yLCAmcmNhcl9sdmRzX2Nvbm5faGVs cGVyX2Z1bmNzKTsKPiAgCj4gLQlyZXQgPSBkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29k ZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiArCXJldCA9IGRybV9jb25uZWN0b3JfYXR0YWNoX2Vu Y29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCWlmIChyZXQgPCAwKQo+ICAJCXJldHVybiBy ZXQ7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvY2RuLWRwLWNv cmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9jZG4tZHAtY29yZS5jCj4gaW5kZXggYTQw Y2IyYmU1MGUxLi44YWQwZDc3M2RjMzMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Jv Y2tjaGlwL2Nkbi1kcC1jb3JlLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvY2Ru LWRwLWNvcmUuYwo+IEBAIC0xMDYyLDcgKzEwNjIsNyBAQCBzdGF0aWMgaW50IGNkbl9kcF9iaW5k KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZSAqbWFzdGVyLCB2b2lkICpkYXRhKQo+ ICAKPiAgCWRybV9jb25uZWN0b3JfaGVscGVyX2FkZChjb25uZWN0b3IsICZjZG5fZHBfY29ubmVj dG9yX2hlbHBlcl9mdW5jcyk7Cj4gIAo+IC0JcmV0ID0gZHJtX21vZGVfY29ubmVjdG9yX2F0dGFj aF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gKwlyZXQgPSBkcm1fY29ubmVjdG9yX2F0 dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAlpZiAocmV0KSB7Cj4gIAkJRFJN X0VSUk9SKCJmYWlsZWQgdG8gYXR0YWNoIGNvbm5lY3RvciBhbmQgZW5jb2RlclxuIik7Cj4gIAkJ Z290byBlcnJfZnJlZV9jb25uZWN0b3I7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9y b2NrY2hpcC9kdy1taXBpLWRzaS5jIGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL2R3LW1pcGkt ZHNpLmMKPiBpbmRleCBkNTNkNWEwOTU0N2YuLjdiYmJmNTI3NThiNSAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvZHctbWlwaS1kc2kuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9yb2NrY2hpcC9kdy1taXBpLWRzaS5jCj4gQEAgLTExMjksNyArMTEyOSw3IEBAIHN0YXRp YyBpbnQgZHdfbWlwaV9kc2lfcmVnaXN0ZXIoc3RydWN0IGRybV9kZXZpY2UgKmRybSwKPiAgCQkJ ICAgJmR3X21pcGlfZHNpX2F0b21pY19jb25uZWN0b3JfZnVuY3MsCj4gIAkJCSAgIERSTV9NT0RF X0NPTk5FQ1RPUl9EU0kpOwo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rl cihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihj b25uZWN0b3IsIGVuY29kZXIpOwo+ICAKPiAgCXJldHVybiAwOwo+ICB9Cj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9pbm5vX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9y b2NrY2hpcC9pbm5vX2hkbWkuYwo+IGluZGV4IDUxMGZjYjMzZTMxZC4uMWMwMmIzZTYxMjk5IDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9pbm5vX2hkbWkuYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9pbm5vX2hkbWkuYwo+IEBAIC02MzQsNyArNjM0LDcg QEAgc3RhdGljIGludCBpbm5vX2hkbWlfcmVnaXN0ZXIoc3RydWN0IGRybV9kZXZpY2UgKmRybSwg c3RydWN0IGlubm9faGRtaSAqaGRtaSkKPiAgCWRybV9jb25uZWN0b3JfaW5pdChkcm0sICZoZG1p LT5jb25uZWN0b3IsICZpbm5vX2hkbWlfY29ubmVjdG9yX2Z1bmNzLAo+ICAJCQkgICBEUk1fTU9E RV9DT05ORUNUT1JfSERNSUEpOwo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5j b2RlcigmaGRtaS0+Y29ubmVjdG9yLCBlbmNvZGVyKTsKPiArCWRybV9jb25uZWN0b3JfYXR0YWNo X2VuY29kZXIoJmhkbWktPmNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAo+ICAJcmV0dXJuIDA7Cj4g IH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2x2ZHMu YyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9sdmRzLmMKPiBpbmRleCBiM2Y2 ZjUyNGI0MDIuLjQ1NmJkOWYxM2JhZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vcm9j a2NoaXAvcm9ja2NoaXBfbHZkcy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3Jv Y2tjaGlwX2x2ZHMuYwo+IEBAIC00MzQsNyArNDM0LDcgQEAgc3RhdGljIGludCByb2NrY2hpcF9s dmRzX2JpbmQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgZGV2aWNlICptYXN0ZXIsCj4gIAkJ ZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfYWRkKGNvbm5lY3RvciwKPiAgCQkJCQkgJnJvY2tjaGlwX2x2 ZHNfY29ubmVjdG9yX2hlbHBlcl9mdW5jcyk7Cj4gIAo+IC0JCXJldCA9IGRybV9tb2RlX2Nvbm5l Y3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJCXJldCA9IGRybV9j b25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCQlpZiAocmV0 IDwgMCkgewo+ICAJCQlEUk1fREVWX0VSUk9SKGRybV9kZXYtPmRldiwKPiAgCQkJCSAgICAgICJm YWlsZWQgdG8gYXR0YWNoIGVuY29kZXI6ICVkXG4iLCByZXQpOwo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vc2htb2JpbGUvc2htb2JfZHJtX2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9z aG1vYmlsZS9zaG1vYl9kcm1fY3J0Yy5jCj4gaW5kZXggNDBkZjg4ODdmYzE3Li5mYzY2MTY3YjA2 NDEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3NobW9iaWxlL3NobW9iX2RybV9jcnRj LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc2htb2JpbGUvc2htb2JfZHJtX2NydGMuYwo+IEBA IC02NzUsNyArNjc1LDcgQEAgaW50IHNobW9iX2RybV9jb25uZWN0b3JfY3JlYXRlKHN0cnVjdCBz aG1vYl9kcm1fZGV2aWNlICpzZGV2LAo+ICAJaWYgKHJldCA8IDApCj4gIAkJZ290byBlcnJfY2xl YW51cDsKPiAgCj4gLQlyZXQgPSBkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29u bmVjdG9yLCBlbmNvZGVyKTsKPiArCXJldCA9IGRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIo Y29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCWlmIChyZXQgPCAwKQo+ICAJCWdvdG8gZXJyX2JhY2ts aWdodDsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2R2by5jIGIv ZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfZHZvLmMKPiBpbmRleCBhNTk3OWNkMjVjYzcuLjIxOTI5 ZGM2MTZhMyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9kdm8uYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2R2by5jCj4gQEAgLTQ4NCw3ICs0ODQsNyBAQCBz dGF0aWMgaW50IHN0aV9kdm9fYmluZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZpY2Ug Km1hc3Rlciwgdm9pZCAqZGF0YSkKPiAgCWRybV9jb25uZWN0b3JfaGVscGVyX2FkZChkcm1fY29u bmVjdG9yLAo+ICAJCQkJICZzdGlfZHZvX2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3MpOwo+ICAKPiAt CWVyciA9IGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihkcm1fY29ubmVjdG9yLCBl bmNvZGVyKTsKPiArCWVyciA9IGRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoZHJtX2Nvbm5l Y3RvciwgZW5jb2Rlcik7Cj4gIAlpZiAoZXJyKSB7Cj4gIAkJRFJNX0VSUk9SKCJGYWlsZWQgdG8g YXR0YWNoIGEgY29ubmVjdG9yIHRvIGEgZW5jb2RlclxuIik7Cj4gIAkJZ290byBlcnJfc3lzZnM7 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2hkYS5jIGIvZHJpdmVycy9n cHUvZHJtL3N0aS9zdGlfaGRhLmMKPiBpbmRleCA2N2JiZGI0OWZmZmMuLjQ5NDM4MzM3ZjcwZCAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZGEuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9zdGkvc3RpX2hkYS5jCj4gQEAgLTcwOSw3ICs3MDksNyBAQCBzdGF0aWMgaW50 IHN0aV9oZGFfYmluZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZpY2UgKm1hc3Rlciwg dm9pZCAqZGF0YSkKPiAgCWRybV9jb25uZWN0b3JfaGVscGVyX2FkZChkcm1fY29ubmVjdG9yLAo+ ICAJCQkmc3RpX2hkYV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzKTsKPiAgCj4gLQllcnIgPSBkcm1f bW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoZHJtX2Nvbm5lY3RvciwgZW5jb2Rlcik7Cj4g KwllcnIgPSBkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGRybV9jb25uZWN0b3IsIGVuY29k ZXIpOwo+ICAJaWYgKGVycikgewo+ICAJCURSTV9FUlJPUigiRmFpbGVkIHRvIGF0dGFjaCBhIGNv bm5lY3RvciB0byBhIGVuY29kZXJcbiIpOwo+ICAJCWdvdG8gZXJyX3N5c2ZzOwo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vc3Rp L3N0aV9oZG1pLmMKPiBpbmRleCAwYzMwMDgzNTZhYjguLjM0Y2RjNDY0NDQzNSAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZG1pLmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vc3RpL3N0aV9oZG1pLmMKPiBAQCAtMTI5MCw3ICsxMjkwLDcgQEAgc3RhdGljIGludCBzdGlf aGRtaV9iaW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZSAqbWFzdGVyLCB2b2lk ICpkYXRhKQo+ICAKPiAgCWhkbWktPmRybV9jb25uZWN0b3IgPSBkcm1fY29ubmVjdG9yOwo+ICAK PiAtCWVyciA9IGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihkcm1fY29ubmVjdG9y LCBlbmNvZGVyKTsKPiArCWVyciA9IGRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoZHJtX2Nv bm5lY3RvciwgZW5jb2Rlcik7Cj4gIAlpZiAoZXJyKSB7Cj4gIAkJRFJNX0VSUk9SKCJGYWlsZWQg dG8gYXR0YWNoIGEgY29ubmVjdG9yIHRvIGEgZW5jb2RlclxuIik7Cj4gIAkJZ290byBlcnJfc3lz ZnM7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV9oZG1pX2VuYy5j IGIvZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjRpX2hkbWlfZW5jLmMKPiBpbmRleCA5YjRiMWQw MTU0MjMuLjA2MWQyZTBkOTAxMSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkv c3VuNGlfaGRtaV9lbmMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV9oZG1p X2VuYy5jCj4gQEAgLTYyMyw3ICs2MjMsNyBAQCBzdGF0aWMgaW50IHN1bjRpX2hkbWlfYmluZChz dHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZpY2UgKm1hc3RlciwKPiAgCXJldCA9IGNlY19y ZWdpc3Rlcl9hZGFwdGVyKGhkbWktPmNlY19hZGFwLCBkZXYpOwo+ICAJaWYgKHJldCA8IDApCj4g IAkJZ290byBlcnJfY2xlYW51cF9jb25uZWN0b3I7Cj4gLQlkcm1fbW9kZV9jb25uZWN0b3JfYXR0 YWNoX2VuY29kZXIoJmhkbWktPmNvbm5lY3RvciwgJmhkbWktPmVuY29kZXIpOwo+ICsJZHJtX2Nv bm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmaGRtaS0+Y29ubmVjdG9yLCAmaGRtaS0+ZW5jb2Rlcik7 Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc3Vu NGkvc3VuNGlfbHZkcy5jIGIvZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjRpX2x2ZHMuYwo+IGlu ZGV4IGE2OWZlMmUxZjlkMS4uYWY3ZGNiNmRhMzUxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9zdW40aS9zdW40aV9sdmRzLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3Vu NGlfbHZkcy5jCj4gQEAgLTE0OSw3ICsxNDksNyBAQCBpbnQgc3VuNGlfbHZkc19pbml0KHN0cnVj dCBkcm1fZGV2aWNlICpkcm0sIHN0cnVjdCBzdW40aV90Y29uICp0Y29uKQo+ICAJCQlnb3RvIGVy cl9jbGVhbnVwX2Nvbm5lY3RvcjsKPiAgCQl9Cj4gIAo+IC0JCWRybV9tb2RlX2Nvbm5lY3Rvcl9h dHRhY2hfZW5jb2RlcigmbHZkcy0+Y29ubmVjdG9yLAo+ICsJCWRybV9jb25uZWN0b3JfYXR0YWNo X2VuY29kZXIoJmx2ZHMtPmNvbm5lY3RvciwKPiAgCQkJCQkJICAmbHZkcy0+ZW5jb2Rlcik7Cj4g IAo+ICAJCXJldCA9IGRybV9wYW5lbF9hdHRhY2godGNvbi0+cGFuZWwsICZsdmRzLT5jb25uZWN0 b3IpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfcmdiLmMgYi9k cml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfcmdiLmMKPiBpbmRleCA5NmQyMWIwN2Y4ZmMuLmJm MDY4ZGE2YjEyZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfcmdi LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfcmdiLmMKPiBAQCAtMjE1LDcg KzIxNSw3IEBAIGludCBzdW40aV9yZ2JfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLCBzdHJ1 Y3Qgc3VuNGlfdGNvbiAqdGNvbikKPiAgCQkJZ290byBlcnJfY2xlYW51cF9jb25uZWN0b3I7Cj4g IAkJfQo+ICAKPiAtCQlkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJnJnYi0+Y29u bmVjdG9yLAo+ICsJCWRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJnJnYi0+Y29ubmVjdG9y LAo+ICAJCQkJCQkgICZyZ2ItPmVuY29kZXIpOwo+ICAKPiAgCQlyZXQgPSBkcm1fcGFuZWxfYXR0 YWNoKHRjb24tPnBhbmVsLCAmcmdiLT5jb25uZWN0b3IpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vc3VuNGkvc3VuNGlfdHYuYyBiL2RyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV90 di5jCj4gaW5kZXggYjA3MGQ1MjJlZDhkLi4xYTgzOGQyMDgyMTEgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL3N1bjRpL3N1bjRpX3R2LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc3Vu NGkvc3VuNGlfdHYuYwo+IEBAIC02MjMsNyArNjIzLDcgQEAgc3RhdGljIGludCBzdW40aV90dl9i aW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZSAqbWFzdGVyLAo+ICAJfQo+ICAJ dHYtPmNvbm5lY3Rvci5pbnRlcmxhY2VfYWxsb3dlZCA9IHRydWU7Cj4gIAo+IC0JZHJtX21vZGVf Y29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCZ0di0+Y29ubmVjdG9yLCAmdHYtPmVuY29kZXIpOwo+ ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmdHYtPmNvbm5lY3RvciwgJnR2LT5lbmNv ZGVyKTsKPiAgCj4gIAlyZXR1cm4gMDsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9zdW40aS9zdW42aV9taXBpX2RzaS5jIGIvZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjZpX21p cGlfZHNpLmMKPiBpbmRleCBkYTk4MTRmOTRkMDAuLmNlNWRjYTc1NWY3ZiAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNmlfbWlwaV9kc2kuYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9zdW40aS9zdW42aV9taXBpX2RzaS5jCj4gQEAgLTk0MSw3ICs5NDEsNyBAQCBzdGF0 aWMgaW50IHN1bjZpX2RzaV9iaW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZSAq bWFzdGVyLAo+ICAJCWdvdG8gZXJyX2NsZWFudXBfY29ubmVjdG9yOwo+ICAJfQo+ICAKPiAtCWRy bV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmZHNpLT5jb25uZWN0b3IsICZkc2ktPmVu Y29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmZHNpLT5jb25uZWN0b3Is ICZkc2ktPmVuY29kZXIpOwo+ICAJZHJtX3BhbmVsX2F0dGFjaChkc2ktPnBhbmVsLCAmZHNpLT5j b25uZWN0b3IpOwo+ICAKPiAgCXJldHVybiAwOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vdGVncmEvZHNpLmMgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZHNpLmMKPiBpbmRleCA4N2M1 ZDg5YmM5YmEuLmMxYzNmMThhODk5MCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGVn cmEvZHNpLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZHNpLmMKPiBAQCAtMTA1Miw3 ICsxMDUyLDcgQEAgc3RhdGljIGludCB0ZWdyYV9kc2lfaW5pdChzdHJ1Y3QgaG9zdDF4X2NsaWVu dCAqY2xpZW50KQo+ICAJCWRybV9lbmNvZGVyX2hlbHBlcl9hZGQoJmRzaS0+b3V0cHV0LmVuY29k ZXIsCj4gIAkJCQkgICAgICAgJnRlZ3JhX2RzaV9lbmNvZGVyX2hlbHBlcl9mdW5jcyk7Cj4gIAo+ IC0JCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmZHNpLT5vdXRwdXQuY29ubmVj dG9yLAo+ICsJCWRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJmRzaS0+b3V0cHV0LmNvbm5l Y3RvciwKPiAgCQkJCQkJICAmZHNpLT5vdXRwdXQuZW5jb2Rlcik7Cj4gIAkJZHJtX2Nvbm5lY3Rv cl9yZWdpc3RlcigmZHNpLT5vdXRwdXQuY29ubmVjdG9yKTsKPiAgCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS90ZWdyYS9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvaGRtaS5j Cj4gaW5kZXggNzg0NzM5YTlmNDk3Li4wMDgyNDY4ZjcwM2MgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL3RlZ3JhL2hkbWkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9oZG1p LmMKPiBAQCAtMTQ4OCw3ICsxNDg4LDcgQEAgc3RhdGljIGludCB0ZWdyYV9oZG1pX2luaXQoc3Ry dWN0IGhvc3QxeF9jbGllbnQgKmNsaWVudCkKPiAgCWRybV9lbmNvZGVyX2hlbHBlcl9hZGQoJmhk bWktPm91dHB1dC5lbmNvZGVyLAo+ICAJCQkgICAgICAgJnRlZ3JhX2hkbWlfZW5jb2Rlcl9oZWxw ZXJfZnVuY3MpOwo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmaGRt aS0+b3V0cHV0LmNvbm5lY3RvciwKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJmhk bWktPm91dHB1dC5jb25uZWN0b3IsCj4gIAkJCQkJICAmaGRtaS0+b3V0cHV0LmVuY29kZXIpOwo+ ICAJZHJtX2Nvbm5lY3Rvcl9yZWdpc3RlcigmaGRtaS0+b3V0cHV0LmNvbm5lY3Rvcik7Cj4gIAo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvcmdiLmMgYi9kcml2ZXJzL2dwdS9k cm0vdGVncmEvcmdiLmMKPiBpbmRleCA3OGVjNTE5Mzc0MWQuLjI4YTc4ZDMxMjBiYyAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvcmdiLmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vdGVncmEvcmdiLmMKPiBAQCAtMjg5LDcgKzI4OSw3IEBAIGludCB0ZWdyYV9kY19yZ2JfaW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLCBzdHJ1Y3QgdGVncmFfZGMgKmRjKQo+ICAJZHJtX2Vu Y29kZXJfaGVscGVyX2FkZCgmb3V0cHV0LT5lbmNvZGVyLAo+ICAJCQkgICAgICAgJnRlZ3JhX3Jn Yl9lbmNvZGVyX2hlbHBlcl9mdW5jcyk7Cj4gIAo+IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0dGFj aF9lbmNvZGVyKCZvdXRwdXQtPmNvbm5lY3RvciwKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2Vu Y29kZXIoJm91dHB1dC0+Y29ubmVjdG9yLAo+ICAJCQkJCSAgJm91dHB1dC0+ZW5jb2Rlcik7Cj4g IAlkcm1fY29ubmVjdG9yX3JlZ2lzdGVyKCZvdXRwdXQtPmNvbm5lY3Rvcik7Cj4gIAo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvc29yLmMgYi9kcml2ZXJzL2dwdS9kcm0vdGVn cmEvc29yLmMKPiBpbmRleCA3ZDJhOTU1ZmM1MTUuLmQ3ZmU5ZjE1ZGVmMSAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvc29yLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdGVn cmEvc29yLmMKPiBAQCAtMjYyMiw3ICsyNjIyLDcgQEAgc3RhdGljIGludCB0ZWdyYV9zb3JfaW5p dChzdHJ1Y3QgaG9zdDF4X2NsaWVudCAqY2xpZW50KQo+ICAJCQkgZW5jb2RlciwgTlVMTCk7Cj4g IAlkcm1fZW5jb2Rlcl9oZWxwZXJfYWRkKCZzb3ItPm91dHB1dC5lbmNvZGVyLCBoZWxwZXJzKTsK PiAgCj4gLQlkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJnNvci0+b3V0cHV0LmNv bm5lY3RvciwKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJnNvci0+b3V0cHV0LmNv bm5lY3RvciwKPiAgCQkJCQkgICZzb3ItPm91dHB1dC5lbmNvZGVyKTsKPiAgCWRybV9jb25uZWN0 b3JfcmVnaXN0ZXIoJnNvci0+b3V0cHV0LmNvbm5lY3Rvcik7Cj4gIAo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19wYW5lbC5jIGIvZHJpdmVycy9ncHUvZHJtL3Rp bGNkYy90aWxjZGNfcGFuZWwuYwo+IGluZGV4IGQ2MTZkNjRhNjcyNS4uYTFhY2FiMzlkODdmIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX3BhbmVsLmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19wYW5lbC5jCj4gQEAgLTIyMyw3ICsyMjMs NyBAQCBzdGF0aWMgc3RydWN0IGRybV9jb25uZWN0b3IgKnBhbmVsX2Nvbm5lY3Rvcl9jcmVhdGUo c3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCWNvbm5lY3Rvci0+aW50ZXJsYWNlX2FsbG93ZWQg PSAwOwo+ICAJY29ubmVjdG9yLT5kb3VibGVzY2FuX2FsbG93ZWQgPSAwOwo+ICAKPiAtCXJldCA9 IGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ ICsJcmV0ID0gZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIp Owo+ICAJaWYgKHJldCkKPiAgCQlnb3RvIGZhaWw7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vdGlsY2RjL3RpbGNkY190ZnA0MTAuYyBiL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMv dGlsY2RjX3RmcDQxMC5jCj4gaW5kZXggNDZkYWNjYTNjY2U4Li5kYWViZjFhYTZiMGEgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3RpbGNkYy90aWxjZGNfdGZwNDEwLmMKPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY190ZnA0MTAuYwo+IEBAIC0yNDAsNyArMjQwLDcg QEAgc3RhdGljIHN0cnVjdCBkcm1fY29ubmVjdG9yICp0ZnA0MTBfY29ubmVjdG9yX2NyZWF0ZShz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJY29ubmVjdG9yLT5pbnRlcmxhY2VfYWxsb3dlZCA9 IDA7Cj4gIAljb25uZWN0b3ItPmRvdWJsZXNjYW5fYWxsb3dlZCA9IDA7Cj4gIAo+IC0JcmV0ID0g ZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4g KwlyZXQgPSBkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7 Cj4gIAlpZiAocmV0KQo+ICAJCWdvdG8gZmFpbDsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS91ZGwvdWRsX2Nvbm5lY3Rvci5jIGIvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfY29u bmVjdG9yLmMKPiBpbmRleCA4ZmFjMTJlMWExYTQuLjY4ZTg4YmVkNzdjYSAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9jb25uZWN0b3IuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS91ZGwvdWRsX2Nvbm5lY3Rvci5jCj4gQEAgLTIwMCw3ICsyMDAsNyBAQCBpbnQgdWRsX2Nv bm5lY3Rvcl9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZW5jb2RlciAq ZW5jb2RlcikKPiAgCWRybV9jb25uZWN0b3JfaGVscGVyX2FkZChjb25uZWN0b3IsICZ1ZGxfY29u bmVjdG9yX2hlbHBlcl9mdW5jcyk7Cj4gIAo+ICAJZHJtX2Nvbm5lY3Rvcl9yZWdpc3Rlcihjb25u ZWN0b3IpOwo+IC0JZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3Rvciwg ZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5j b2Rlcik7Cj4gIAljb25uZWN0b3ItPnBvbGxlZCA9IERSTV9DT05ORUNUT1JfUE9MTF9IUEQgfAo+ ICAJCURSTV9DT05ORUNUT1JfUE9MTF9DT05ORUNUIHwgRFJNX0NPTk5FQ1RPUl9QT0xMX0RJU0NP Tk5FQ1Q7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9oZG1pLmMg Yi9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9oZG1pLmMKPiBpbmRleCA5MWYyODRlMWI5MDguLmZk NTUyMmZkMTc5ZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9oZG1pLmMK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9oZG1pLmMKPiBAQCAtMzI5LDcgKzMyOSw3 IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqdmM0X2hkbWlfY29ubmVjdG9yX2luaXQo c3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCWNvbm5lY3Rvci0+aW50ZXJsYWNlX2FsbG93ZWQg PSAxOwo+ICAJY29ubmVjdG9yLT5kb3VibGVzY2FuX2FsbG93ZWQgPSAwOwo+ICAKPiAtCWRybV9t b2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJt X2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICAKPiAgCXJl dHVybiBjb25uZWN0b3I7Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3ZjNC92 YzRfdmVjLmMgYi9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF92ZWMuYwo+IGluZGV4IDNhOWEzMDIy NDdhMi4uOGU3ZmFjYjY1MTRlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0 X3ZlYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfdmVjLmMKPiBAQCAtNDA0LDcg KzQwNCw3IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqdmM0X3ZlY19jb25uZWN0b3Jf aW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJCQkJICAgVkM0X1ZFQ19UVl9NT0RFX05U U0MpOwo+ICAJdmVjLT50dl9tb2RlID0gJnZjNF92ZWNfdHZfbW9kZXNbVkM0X1ZFQ19UVl9NT0RF X05UU0NdOwo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0 b3IsIHZlYy0+ZW5jb2Rlcik7Cj4gKwlkcm1fY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5l Y3RvciwgdmVjLT5lbmNvZGVyKTsKPiAgCj4gIAlyZXR1cm4gY29ubmVjdG9yOwo+ICB9Cj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV9kaXNwbGF5LmMgYi9kcml2 ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRncHVfZGlzcGxheS5jCj4gaW5kZXggZmY5OTMzZTc5NDE2 Li4yNTUwM2I5MzM1OTkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0 Z3B1X2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV9kaXNw bGF5LmMKPiBAQCAtMjkyLDcgKzI5Miw3IEBAIHN0YXRpYyBpbnQgdmdkZXZfb3V0cHV0X2luaXQo c3RydWN0IHZpcnRpb19ncHVfZGV2aWNlICp2Z2RldiwgaW50IGluZGV4KQo+ICAJZHJtX2VuY29k ZXJfaGVscGVyX2FkZChlbmNvZGVyLCAmdmlydGlvX2dwdV9lbmNfaGVscGVyX2Z1bmNzKTsKPiAg CWVuY29kZXItPnBvc3NpYmxlX2NydGNzID0gMSA8PCBpbmRleDsKPiAgCj4gLQlkcm1fbW9kZV9j b25uZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiArCWRybV9jb25u ZWN0b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCWRybV9jb25uZWN0 b3JfcmVnaXN0ZXIoY29ubmVjdG9yKTsKPiAgCXJldHVybiAwOwo+ICB9Cj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS92a21zL3ZrbXNfb3V0cHV0LmMgYi9kcml2ZXJzL2dwdS9kcm0vdmtt cy92a21zX291dHB1dC5jCj4gaW5kZXggNDgxNDNlYWMzYzEyLi5lOGUwZTY2MTVmZjkgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3ZrbXMvdmttc19vdXRwdXQuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS92a21zL3ZrbXNfb3V0cHV0LmMKPiBAQCAtNjMsNyArNjMsNyBAQCBpbnQgdmtt c19vdXRwdXRfaW5pdChzdHJ1Y3Qgdmttc19kZXZpY2UgKnZrbXNkZXYpCj4gIAl9Cj4gIAllbmNv ZGVyLT5wb3NzaWJsZV9jcnRjcyA9IDE7Cj4gIAo+IC0JcmV0ID0gZHJtX21vZGVfY29ubmVjdG9y X2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gKwlyZXQgPSBkcm1fY29ubmVj dG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAlpZiAocmV0KSB7Cj4g IAkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gYXR0YWNoIGNvbm5lY3RvciB0byBlbmNvZGVyXG4iKTsK PiAgCQlnb3RvIGVycl9hdHRhY2g7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdn Zngvdm13Z2Z4X2xkdS5jIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfbGR1LmMKPiBp bmRleCBkYzBjZmRhMjZiMWIuLmEyMzRmZTBlMTA2MSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vdm13Z2Z4L3Ztd2dmeF9sZHUuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngv dm13Z2Z4X2xkdS5jCj4gQEAgLTQzOCw3ICs0MzgsNyBAQCBzdGF0aWMgaW50IHZtd19sZHVfaW5p dChzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2LCB1bnNpZ25lZCB1bml0KQo+ICAJCWdvdG8g ZXJyX2ZyZWVfY29ubmVjdG9yOwo+ICAJfQo+ICAKPiAtCSh2b2lkKSBkcm1fbW9kZV9jb25uZWN0 b3JfYXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiArCSh2b2lkKSBkcm1fY29u bmVjdG9yX2F0dGFjaF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAllbmNvZGVyLT5w b3NzaWJsZV9jcnRjcyA9ICgxIDw8IHVuaXQpOwo+ICAJZW5jb2Rlci0+cG9zc2libGVfY2xvbmVz ID0gMDsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3Nj cm4uYyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3Njcm4uYwo+IGluZGV4IDczY2Yz YzZlMTU5MS4uZGQ0MTdlYjc0NTI0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdn Zngvdm13Z2Z4X3Njcm4uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3Nj cm4uYwo+IEBAIC02OTUsNyArNjk1LDcgQEAgc3RhdGljIGludCB2bXdfc291X2luaXQoc3RydWN0 IHZtd19wcml2YXRlICpkZXZfcHJpdiwgdW5zaWduZWQgdW5pdCkKPiAgCQlnb3RvIGVycl9mcmVl X2Nvbm5lY3RvcjsKPiAgCX0KPiAgCj4gLQkodm9pZCkgZHJtX21vZGVfY29ubmVjdG9yX2F0dGFj aF9lbmNvZGVyKGNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gKwkodm9pZCkgZHJtX2Nvbm5lY3Rvcl9h dHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICAJZW5jb2Rlci0+cG9zc2libGVf Y3J0Y3MgPSAoMSA8PCB1bml0KTsKPiAgCWVuY29kZXItPnBvc3NpYmxlX2Nsb25lcyA9IDA7Cj4g IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9zdGR1LmMgYi9k cml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9zdGR1LmMKPiBpbmRleCBhNDc0ZDg3YjFhZjMu LjRjY2E3OGNhYjAzZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dm eF9zdGR1LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9zdGR1LmMKPiBA QCAtMTQ4Niw3ICsxNDg2LDcgQEAgc3RhdGljIGludCB2bXdfc3RkdV9pbml0KHN0cnVjdCB2bXdf cHJpdmF0ZSAqZGV2X3ByaXYsIHVuc2lnbmVkIHVuaXQpCj4gIAkJZ290byBlcnJfZnJlZV9jb25u ZWN0b3I7Cj4gIAl9Cj4gIAo+IC0JKHZvaWQpIGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfZW5j b2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJKHZvaWQpIGRybV9jb25uZWN0b3JfYXR0YWNo X2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCWVuY29kZXItPnBvc3NpYmxlX2NydGNz ID0gKDEgPDwgdW5pdCk7Cj4gIAllbmNvZGVyLT5wb3NzaWJsZV9jbG9uZXMgPSAwOwo+ICAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9oZG1pLmMgYi9kcml2ZXJzL2dwdS9k cm0venRlL3p4X2hkbWkuYwo+IGluZGV4IGQwNzNjNjczNzUwMC4uNzg2NTUyNjlkODQzIDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS96dGUvenhfaGRtaS5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL3p0ZS96eF9oZG1pLmMKPiBAQCAtMzI2LDcgKzMyNiw3IEBAIHN0YXRpYyBpbnQgenhf aGRtaV9yZWdpc3RlcihzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLCBzdHJ1Y3QgenhfaGRtaSAqaGRt aSkKPiAgCWRybV9jb25uZWN0b3JfaGVscGVyX2FkZCgmaGRtaS0+Y29ubmVjdG9yLAo+ICAJCQkJ ICZ6eF9oZG1pX2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3MpOwo+ICAKPiAtCWRybV9tb2RlX2Nvbm5l Y3Rvcl9hdHRhY2hfZW5jb2RlcigmaGRtaS0+Y29ubmVjdG9yLCBlbmNvZGVyKTsKPiArCWRybV9j b25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJmhkbWktPmNvbm5lY3RvciwgZW5jb2Rlcik7Cj4gIAo+ ICAJcmV0dXJuIDA7Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF90 dmVuYy5jIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF90dmVuYy5jCj4gaW5kZXggMGRlMWE3MWNh NGUwLi5iNzNhZmIyMTJmYjIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF90 dmVuYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF90dmVuYy5jCj4gQEAgLTI5Nyw3 ICsyOTcsNyBAQCBzdGF0aWMgaW50IHp4X3R2ZW5jX3JlZ2lzdGVyKHN0cnVjdCBkcm1fZGV2aWNl ICpkcm0sIHN0cnVjdCB6eF90dmVuYyAqdHZlbmMpCj4gIAkJCSAgIERSTV9NT0RFX0NPTk5FQ1RP Ul9Db21wb3NpdGUpOwo+ICAJZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfYWRkKGNvbm5lY3RvciwgJnp4 X3R2ZW5jX2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3MpOwo+ICAKPiAtCWRybV9tb2RlX2Nvbm5lY3Rv cl9hdHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9h dHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICAKPiAgCXJldHVybiAwOwo+ICB9 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS96dGUvenhfdmdhLmMgYi9kcml2ZXJzL2dw dS9kcm0venRlL3p4X3ZnYS5jCj4gaW5kZXggM2U3OGVlMjFiOGQwLi4yM2QxZmY0MzU1YTAgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF92Z2EuYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS96dGUvenhfdmdhLmMKPiBAQCAtMTc1LDcgKzE3NSw3IEBAIHN0YXRpYyBpbnQgenhf dmdhX3JlZ2lzdGVyKHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sIHN0cnVjdCB6eF92Z2EgKnZnYSkK PiAgCj4gIAlkcm1fY29ubmVjdG9yX2hlbHBlcl9hZGQoY29ubmVjdG9yLCAmenhfdmdhX2Nvbm5l Y3Rvcl9oZWxwZXJfZnVuY3MpOwo+ICAKPiAtCXJldCA9IGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRh Y2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICsJcmV0ID0gZHJtX2Nvbm5lY3Rvcl9h dHRhY2hfZW5jb2Rlcihjb25uZWN0b3IsIGVuY29kZXIpOwo+ICAJaWYgKHJldCkgewo+ICAJCURS TV9ERVZfRVJST1IoZGV2LCAiZmFpbGVkIHRvIGF0dGFjaCBlbmNvZGVyOiAlZFxuIiwgcmV0KTsK PiAgCQlnb3RvIGNsZWFuX2Nvbm5lY3RvcjsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5n L3Zib3h2aWRlby92Ym94X21vZGUuYyBiL2RyaXZlcnMvc3RhZ2luZy92Ym94dmlkZW8vdmJveF9t b2RlLmMKPiBpbmRleCBhOTQzZDJmNjgzZWQuLmRhNGE5M2RmOGQ3NSAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL3N0YWdpbmcvdmJveHZpZGVvL3Zib3hfbW9kZS5jCj4gKysrIGIvZHJpdmVycy9zdGFn aW5nL3Zib3h2aWRlby92Ym94X21vZGUuYwo+IEBAIC02NTUsNyArNjU1LDcgQEAgc3RhdGljIGlu dCB2Ym94X2Nvbm5lY3Rvcl9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAkJCQkgICBk ZXYtPm1vZGVfY29uZmlnLnN1Z2dlc3RlZF95X3Byb3BlcnR5LCAwKTsKPiAgCWRybV9jb25uZWN0 b3JfcmVnaXN0ZXIoY29ubmVjdG9yKTsKPiAgCj4gLQlkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNo X2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiArCWRybV9jb25uZWN0b3JfYXR0YWNoX2Vu Y29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPiAgCj4gIAlyZXR1cm4gMDsKPiAgfQo+IGRpZmYg LS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmggYi9pbmNsdWRlL2RybS9kcm1fY29u bmVjdG9yLmgKPiBpbmRleCA5ODQxZDJiNmQzZWIuLmRmZDdhMzU5NWE2YyAxMDA2NDQKPiAtLS0g YS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1fY29u bmVjdG9yLmgKPiBAQCAtMTA4MSw3ICsxMDgxLDcgQEAgaW50IGRybV9jb25uZWN0b3JfaW5pdChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJCSAgICAgICBpbnQgY29ubmVjdG9yX3R5cGUpOwo+ ICBpbnQgZHJtX2Nvbm5lY3Rvcl9yZWdpc3RlcihzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yKTsKPiAgdm9pZCBkcm1fY29ubmVjdG9yX3VucmVnaXN0ZXIoc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3Rvcik7Cj4gLWludCBkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIo c3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiAraW50IGRybV9jb25uZWN0b3JfYXR0 YWNoX2VuY29kZXIoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiAgCQkJCSAgICAg IHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2Rlcik7Cj4gIAo+ICB2b2lkIGRybV9jb25uZWN0b3Jf Y2xlYW51cChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKPiAtLSAKPiAyLjE4LjAK PiAKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IGRy aS1kZXZlbCBtYWlsaW5nIGxpc3QKPiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4g aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK Ci0tIApTZWFuIFBhdWwsIFNvZnR3YXJlIEVuZ2luZWVyLCBHb29nbGUgLyBDaHJvbWl1bSBPUwpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwg bWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK