From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH v2] drm: Pass along the hotplug connector to the uevent Date: Fri, 21 Oct 2016 12:27:05 +0300 Message-ID: <87pomuoxw6.fsf@intel.com> References: <20161021082556.14745-1-chris@chris-wilson.co.uk> <20161021091421.21709-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20161021091421.21709-1-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCAyMSBPY3QgMjAxNiwgQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28u dWs+IHdyb3RlOgo+IElmIHdlIGtub3cgd2hpY2ggY29ubmVjdG9yIHdhcyBwbHVnZ2VkL3VucGx1 Z2dlZCBvcgo+IGNvbm5lY3RlZC9kaXNjb25uZWN0ZWQsIHdlIGNhbiBwYXNzIHRoYXQgaW5mb3Jt YXRpb24gYWxvbmcgdG8gdXNlcnNwYWNlCj4gaW5zaWRlIHRoZSB1ZXZlbnQgdG8gcmVkdWNlIHRo ZSBhbW91bnQgb2Ygd29yayB1c2Vyc3BhY2UgaGFzIHRvIHBlcmZvcm0KPiBhZnRlciB0aGUgZXZl bnQgKGkuZS4gaW5zdGVhZCBvZiBsb29raW5nIG92ZXIgYWxsIGNvbm5lY3RvcnMsIGl0IGNhbgo+ IGp1c3QgcmVwcm9iZSB0aGUgYWZmZWN0ZWQgb25lKS4KPgo+IHYyOiBEb24ndCBjb252ZXJ0IGlu dGVsX2hvdHBsdWcuYywgaXQgZG9lcyBhIGxpZ2h0IHByb2JlIGFuZCBkb2Vzbid0Cj4gbmVlZCB0 aGUgZm9yY2UuCj4KPiBTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdp bHNvbi5jby51az4KPiBDYzogVmlsbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5p bnRlbC5jb20+Cj4gQ2M6IE1hbmFzaSBOYXZhcmUgPG1hbmFzaS5kLm5hdmFyZUBpbnRlbC5jb20+ Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmMgICAgIHwgMTAgKysr KysrLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX3N5c2ZzLmMgICAgICAgICAgICB8IDE5ICsr KysrKysrKysrKysrKy0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jICAg ICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAgICAgICB8ICAz ICsrLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3QuYyAgICB8ICAyICstCj4g IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hvdHBsdWcuYyAgIHwgIDIgKy0KPiAgZHJpdmVy cy9ncHUvZHJtL3F4bC9xeGxfZGlzcGxheS5jICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9k cm0vcmFkZW9uL3JhZGVvbl9kcF9tc3QuYyB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS92aXJ0 aW8vdmlydGdwdV92cS5jICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdn ZnhfZHJ2LmMgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMu YyAgICB8ICAyICstCj4gIGluY2x1ZGUvZHJtL2RybVAuaCAgICAgICAgICAgICAgICAgICAgIHwg IDMgKystCj4gIGluY2x1ZGUvZHJtL2RybV9jcnRjX2hlbHBlci5oICAgICAgICAgIHwgIDMgKyst Cj4gIDEzIGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQo+ Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmMgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX3Byb2JlX2hlbHBlci5jCj4gaW5kZXggZjZiNjRkN2QzNTI4Li44Nzkw ZWUzNWE3Y2QgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9wcm9iZV9oZWxwZXIu Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmMKPiBAQCAtMzQ3LDYg KzM0Nyw3IEBAIEVYUE9SVF9TWU1CT0woZHJtX2hlbHBlcl9wcm9iZV9zaW5nbGVfY29ubmVjdG9y X21vZGVzKTsKPiAgLyoqCj4gICAqIGRybV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQgLSBmaXJl IG9mZiBLTVMgaG90cGx1ZyBldmVudHMKPiAgICogQGRldjogZHJtX2RldmljZSB3aG9zZSBjb25u ZWN0b3Igc3RhdGUgY2hhbmdlZAo+ICsgKiBAY29ubmVjdG9yOiBjb25uZWN0b3Igb24gd2hpY2gg dGhlIHN0YXR1cyBjaGFuZ2VkLCBpZiBhbnkKPiAgICoKPiAgICogVGhpcyBmdW5jdGlvbiBmaXJl cyBvZmYgdGhlIHVldmVudCBmb3IgdXNlcnNwYWNlIGFuZCBhbHNvIGNhbGxzIHRoZQo+ICAgKiBv dXRwdXRfcG9sbF9jaGFuZ2VkIGZ1bmN0aW9uLCB3aGljaCBpcyBtb3N0IGNvbW1vbmx5IHVzZWQg dG8gaW5mb3JtIHRoZSBmYmRldgo+IEBAIC0zNjAsMTAgKzM2MSwxMSBAQCBFWFBPUlRfU1lNQk9M KGRybV9oZWxwZXJfcHJvYmVfc2luZ2xlX2Nvbm5lY3Rvcl9tb2Rlcyk7Cj4gICAqIFRoaXMgZnVu Y3Rpb24gbXVzdCBiZSBjYWxsZWQgZnJvbSBwcm9jZXNzIGNvbnRleHQgd2l0aCBubyBtb2RlCj4g ICAqIHNldHRpbmcgbG9ja3MgaGVsZC4KPiAgICovCj4gLXZvaWQgZHJtX2ttc19oZWxwZXJfaG90 cGx1Z19ldmVudChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICt2b2lkIGRybV9rbXNfaGVscGVy X2hvdHBsdWdfZXZlbnQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiArCQkJCSAgc3RydWN0IGRy bV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiAgewo+ICAJLyogc2VuZCBhIHVldmVudCArIGNhbGwg ZmJkZXYgKi8KPiAtCWRybV9zeXNmc19ob3RwbHVnX2V2ZW50KGRldik7Cj4gKwlkcm1fc3lzZnNf aG90cGx1Z19ldmVudChkZXYsIGNvbm5lY3Rvcik7Cj4gIAlpZiAoZGV2LT5tb2RlX2NvbmZpZy5m dW5jcy0+b3V0cHV0X3BvbGxfY2hhbmdlZCkKPiAgCQlkZXYtPm1vZGVfY29uZmlnLmZ1bmNzLT5v dXRwdXRfcG9sbF9jaGFuZ2VkKGRldik7Cj4gIH0KPiBAQCAtNDQ0LDcgKzQ0Niw3IEBAIHN0YXRp YyB2b2lkIG91dHB1dF9wb2xsX2V4ZWN1dGUoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQo+ICAK PiAgb3V0Ogo+ICAJaWYgKGNoYW5nZWQpCj4gLQkJZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVu dChkZXYpOwo+ICsJCWRybV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQoZGV2LCBOVUxMKTsKPiAg Cj4gIAlpZiAocmVwb2xsKQo+ICAJCXNjaGVkdWxlX2RlbGF5ZWRfd29yayhkZWxheWVkX3dvcmss IERSTV9PVVRQVVRfUE9MTF9QRVJJT0QpOwo+IEBAIC01NzgsNyArNTgwLDcgQEAgYm9vbCBkcm1f aGVscGVyX2hwZF9pcnFfZXZlbnQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCW11dGV4X3Vu bG9jaygmZGV2LT5tb2RlX2NvbmZpZy5tdXRleCk7Cj4gIAo+ICAJaWYgKGNoYW5nZWQpCj4gLQkJ ZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVudChkZXYpOwo+ICsJCWRybV9rbXNfaGVscGVyX2hv dHBsdWdfZXZlbnQoZGV2LCBOVUxMKTsKPiAgCj4gIAlyZXR1cm4gY2hhbmdlZDsKPiAgfQo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3N5c2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX3N5c2ZzLmMKPiBpbmRleCA5YTM3MTk2YzFiZjEuLmM4ZjQ2MDU1ZTJkMCAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3N5c2ZzLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX3N5c2ZzLmMKPiBAQCAtMjgwLDcgKzI4MCw3IEBAIGludCBkcm1fc3lzZnNfY29ubmVjdG9y X2FkZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ICAJfQo+ICAKPiAgCS8qIExl dCB1c2Vyc3BhY2Uga25vdyB3ZSBoYXZlIGEgbmV3IGNvbm5lY3RvciAqLwo+IC0JZHJtX3N5c2Zz X2hvdHBsdWdfZXZlbnQoZGV2KTsKPiArCWRybV9zeXNmc19ob3RwbHVnX2V2ZW50KGRldiwgY29u bmVjdG9yKTsKPiAgCj4gIAlyZXR1cm4gMDsKPiAgfQo+IEBAIC0zMTIsMTkgKzMxMiwzMCBAQCB2 b2lkIGRybV9zeXNmc19jb25uZWN0b3JfcmVtb3ZlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25u ZWN0b3IpCj4gIC8qKgo+ICAgKiBkcm1fc3lzZnNfaG90cGx1Z19ldmVudCAtIGdlbmVyYXRlIGEg RFJNIHVldmVudAo+ICAgKiBAZGV2OiBEUk0gZGV2aWNlCj4gKyAqIEBjb25uZWN0b3I6IHRoZSBE Uk0gY29ubmVjdG9yLCBpZiBhbnkKPiAgICoKPiAgICogU2VuZCBhIHVldmVudCBmb3IgdGhlIERS TSBkZXZpY2Ugc3BlY2lmaWVkIGJ5IEBkZXYuICBDdXJyZW50bHkgd2Ugb25seQo+ICAgKiBzZXQg SE9UUExVRz0xIGluIHRoZSB1ZXZlbnQgZW52aXJvbm1lbnQsIGJ1dCB0aGlzIGNvdWxkIGJlIGV4 cGFuZGVkIHRvCj4gICAqIGRlYWwgd2l0aCBvdGhlciB0eXBlcyBvZiBldmVudHMuCj4gICAqLwo+ IC12b2lkIGRybV9zeXNmc19ob3RwbHVnX2V2ZW50KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4g K3ZvaWQgZHJtX3N5c2ZzX2hvdHBsdWdfZXZlbnQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAr CQkJICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ICB7Cj4gLQljaGFyICpl dmVudF9zdHJpbmcgPSAiSE9UUExVRz0xIjsKPiAtCWNoYXIgKmVudnBbXSA9IHsgZXZlbnRfc3Ry aW5nLCBOVUxMIH07Cj4gKwljaGFyICplbnZwWzNdID0geyAiSE9UUExVRz0xIiB9Owo+ICsJY2hh ciAqY29ubmVjdG9yX2V2ZW50ID0gTlVMTDsKPiArCj4gKwlpZiAoY29ubmVjdG9yKQo+ICsJCWNv bm5lY3Rvcl9ldmVudCA9IGthc3ByaW50ZihHRlBfS0VSTkVMLAoKR0ZQX1RFTVBPUkFSWT8KCk90 aGVyd2lzZSwgb24gYSBsaWdodCByZWFkaW5nIG9mIHRoZSBwYXRjaCwgYW5kIGFzc3VtaW5nIGV4 aXN0aW5nCnVzZXJzcGFjZSBkb2Vzbid0IGZhbGwgb3ZlciBiZWNhdXNlIG9mIHRoaXMsCgpSZXZp ZXdlZC1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KCgo+ICsJCQkJCSAg ICAiQ09OTkVDVE9SPSVkIiwKPiArCQkJCQkgICAgY29ubmVjdG9yLT5iYXNlLmlkKTsKPiArCWlm IChjb25uZWN0b3JfZXZlbnQpCj4gKwkJZW52cFsxXSA9IGNvbm5lY3Rvcl9ldmVudDsKPiAgCj4g IAlEUk1fREVCVUcoImdlbmVyYXRpbmcgaG90cGx1ZyBldmVudFxuIik7Cj4gIAo+ICAJa29iamVj dF91ZXZlbnRfZW52KCZkZXYtPnByaW1hcnktPmtkZXYtPmtvYmosIEtPQkpfQ0hBTkdFLCBlbnZw KTsKPiArCj4gKwlrZnJlZShjb25uZWN0b3JfZXZlbnQpOwo+ICB9Cj4gIEVYUE9SVF9TWU1CT0wo ZHJtX3N5c2ZzX2hvdHBsdWdfZXZlbnQpOwo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2kyYy90ZGE5OTh4X2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5j Cj4gaW5kZXggOTc5OGQ0MDBkODE3Li45ZmQ4NzNjODc2ODYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2kyYy90 ZGE5OTh4X2Rydi5jCj4gQEAgLTYxNyw3ICs2MTcsNyBAQCBzdGF0aWMgdm9pZCB0ZGE5OTh4X2Rl dGVjdF93b3JrKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKPiAgCXN0cnVjdCBkcm1fZGV2aWNl ICpkZXYgPSBwcml2LT5lbmNvZGVyLmRldjsKPiAgCj4gIAlpZiAoZGV2KQo+IC0JCWRybV9rbXNf aGVscGVyX2hvdHBsdWdfZXZlbnQoZGV2KTsKPiArCQlkcm1fa21zX2hlbHBlcl9ob3RwbHVnX2V2 ZW50KGRldiwgTlVMTCk7Cj4gIH0KPiAgCj4gIC8qCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2RwLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4g aW5kZXggODhmM2I3NDVhMzI2Li41OWNkMTg1Njg5YzAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2RwLmMKPiBAQCAtMzk4MSw3ICszOTgxLDggQEAgaW50ZWxfZHBfY2hlY2tfbXN0X3N0YXR1cyhz dHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICAJCQlpbnRlbF9kcC0+aXNfbXN0ID0gZmFsc2U7 Cj4gIAkJCWRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyX3NldF9tc3QoJmludGVsX2RwLT5tc3RfbWdy LCBpbnRlbF9kcC0+aXNfbXN0KTsKPiAgCQkJLyogc2VuZCBhIGhvdHBsdWcgZXZlbnQgKi8KPiAt CQkJZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVudChpbnRlbF9kaWdfcG9ydC0+YmFzZS5iYXNl LmRldik7Cj4gKwkJCWRybV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQoaW50ZWxfZGlnX3BvcnQt PmJhc2UuYmFzZS5kZXYsCj4gKwkJCQkJCSAgICAgJmludGVsX2RwLT5hdHRhY2hlZF9jb25uZWN0 b3ItPmJhc2UpOwo+ICAJCX0KPiAgCX0KPiAgCXJldHVybiAtRUlOVkFMOwo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2RwX21zdC5jCj4gaW5kZXggM2ZmYmQ2OWU0NTUxLi4yYmQ0OGE5ODc5MzQgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfbXN0LmMKPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3QuYwo+IEBAIC00OTMsNyArNDkzLDcgQEAg c3RhdGljIHZvaWQgaW50ZWxfZHBfbXN0X2hvdHBsdWcoc3RydWN0IGRybV9kcF9tc3RfdG9wb2xv Z3lfbWdyICptZ3IpCj4gIAlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9y dCA9IGRwX3RvX2RpZ19wb3J0KGludGVsX2RwKTsKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSBpbnRlbF9kaWdfcG9ydC0+YmFzZS5iYXNlLmRldjsKPiAgCj4gLQlkcm1fa21zX2hlbHBlcl9o b3RwbHVnX2V2ZW50KGRldik7Cj4gKwlkcm1fa21zX2hlbHBlcl9ob3RwbHVnX2V2ZW50KGRldiwg JmludGVsX2RwLT5hdHRhY2hlZF9jb25uZWN0b3ItPmJhc2UpOwo+ICB9Cj4gIAo+ICBzdGF0aWMg Y29uc3Qgc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfY2JzIG1zdF9jYnMgPSB7Cj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hvdHBsdWcuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2hvdHBsdWcuYwo+IGluZGV4IDMzNGQ0N2I1ODExYS4uZGEwNjQ5YWZm NzM0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hvdHBsdWcuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hvdHBsdWcuYwo+IEBAIC0zNDAsNyAr MzQwLDcgQEAgc3RhdGljIHZvaWQgaTkxNV9ob3RwbHVnX3dvcmtfZnVuYyhzdHJ1Y3Qgd29ya19z dHJ1Y3QgKndvcmspCj4gIAltdXRleF91bmxvY2soJm1vZGVfY29uZmlnLT5tdXRleCk7Cj4gIAo+ ICAJaWYgKGNoYW5nZWQpCj4gLQkJZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVudChkZXYpOwo+ ICsJCWRybV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQoZGV2LCBOVUxMKTsKPiAgfQo+ICAKPiAg Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX2Rpc3BsYXkuYyBiL2RyaXZl cnMvZ3B1L2RybS9xeGwvcXhsX2Rpc3BsYXkuYwo+IGluZGV4IDJlMDFjNmU1ZDkwNS4uM2MxOTZh MDk2YzJkIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX2Rpc3BsYXkuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX2Rpc3BsYXkuYwo+IEBAIC0xMzUsNyArMTM1 LDcgQEAgdm9pZCBxeGxfZGlzcGxheV9yZWFkX2NsaWVudF9tb25pdG9yc19jb25maWcoc3RydWN0 IHF4bF9kZXZpY2UgKnFkZXYpCj4gIAlpZiAoIWRybV9oZWxwZXJfaHBkX2lycV9ldmVudChxZGV2 LT5kZGV2KSkgewo+ICAJCS8qIG5vdGlmeSB0aGF0IHRoZSBtb25pdG9yIGNvbmZpZ3VyYXRpb24g Y2hhbmdlZCwgdG8KPiAgCQkgICBhZGp1c3QgYXQgdGhlIGFyYml0cmFyeSByZXNvbHV0aW9uICov Cj4gLQkJZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVudChxZGV2LT5kZGV2KTsKPiArCQlkcm1f a21zX2hlbHBlcl9ob3RwbHVnX2V2ZW50KHFkZXYtPmRkZXYsIE5VTEwpOwo+ICAJfQo+ICB9Cj4g IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kcF9tc3QuYyBi L2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2RwX21zdC5jCj4gaW5kZXggZGU1MDRlYTI5 YzA2Li5lODBiMWMzNjVhMmQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9y YWRlb25fZHBfbXN0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kcF9t c3QuYwo+IEBAIC0zMzEsNyArMzMxLDcgQEAgc3RhdGljIHZvaWQgcmFkZW9uX2RwX21zdF9ob3Rw bHVnKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyKQo+ICAJc3RydWN0IHJhZGVv bl9jb25uZWN0b3IgKm1hc3RlciA9IGNvbnRhaW5lcl9vZihtZ3IsIHN0cnVjdCByYWRlb25fY29u bmVjdG9yLCBtc3RfbWdyKTsKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBtYXN0ZXItPmJh c2UuZGV2Owo+ICAKPiAtCWRybV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQoZGV2KTsKPiArCWRy bV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQoZGV2LCBOVUxMKTsKPiAgfQo+ICAKPiAgY29uc3Qg c3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfY2JzIG1zdF9jYnMgPSB7Cj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV92cS5jIGIvZHJpdmVycy9ncHUvZHJtL3Zp cnRpby92aXJ0Z3B1X3ZxLmMKPiBpbmRleCA1YTBmOGE3NDViOWQuLjcyYmU0M2M5ZTAwOCAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRncHVfdnEuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV92cS5jCj4gQEAgLTU4Myw3ICs1ODMsNyBAQCBz dGF0aWMgdm9pZCB2aXJ0aW9fZ3B1X2NtZF9nZXRfZGlzcGxheV9pbmZvX2NiKHN0cnVjdCB2aXJ0 aW9fZ3B1X2RldmljZSAqdmdkZXYsCj4gIAl3YWtlX3VwKCZ2Z2Rldi0+cmVzcF93cSk7Cj4gIAo+ ICAJaWYgKCFkcm1faGVscGVyX2hwZF9pcnFfZXZlbnQodmdkZXYtPmRkZXYpKQo+IC0JCWRybV9r bXNfaGVscGVyX2hvdHBsdWdfZXZlbnQodmdkZXYtPmRkZXYpOwo+ICsJCWRybV9rbXNfaGVscGVy X2hvdHBsdWdfZXZlbnQodmdkZXYtPmRkZXYsIE5VTEwpOwo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9p ZCB2aXJ0aW9fZ3B1X2NtZF9nZXRfY2Fwc2V0X2luZm9fY2Ioc3RydWN0IHZpcnRpb19ncHVfZGV2 aWNlICp2Z2RldiwKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhf ZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYwo+IGluZGV4IGU4YWUz ZGM0NzZkMS4uMzZhYTFhMDQ0MGMzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdn Zngvdm13Z2Z4X2Rydi5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZHJ2 LmMKPiBAQCAtMTIzMyw3ICsxMjMzLDcgQEAgc3RhdGljIGludCB2bXdfbWFzdGVyX3NldChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJfQo+ICAKPiAgCWRldl9wcml2LT5hY3RpdmVfbWFzdGVy ID0gdm1hc3RlcjsKPiAtCWRybV9zeXNmc19ob3RwbHVnX2V2ZW50KGRldik7Cj4gKwlkcm1fc3lz ZnNfaG90cGx1Z19ldmVudChkZXYsIE5VTEwpOwo+ICAKPiAgCXJldHVybiAwOwo+ICB9Cj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2ttcy5jIGIvZHJpdmVycy9n cHUvZHJtL3Ztd2dmeC92bXdnZnhfa21zLmMKPiBpbmRleCBjOTY1NTE0YjgyYmUuLjI2MjYyNzYz YWE1ZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2ttcy5jCj4gQEAgLTE0MDcsNyAr MTQwNyw3IEBAIHN0YXRpYyBpbnQgdm13X2R1X3VwZGF0ZV9sYXlvdXQoc3RydWN0IHZtd19wcml2 YXRlICpkZXZfcHJpdiwgdW5zaWduZWQgbnVtLAo+ICAJfQo+ICAKPiAgCW11dGV4X3VubG9jaygm ZGV2LT5tb2RlX2NvbmZpZy5tdXRleCk7Cj4gLQlkcm1fc3lzZnNfaG90cGx1Z19ldmVudChkZXYp Owo+ICsJZHJtX3N5c2ZzX2hvdHBsdWdfZXZlbnQoZGV2LCBjb24pOwo+ICAKPiAgCXJldHVybiAw Owo+ICB9Cj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybVAuaCBiL2luY2x1ZGUvZHJtL2Ry bVAuaAo+IGluZGV4IDY3MjY0NDAzMWJkNS4uMGE0YTRhYTYxZmQzIDEwMDY0NAo+IC0tLSBhL2lu Y2x1ZGUvZHJtL2RybVAuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2RybVAuaAo+IEBAIC0xMDM4LDcg KzEwMzgsOCBAQCBleHRlcm4gc3RydWN0IGRybV9kbWFfaGFuZGxlICpkcm1fcGNpX2FsbG9jKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAo+ICBleHRlcm4gdm9pZCBkcm1fcGNp X2ZyZWUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9kbWFfaGFuZGxlICogZG1h aCk7Cj4gIAo+ICAJCQkgICAgICAgLyogc3lzZnMgc3VwcG9ydCAoZHJtX3N5c2ZzLmMpICovCj4g LWV4dGVybiB2b2lkIGRybV9zeXNmc19ob3RwbHVnX2V2ZW50KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpOwo+ICtleHRlcm4gdm9pZCBkcm1fc3lzZnNfaG90cGx1Z19ldmVudChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAo+ICsJCQkJICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwo+ ICAKPiAgCj4gIHN0cnVjdCBkcm1fZGV2aWNlICpkcm1fZGV2X2FsbG9jKHN0cnVjdCBkcm1fZHJp dmVyICpkcml2ZXIsCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jcnRjX2hlbHBlci5o IGIvaW5jbHVkZS9kcm0vZHJtX2NydGNfaGVscGVyLmgKPiBpbmRleCA5ODJjMjk5ZTQzNWEuLmE4 Y2Q2MjBlOGE1YyAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2RybS9kcm1fY3J0Y19oZWxwZXIuaAo+ ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9jcnRjX2hlbHBlci5oCj4gQEAgLTY5LDcgKzY5LDggQEAg ZXh0ZXJuIGludCBkcm1faGVscGVyX3Byb2JlX3NpbmdsZV9jb25uZWN0b3JfbW9kZXMoc3RydWN0 IGRybV9jb25uZWN0b3IKPiAgZXh0ZXJuIHZvaWQgZHJtX2ttc19oZWxwZXJfcG9sbF9pbml0KHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+ICBleHRlcm4gdm9pZCBkcm1fa21zX2hlbHBlcl9wb2xs X2Zpbmkoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gIGV4dGVybiBib29sIGRybV9oZWxwZXJf aHBkX2lycV9ldmVudChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAtZXh0ZXJuIHZvaWQgZHJt X2ttc19oZWxwZXJfaG90cGx1Z19ldmVudChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiArZXh0 ZXJuIHZvaWQgZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVudChzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LAo+ICsJCQkJCSBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKPiAgCj4gIGV4 dGVybiB2b2lkIGRybV9rbXNfaGVscGVyX3BvbGxfZGlzYWJsZShzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KTsKPiAgZXh0ZXJuIHZvaWQgZHJtX2ttc19oZWxwZXJfcG9sbF9lbmFibGUoc3RydWN0IGRy bV9kZXZpY2UgKmRldik7CgotLSAKSmFuaSBOaWt1bGEsIEludGVsIE9wZW4gU291cmNlIFRlY2hu b2xvZ3kgQ2VudGVyCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eAo=