From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan De Oliveira Subject: Re: [PATCH 3/5] drm/i915: Make wait_for_flips interruptible. Date: Mon, 19 Oct 2015 16:16:53 +0300 Message-ID: <1445260613.3042.62.camel@gmail.com> References: <1443007632-5573-1-git-send-email-maarten.lankhorst@linux.intel.com> <1443007632-5573-4-git-send-email-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pa0-f51.google.com (mail-pa0-f51.google.com [209.85.220.51]) by gabe.freedesktop.org (Postfix) with ESMTPS id 71B1D6E570 for ; Mon, 19 Oct 2015 06:17:02 -0700 (PDT) Received: by pasz6 with SMTP id z6so30635126pas.2 for ; Mon, 19 Oct 2015 06:17:02 -0700 (PDT) In-Reply-To: <1443007632-5573-4-git-send-email-maarten.lankhorst@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Maarten Lankhorst , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAyMDE1LTA5LTIzIGF0IDEzOjI3ICswMjAwLCBNYWFydGVuIExhbmtob3JzdCB3cm90 ZToKPiBNb3ZlIGl0IGZyb20gaW50ZWxfY3J0Y19hdG9taWNfY29tbWl0IHRvIHByZXBhcmVfcGxh bmVfZmIuCj4gV2FpdGluZyBpcyBkb25lIGJlZm9yZSBjb21taXR0aW5nLCBvdGhlcndpc2UgaXQn cyB0b28gbGF0ZQo+IHRvIHVuZG8gdGhlIGNoYW5nZXMuCj4gCj4gU2lnbmVkLW9mZi1ieTogTWFh cnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KPiAtLS0K PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMgIHwgICAyIC0KPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgMTA3ICsrKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0tLS0KPiAtCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICAg ICB8ICAgMiAtCj4gIDMgZmlsZXMgY2hhbmdlZCwgNjIgaW5zZXJ0aW9ucygrKSwgNDkgZGVsZXRp b25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21p Yy5jCj4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdG9taWMuYwo+IGluZGV4IGYxOTc1 ZjI2NzcxMC4uMjVhODkxYWEzODI0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2F0b21pYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWlj LmMKPiBAQCAtMjA1LDggKzIwNSw2IEBAIGludCBpbnRlbF9hdG9taWNfc2V0dXBfc2NhbGVycyhz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJCQkJICogYnV0IHNpbmNlIHRoaXMgcGxhbmUgaXMg dW5jaGFuZ2VkIGp1c3QgZG8KPiB0aGUKPiAgCQkJCSAqIG1pbmltdW0gcmVxdWlyZWQgdmFsaWRh dGlvbi4KPiAgCQkJCSAqLwo+IC0JCQkJaWYgKHBsYW5lLT50eXBlID09IERSTV9QTEFORV9UWVBF X1BSSU1BUlkpCj4gLQkJCQkJaW50ZWxfY3J0Yy0+YXRvbWljLndhaXRfZm9yX2ZsaXBzID0KPiB0 cnVlOwo+ICAJCQkJY3J0Y19zdGF0ZS0+YmFzZS5wbGFuZXNfY2hhbmdlZCA9IHRydWU7Cj4gIAkJ CX0KPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXku Ywo+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gaW5kZXggMjVlMWVh YzI2MGZkLi5jZDY1MWZmNmMxNWIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxh eS5jCj4gQEAgLTMyMjEsMzIgKzMyMjEsNiBAQCB2b2lkIGludGVsX2ZpbmlzaF9yZXNldChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJZHJtX21vZGVzZXRfdW5sb2NrX2FsbChkZXYpOwo+ICB9 Cj4gIAo+IC1zdGF0aWMgdm9pZAo+IC1pbnRlbF9maW5pc2hfZmIoc3RydWN0IGRybV9mcmFtZWJ1 ZmZlciAqb2xkX2ZiKQo+IC17Cj4gLQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqID0g aW50ZWxfZmJfb2JqKG9sZF9mYik7Cj4gLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYgPSB0b19pOTE1KG9iai0+YmFzZS5kZXYpOwo+IC0JYm9vbCB3YXNfaW50ZXJydXB0aWJsZSA9 IGRldl9wcml2LT5tbS5pbnRlcnJ1cHRpYmxlOwo+IC0JaW50IHJldDsKPiAtCj4gLQkvKiBCaWcg SGFtbWVyLCB3ZSBhbHNvIG5lZWQgdG8gZW5zdXJlIHRoYXQgYW55IHBlbmRpbmcKPiAtCSAqIE1J X1dBSVRfRk9SX0VWRU5UIGluc2lkZSBhIHVzZXIgYmF0Y2ggYnVmZmVyIG9uIHRoZQo+IC0JICog Y3VycmVudCBzY2Fub3V0IGlzIHJldGlyZWQgYmVmb3JlIHVucGlubmluZyB0aGUgb2xkCj4gLQkg KiBmcmFtZWJ1ZmZlci4gTm90ZSB0aGF0IHdlIHJlbHkgb24gdXNlcnNwYWNlIHJlbmRlcmluZwo+ IC0JICogaW50byB0aGUgYnVmZmVyIGF0dGFjaGVkIHRvIHRoZSBwaXBlIHRoZXkgYXJlIHdhaXRp bmcKPiAtCSAqIG9uLiBJZiBub3QsIHVzZXJzcGFjZSBnZW5lcmF0ZXMgYSBHUFUgaGFuZyB3aXRo IElQRUhSCj4gLQkgKiBwb2ludCB0byB0aGUgTUlfV0FJVF9GT1JfRVZFTlQuCj4gLQkgKgo+IC0J ICogVGhpcyBzaG91bGQgb25seSBmYWlsIHVwb24gYSBodW5nIEdQVSwgaW4gd2hpY2ggY2FzZSB3 ZQo+IC0JICogY2FuIHNhZmVseSBjb250aW51ZS4KPiAtCSAqLwo+IC0JZGV2X3ByaXYtPm1tLmlu dGVycnVwdGlibGUgPSBmYWxzZTsKPiAtCXJldCA9IGk5MTVfZ2VtX29iamVjdF93YWl0X3JlbmRl cmluZyhvYmosIHRydWUpOwo+IC0JZGV2X3ByaXYtPm1tLmludGVycnVwdGlibGUgPSB3YXNfaW50 ZXJydXB0aWJsZTsKPiAtCj4gLQlXQVJOX09OKHJldCk7Cj4gLX0KPiAtCj4gIHN0YXRpYyBib29s IGludGVsX2NydGNfaGFzX3BlbmRpbmdfZmxpcChzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gIHsK PiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7Cj4gQEAgLTM4NjcsMTUgKzM4 NDEsMjMgQEAgc3RhdGljIHZvaWQgcGFnZV9mbGlwX2NvbXBsZXRlZChzdHJ1Y3QgaW50ZWxfY3J0 Ywo+ICppbnRlbF9jcnRjKQo+ICAJCQkJIHdvcmstPnBlbmRpbmdfZmxpcF9vYmopOwo+ICB9Cj4g IAo+IC12b2lkIGludGVsX2NydGNfd2FpdF9mb3JfcGVuZGluZ19mbGlwcyhzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMpCj4gK3N0YXRpYyBpbnQgaW50ZWxfY3J0Y193YWl0X2Zvcl9wZW5kaW5nX2ZsaXBz KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAgewo+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9 IGNydGMtPmRldjsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ ZGV2X3ByaXZhdGU7Cj4gKwlsb25nIHJldDsKPiAgCj4gIAlXQVJOX09OKHdhaXRxdWV1ZV9hY3Rp dmUoJmRldl9wcml2LT5wZW5kaW5nX2ZsaXBfcXVldWUpKTsKPiAtCWlmIChXQVJOX09OKHdhaXRf ZXZlbnRfdGltZW91dChkZXZfcHJpdi0+cGVuZGluZ19mbGlwX3F1ZXVlLAo+IC0JCQkJICAgICAg ICFpbnRlbF9jcnRjX2hhc19wZW5kaW5nX2ZsaXAoY3J0YyksCj4gLQkJCQkgICAgICAgNjAqSFop ID09IDApKSB7Cj4gKwo+ICsJcmV0ID0gd2FpdF9ldmVudF9pbnRlcnJ1cHRpYmxlX3RpbWVvdXQo Cj4gKwkJCQkJZGV2X3ByaXYtPnBlbmRpbmdfZmxpcF9xdWV1ZSwKPiArCQkJCQkhaW50ZWxfY3J0 Y19oYXNfcGVuZGluZ19mbGlwKGNydGMpLAo+ICsJCQkJCTYwKkhaKTsKPiArCj4gKwlpZiAocmV0 IDwgMCkKPiArCQlyZXR1cm4gcmV0Owo+ICsKPiArCWlmIChyZXQgPT0gMCkgewo+ICAJCXN0cnVj dCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKPiAgCj4gIAkJ c3Bpbl9sb2NrX2lycSgmZGV2LT5ldmVudF9sb2NrKTsKPiBAQCAtMzg4NiwxMSArMzg2OCw3IEBA IHZvaWQgaW50ZWxfY3J0Y193YWl0X2Zvcl9wZW5kaW5nX2ZsaXBzKHN0cnVjdCBkcm1fY3J0Ywo+ ICpjcnRjKQo+ICAJCXNwaW5fdW5sb2NrX2lycSgmZGV2LT5ldmVudF9sb2NrKTsKPiAgCX0KPiAg Cj4gLQlpZiAoY3J0Yy0+cHJpbWFyeS0+ZmIpIHsKPiAtCQltdXRleF9sb2NrKCZkZXYtPnN0cnVj dF9tdXRleCk7Cj4gLQkJaW50ZWxfZmluaXNoX2ZiKGNydGMtPnByaW1hcnktPmZiKTsKPiAtCQlt dXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKPiAtCX0KClRoZXJlIGlzIGFub3RoZXIg Y2FsbGVyIG9mIGludGVsX2NydGNfd2FpdF9mb3JfcGVuZGluZ19mbGlwcygpIGJlc2lkZXMgdGhl IG9uZQp0b3VjaGVkIGluIHRoaXMgcGF0Y2g6IGludGVsX2NydGNfZGlzYWJsZV9ub2F0b21pYygp LiBJbiB5b3VyIHByZXZpb3VzIHNlcmllcwp5b3UgZHJvcHBlZCB0aGF0IGNhbGwgYmFzZWQgb24g dGhlIGZhY3QgdGhhdCB0aGVyZSBzaG91bGRuJ3QgYmUgYW55IHBlbmRpbmcKZmxpcHMgYXQgdGhh dCBwb2ludCwgYnV0IHRoYXQgcGF0Y2ggaGFzIGJlZW4gZHJvcHBlZC4KCldvdWxkbid0IGl0IGJl IGJldHRlciB0byBhZGQgYSBXQVJOX09OIGFzIENocmlzIHN1Z2dlc3RlZCB0aGVuIGluc3RlYWQg b2YKa2VlcGluZyB0aGUgd2FpdCBmb3IgZmxpcHMgYnV0IHdpdGhvdXQgdGhlIHdvcmsgYXJvdW5k PwoKPiArCXJldHVybiAwOwo+ICB9Cj4gIAo+ICAvKiBQcm9ncmFtIGlDTEtJUCBjbG9jayB0byB0 aGUgZGVzaXJlZCBmcmVxdWVuY3kgKi8KPiBAQCAtNDc1MCw5ICs0NzI4LDYgQEAgc3RhdGljIHZv aWQgaW50ZWxfcHJlX3BsYW5lX3VwZGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Ywo+ICpjcnRjKQo+ICAJ c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiAg CXN0cnVjdCBpbnRlbF9jcnRjX2F0b21pY19jb21taXQgKmF0b21pYyA9ICZjcnRjLT5hdG9taWM7 Cj4gIAo+IC0JaWYgKGF0b21pYy0+d2FpdF9mb3JfZmxpcHMpCj4gLQkJaW50ZWxfY3J0Y193YWl0 X2Zvcl9wZW5kaW5nX2ZsaXBzKCZjcnRjLT5iYXNlKTsKPiAtCj4gIAlpZiAoYXRvbWljLT5kaXNh YmxlX2ZiYykKPiAgCQlpbnRlbF9mYmNfZGlzYWJsZV9jcnRjKGNydGMpOwo+ICAKPiBAQCAtMTE1 OTYsNyArMTE1NzEsNiBAQCBpbnQgaW50ZWxfcGxhbmVfYXRvbWljX2NhbGNfY2hhbmdlcyhzdHJ1 Y3QKPiBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPiAgCj4gIAlzd2l0Y2ggKHBsYW5lLT50 eXBlKSB7Cj4gIAljYXNlIERSTV9QTEFORV9UWVBFX1BSSU1BUlk6Cj4gLQkJaW50ZWxfY3J0Yy0+ YXRvbWljLndhaXRfZm9yX2ZsaXBzID0gdHJ1ZTsKPiAgCQlpbnRlbF9jcnRjLT5hdG9taWMucHJl X2Rpc2FibGVfcHJpbWFyeSA9IHR1cm5fb2ZmOwo+ICAJCWludGVsX2NydGMtPmF0b21pYy5wb3N0 X2VuYWJsZV9wcmltYXJ5ID0gdHVybl9vbjsKPiAgCj4gQEAgLTEzMDE1LDYgKzEyOTg5LDMwIEBA IHN0YXRpYyBpbnQgaW50ZWxfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4g IAlyZXR1cm4gZHJtX2F0b21pY19oZWxwZXJfY2hlY2tfcGxhbmVzKHN0YXRlLT5kZXYsIHN0YXRl KTsKPiAgfQo+ICAKPiArc3RhdGljIGludCBpbnRlbF9hdG9taWNfcHJlcGFyZV9jb21taXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwKPiArCQkJCSAgICAgICBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0 ZSAqc3RhdGUsCj4gKwkJCQkgICAgICAgYm9vbCBhc3luYykKPiArewo+ICsJc3RydWN0IGRybV9j cnRjX3N0YXRlICpjcnRjX3N0YXRlOwo+ICsJc3RydWN0IGRybV9jcnRjICpjcnRjOwo+ICsJaW50 IGksIHJldDsKPiArCj4gKwlpZiAoYXN5bmMpIHsKPiArCQlEUk1fREVCVUdfS01TKCJpOTE1IGRv ZXMgbm90IHlldCBzdXBwb3J0IGFzeW5jIGNvbW1pdFxuIik7Cj4gKwkJcmV0dXJuIC1FSU5WQUw7 Cj4gKwl9Cj4gKwo+ICsJZm9yX2VhY2hfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0YywgY3J0Y19z dGF0ZSwgaSkgewo+ICsJCXJldCA9IGludGVsX2NydGNfd2FpdF9mb3JfcGVuZGluZ19mbGlwcyhj cnRjKTsKPiArCQlpZiAocmV0KQo+ICsJCQlyZXR1cm4gcmV0Owo+ICsJfQo+ICsKPiArCXJldCA9 IGRybV9hdG9taWNfaGVscGVyX3ByZXBhcmVfcGxhbmVzKGRldiwgc3RhdGUpOwo+ICsKPiArCXJl dHVybiByZXQ7Cj4gK30KPiArCj4gIC8qKgo+ICAgKiBpbnRlbF9hdG9taWNfY29tbWl0IC0gY29t bWl0IHZhbGlkYXRlZCBzdGF0ZSBvYmplY3QKPiAgICogQGRldjogRFJNIGRldmljZQo+IEBAIC0x MzA0MiwxMiArMTMwNDAsNyBAQCBzdGF0aWMgaW50IGludGVsX2F0b21pY19jb21taXQoc3RydWN0 IGRybV9kZXZpY2UKPiAqZGV2LAo+ICAJaW50IGk7Cj4gIAlib29sIGFueV9tcyA9IGZhbHNlOwo+ ICAKPiAtCWlmIChhc3luYykgewo+IC0JCURSTV9ERUJVR19LTVMoImk5MTUgZG9lcyBub3QgeWV0 IHN1cHBvcnQgYXN5bmMgY29tbWl0XG4iKTsKPiAtCQlyZXR1cm4gLUVJTlZBTDsKPiAtCX0KPiAt Cj4gLQlyZXQgPSBkcm1fYXRvbWljX2hlbHBlcl9wcmVwYXJlX3BsYW5lcyhkZXYsIHN0YXRlKTsK PiArCXJldCA9IGludGVsX2F0b21pY19wcmVwYXJlX2NvbW1pdChkZXYsIHN0YXRlLCBhc3luYyk7 Cj4gIAlpZiAocmV0KQo+ICAJCXJldHVybiByZXQ7Cj4gIAo+IEBAIC0xMzMwNiw2ICsxMzI5OSwy OSBAQCBpbnRlbF9wcmVwYXJlX3BsYW5lX2ZiKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ICAJ aWYgKHJldCkKPiAgCQlyZXR1cm4gcmV0Owo+ICAKPiArCWlmIChvbGRfb2JqKSB7Cj4gKwkJc3Ry dWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlID0KPiArCQkJZHJtX2F0b21pY19nZXRfZXhp c3RpbmdfY3J0Y19zdGF0ZShuZXdfc3RhdGUtPnN0YXRlLAo+IHBsYW5lLT5zdGF0ZS0+Y3J0Yyk7 Cj4gKwo+ICsJCS8qIEJpZyBIYW1tZXIsIHdlIGFsc28gbmVlZCB0byBlbnN1cmUgdGhhdCBhbnkg cGVuZGluZwo+ICsJCSAqIE1JX1dBSVRfRk9SX0VWRU5UIGluc2lkZSBhIHVzZXIgYmF0Y2ggYnVm ZmVyIG9uIHRoZQo+ICsJCSAqIGN1cnJlbnQgc2Nhbm91dCBpcyByZXRpcmVkIGJlZm9yZSB1bnBp bm5pbmcgdGhlIG9sZAo+ICsJCSAqIGZyYW1lYnVmZmVyLiBOb3RlIHRoYXQgd2UgcmVseSBvbiB1 c2Vyc3BhY2UgcmVuZGVyaW5nCj4gKwkJICogaW50byB0aGUgYnVmZmVyIGF0dGFjaGVkIHRvIHRo ZSBwaXBlIHRoZXkgYXJlIHdhaXRpbmcKPiArCQkgKiBvbi4gSWYgbm90LCB1c2Vyc3BhY2UgZ2Vu ZXJhdGVzIGEgR1BVIGhhbmcgd2l0aCBJUEVIUgo+ICsJCSAqIHBvaW50IHRvIHRoZSBNSV9XQUlU X0ZPUl9FVkVOVC4KPiArCQkgKgo+ICsJCSAqIFRoaXMgc2hvdWxkIG9ubHkgZmFpbCB1cG9uIGEg aHVuZyBHUFUsIGluIHdoaWNoIGNhc2Ugd2UKPiArCQkgKiBjYW4gc2FmZWx5IGNvbnRpbnVlLgo+ ICsJCSAqLwo+ICsJCWlmIChuZWVkc19tb2Rlc2V0KGNydGNfc3RhdGUpKQo+ICsJCQlyZXQgPSBp OTE1X2dlbV9vYmplY3Rfd2FpdF9yZW5kZXJpbmcob2xkX29iaiwgdHJ1ZSk7Cj4gKwo+ICsJCS8q IFN3YWxsb3cgLUVJTyBlcnJvcnMgdG8gYWxsb3cgdXBkYXRlcyBkdXJpbmcgaHcgbG9ja3VwLiAq Lwo+ICsJCWlmIChyZXQgJiYgcmV0ICE9IC1FSU8pCj4gKwkJCWdvdG8gb3V0OwoKRG9lc24ndCB0 aGlzIGNoYW5nZSB0aGUgYmVoYXZpb3Igb2YgYSBtb2Rlc2V0IGFmdGVyIGEgR1BVIGhhbmc/IFNp bmNlCm1tLmludGVycnVwdGlibGUgaXMgdHJ1ZSwgaTkxNV9nZW1fY2hlY2tfd2VkZ2UoKSBtaWdo dCByZXR1cm4gLUVBR0FJTiBpbnN0ZWFkIG9mCi1FSU8uIFByZXZpb3VzbHkgdGhlIG1vZGVzZXQg d291bGQgY29udGludWUgaW4gdGhhdCBzY2VuYXJpbywgYnV0IG5vdywgc29tZXdoYXQKY29udHJh cnkgdG8gdGhlIGNvbW1lbnQgYWJvdmUsIHdlIGRvbid0IGNvbnRpbnVlIGFuZCBpbnN0ZWFkIHBh c3MgdGhlIC1FQUdBSU4gdG8KdXNlciBzcGFjZS4KCkFuZGVyCgoKPiArCX0KPiArCj4gIAlpZiAo IW9iaikgewo+ICAJCXJldCA9IDA7Cj4gIAl9IGVsc2UgaWYgKHBsYW5lLT50eXBlID09IERSTV9Q TEFORV9UWVBFX0NVUlNPUiAmJgo+IEBAIC0xMzMyMSw2ICsxMzMzNyw3IEBAIGludGVsX3ByZXBh cmVfcGxhbmVfZmIoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gIAlpZiAocmV0ID09IDApCj4g IAkJaTkxNV9nZW1fdHJhY2tfZmIob2xkX29iaiwgb2JqLCBpbnRlbF9wbGFuZQo+IC0+ZnJvbnRi dWZmZXJfYml0KTsKPiAgCj4gK291dDoKPiAgCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0 ZXgpOwo+ICAKPiAgCXJldHVybiByZXQ7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rydi5oCj4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+IGlu ZGV4IGEyZjBiOTgxZTI2Yy4uY2ZkYjBmMjcxNGNkIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHJ2LmgKPiBAQCAtNDk5LDcgKzQ5OSw2IEBAIHN0cnVjdCBza2xfcGlwZV93bSB7Cj4gICAqLwo+ ICBzdHJ1Y3QgaW50ZWxfY3J0Y19hdG9taWNfY29tbWl0IHsKPiAgCS8qIFNsZWVwYWJsZSBvcGVy YXRpb25zIHRvIHBlcmZvcm0gYmVmb3JlIGNvbW1pdCAqLwo+IC0JYm9vbCB3YWl0X2Zvcl9mbGlw czsKPiAgCWJvb2wgZGlzYWJsZV9mYmM7Cj4gIAlib29sIGRpc2FibGVfaXBzOwo+ICAJYm9vbCBk aXNhYmxlX2N4c3I7Cj4gQEAgLTExNTgsNyArMTE1Nyw2IEBAIGVudW0gaW50ZWxfZGlzcGxheV9w b3dlcl9kb21haW4KPiAgaW50ZWxfZGlzcGxheV9wb3J0X3Bvd2VyX2RvbWFpbihzdHJ1Y3QgaW50 ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2Rlcik7Cj4gIHZvaWQgaW50ZWxfbW9kZV9mcm9tX3BpcGVf Y29uZmlnKHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlLAo+ICAJCQkJIHN0cnVjdCBpbnRl bF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZyk7Cj4gLXZvaWQgaW50ZWxfY3J0Y193YWl0X2Zvcl9w ZW5kaW5nX2ZsaXBzKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7Cj4gIHZvaWQgaW50ZWxfbW9kZXNl dF9wcmVjbG9zZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUp Owo+ICAKPiAgaW50IHNrbF91cGRhdGVfc2NhbGVyX2NydGMoc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpOwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeAo=