From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: Re: [RFC v2] drm/i915: Move execlists irq handler to a bottom half Date: Thu, 24 Mar 2016 17:56:40 +0200 Message-ID: <1458835000.20611.14.camel@intel.com> References: <1458667804-14121-1-git-send-email-tvrtko.ursulin@linux.intel.com> <1458745056-25673-1-git-send-email-tvrtko.ursulin@linux.intel.com> Reply-To: imre.deak@intel.com Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 2B1516E9E5 for ; Thu, 24 Mar 2016 15:56:47 +0000 (UTC) In-Reply-To: <1458745056-25673-1-git-send-email-tvrtko.ursulin@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: Tvrtko Ursulin , Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24ga2UsIDIwMTYtMDMtMjMgYXQgMTQ6NTcgKzAwMDAsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+ IEZyb206IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4gCj4gRG9p bmcgYSBsb3Qgb2Ygd29yayBpbiB0aGUgaW50ZXJydXB0IGhhbmRsZXIgaW50cm9kdWNlcyBodWdl Cj4gbGF0ZW5jaWVzIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4KPiAKPiBNb3N0IGRyYW1hdGlj IGVmZmVjdCBjYW4gYmUgc2VlbiBieSBydW5uaW5nIGFuIGFsbCBlbmdpbmUKPiBzdHJlc3MgdGVz dCBsaWtlIGlndC9nZW1fZXhlY19ub3AvYWxsIHdoZXJlLCB3aGVuIHRoZSBrZXJuZWwKPiBjb25m aWcgaXMgbGVhbiBlbm91Z2gsIHRoZSB3aG9sZSBzeXN0ZW0gY2FuIGJlIGJyb3VnaHQgaW50bwo+ IG11bHRpLXNlY29uZCBwZXJpb2RzIG9mIGNvbXBsZXRlIG5vbi1pbnRlcmFjdGl2dHkuIFRoYXQg Y2FuCj4gbG9vayBmb3IgZXhhbXBsZSBsaWtlIHRoaXM6Cj4gCj4gwqBOTUkgd2F0Y2hkb2c6IEJV Rzogc29mdCBsb2NrdXAgLSBDUFUjMCBzdHVjayBmb3IgMjNzIQo+IFtrd29ya2VyL3U4OjM6MTQz XQo+IMKgTW9kdWxlcyBsaW5rZWQgaW46IFtyZWRhY3RlZCBmb3IgYnJldml0eV0KPiDCoENQVTog MCBQSUQ6IDE0MyBDb21tOiBrd29ya2VyL3U4OjMgVGFpbnRlZDogR8KgwqDCoMKgwqBVwqDCoMKg wqDCoMKgwqBMwqDCoDQuNS4wLQo+IDE2MDMyMSsgIzE4Mwo+IMKgSGFyZHdhcmUgbmFtZTogSW50 ZWwgQ29ycG9yYXRpb24gQnJvYWR3ZWxsIENsaWVudCBwbGF0Zm9ybS9XaGl0ZVRpcAo+IE1vdW50 YWluIDEKPiDCoFdvcmtxdWV1ZTogaTkxNSBnZW42X3BtX3Jwc193b3JrIFtpOTE1XQo+IMKgdGFz azogZmZmZjg4MDBhYWU4ODAwMCB0aTogZmZmZjg4MDBhYWU5MDAwMCB0YXNrLnRpOgo+IGZmZmY4 ODAwYWFlOTAwMDAKPiDCoFJJUDogMDAxMDpbPGZmZmZmZmZmODEwNGEzYzI+XcKgwqBbPGZmZmZm ZmZmODEwNGEzYzI+XQo+IF9fZG9fc29mdGlycSsweDcyLzB4MWQwCj4gwqBSU1A6IDAwMDA6ZmZm Zjg4MDE0ZjQwM2YzOMKgwqBFRkxBR1M6IDAwMDAwMjA2Cj4gwqBSQVg6IGZmZmY4ODAwYWFlOTQw MDAgUkJYOiAwMDAwMDAwMDAwMDAwMDAwIFJDWDogMDAwMDAwMDAwMDAwMDZlMAo+IMKgUkRYOiAw MDAwMDAwMDAwMDAwMDIwIFJTSTogMDAwMDAwMDAwNDIwODA2MCBSREk6IDAwMDAwMDAwMDAyMTVk ODAKPiDCoFJCUDogZmZmZjg4MDE0ZjQwM2Y4MCBSMDg6IDAwMDAwMDBiMWI0MmMxODAgUjA5OiAw MDAwMDAwMDAwMDAwMDIyCj4gwqBSMTA6IDAwMDAwMDAwMDAwMDAwMDQgUjExOiAwMDAwMDAwMGZm ZmZmZmZmIFIxMjogMDAwMDAwMDAwMDAwYTAzMAo+IMKgUjEzOiAwMDAwMDAwMDAwMDAwMDgyIFIx NDogZmZmZjg4MDBhYTRkMDA4MCBSMTU6IDAwMDAwMDAwMDAwMDAwODIKPiDCoEZTOsKgwqAwMDAw MDAwMDAwMDAwMDAwKDAwMDApIEdTOmZmZmY4ODAxNGY0MDAwMDAoMDAwMCkKPiBrbmxHUzowMDAw MDAwMDAwMDAwMDAwCj4gwqBDUzrCoMKgMDAxMCBEUzogMDAwMCBFUzogMDAwMCBDUjA6IDAwMDAw MDAwODAwNTAwMzMKPiDCoENSMjogMDAwMDdmYTUzYjkwYzAwMCBDUjM6IDAwMDAwMDAwMDFhMGEw MDAgQ1I0OiAwMDAwMDAwMDAwMTQwNmYwCj4gwqBEUjA6IDAwMDAwMDAwMDAwMDAwMDAgRFIxOiAw MDAwMDAwMDAwMDAwMDAwIERSMjogMDAwMDAwMDAwMDAwMDAwMAo+IMKgRFIzOiAwMDAwMDAwMDAw MDAwMDAwIERSNjogMDAwMDAwMDBmZmZlMGZmMCBEUjc6IDAwMDAwMDAwMDAwMDA0MDAKPiDCoFN0 YWNrOgo+IMKgIDA0MjA4MDYwMWIzMzg2OWYgZmZmZjg4MDBhYWU5NDAwMCAwMDAwMDAwMGZmZmMy Njc4IGZmZmY4ODAxMDAwMDAwMGEKPiDCoCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMGEw MzAgMDAwMDAwMDAwMDAwNTMwMiBmZmZmODgwMGFhNGQwMDgwCj4gwqAgMDAwMDAwMDAwMDAwMDIw NiBmZmZmODgwMTRmNDAzZjkwIGZmZmZmZmZmODEwNGE3MTYgZmZmZjg4MDE0ZjQwM2ZhOAo+IMKg Q2FsbCBUcmFjZToKPiDCoCA8SVJRPgo+IMKgIFs8ZmZmZmZmZmY4MTA0YTcxNj5dIGlycV9leGl0 KzB4ODYvMHg5MAo+IMKgIFs8ZmZmZmZmZmY4MTAzMWU3ZD5dIHNtcF9hcGljX3RpbWVyX2ludGVy cnVwdCsweDNkLzB4NTAKPiDCoCBbPGZmZmZmZmZmODE0ZjNlYWM+XSBhcGljX3RpbWVyX2ludGVy cnVwdCsweDdjLzB4OTAKPiDCoCA8RU9JPgo+IMKgIFs8ZmZmZmZmZmZhMDFjNWI0MD5dID8gZ2Vu OF93cml0ZTY0KzB4MWEwLzB4MWEwIFtpOTE1XQo+IMKgIFs8ZmZmZmZmZmY4MTRmMmIzOT5dID8g X3Jhd19zcGluX3VubG9ja19pcnFyZXN0b3JlKzB4OS8weDIwCj4gwqAgWzxmZmZmZmZmZmEwMWM1 YzQ0Pl0gZ2VuOF93cml0ZTMyKzB4MTA0LzB4MWEwIFtpOTE1XQo+IMKgIFs8ZmZmZmZmZmY4MTMy YzZhMj5dID8gbl90dHlfcmVjZWl2ZV9idWZfY29tbW9uKzB4MzcyLzB4YWUwCj4gwqAgWzxmZmZm ZmZmZmEwMTdjYzllPl0gZ2VuNl9zZXRfcnBzX3RocmVzaG9sZHMrMHgxYmUvMHgzMzAgW2k5MTVd Cj4gwqAgWzxmZmZmZmZmZmEwMTdlYWYwPl0gZ2VuNl9zZXRfcnBzKzB4NzAvMHgyMDAgW2k5MTVd Cj4gwqAgWzxmZmZmZmZmZmEwMTg1Mzc1Pl0gaW50ZWxfc2V0X3JwcysweDI1LzB4MzAgW2k5MTVd Cj4gwqAgWzxmZmZmZmZmZmEwMTc2OGZkPl0gZ2VuNl9wbV9ycHNfd29yaysweDEwZC8weDJlMCBb aTkxNV0KPiDCoCBbPGZmZmZmZmZmODEwNjM4NTI+XSA/IGZpbmlzaF90YXNrX3N3aXRjaCsweDcy LzB4MWMwCj4gwqAgWzxmZmZmZmZmZjgxMDVhYjI5Pl0gcHJvY2Vzc19vbmVfd29yaysweDEzOS8w eDM1MAo+IMKgIFs8ZmZmZmZmZmY4MTA1YjE4Nj5dIHdvcmtlcl90aHJlYWQrMHgxMjYvMHg0OTAK PiDCoCBbPGZmZmZmZmZmODEwNWIwNjA+XSA/IHJlc2N1ZXJfdGhyZWFkKzB4MzIwLzB4MzIwCj4g wqAgWzxmZmZmZmZmZjgxMDVmYTY0Pl0ga3RocmVhZCsweGM0LzB4ZTAKPiDCoCBbPGZmZmZmZmZm ODEwNWY5YTA+XSA/IGt0aHJlYWRfY3JlYXRlX29uX25vZGUrMHgxNzAvMHgxNzAKPiDCoCBbPGZm ZmZmZmZmODE0ZjM1MWY+XSByZXRfZnJvbV9mb3JrKzB4M2YvMHg3MAo+IMKgIFs8ZmZmZmZmZmY4 MTA1ZjlhMD5dID8ga3RocmVhZF9jcmVhdGVfb25fbm9kZSsweDE3MC8weDE3MAo+IAo+IEkgY291 bGQgbm90IGV4cGxhaW4sIG9yIGZpbmQgYSBjb2RlIHBhdGgsIHdoaWNoIHdvdWxkIGV4cGxhaW4K PiBhICsyMCBzZWNvbmQgbG9ja3VwLCBidXQgZnJvbSBzb21lIGluc3RydW1lbnRhdGlvbiBpdCB3 YXMKPiBhcHBhcmVudCB0aGUgaW50ZXJydXB0cyBvZmYgcHJvcG9ydGlvbiBvZiB0aW1lIHdhcyBi ZXR3ZWVuCj4gMTAtMjUlIHVuZGVyIGhlYXZ5IGxvYWQgd2hpY2ggaXMgcXVpdGUgYmFkLgo+IAo+ IEJ5IG1vdmluZyB0aGUgR1QgaW50ZXJydXB0IGhhbmRsaW5nIHRvIGEgdGFza2xldCBpbiBhIG1v c3QKPiBzaW1wbGUgd2F5LCB0aGUgcHJvYmxlbSBhYm92ZSBkaXNhcHBlYXJzIGNvbXBsZXRlbHku Cj4gCj4gQWxzbywgZ2VtX2xhdGVuY3kgLW4gMTAwIHNob3dzIDI1JSBiZXR0ZXIgdGhyb3VnaHB1 dCBhbmQgQ1BVCj4gdXNhZ2UsIGFuZCAxNCUgYmV0dGVyIGxhdGVuY2llcy4KPiAKPiBJIGRpZCBu b3QgZmluZCBhbnkgZ2FpbnMgb3IgcmVncmVzc2lvbnMgd2l0aCBTeW5tYXJrMiBvcgo+IEdMYmVu Y2ggdW5kZXIgbGlnaHQgdGVzdGluZy4gTW9yZSBiZW5jaG1hcmtpbmcgaXMgY2VydGFpbmx5Cj4g cmVxdWlyZWQuCj4gCj4gdjI6Cj4gwqDCoMKgKiBleGVjbGlzdHNfbG9jayBzaG91bGQgYmUgdGFr ZW4gYXMgc3Bpbl9sb2NrX2JoIHdoZW4KPiDCoMKgwqDCoMKgcXVldWluZyB3b3JrIGZyb20gdXNl cnNwYWNlIG5vdy4gKENocmlzIFdpbHNvbikKPiDCoMKgwqAqIHVuY29yZS5sb2NrIG11c3QgYmUg dGFrZW4gd2l0aCBzcGluX2xvY2tfaXJxIHdoZW4KPiDCoMKgwqDCoMKgc3VibWl0dGluZyByZXF1 ZXN0cyBzaW5jZSB0aGF0IG5vdyBydW5zIGZyb20gZWl0aGVyCj4gwqDCoMKgwqDCoHNvZnRpcnEg b3IgcHJvY2VzcyBjb250ZXh0Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0 dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4gQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMt d2lsc29uLmNvLnVrPgoKWW91IGFsc28gaGF2ZSB0byBzeW5jaHJvbml6ZSBhZ2FpbnN0IHRoZSB0 YXNrbGV0IG5vdyB3aGVuZXZlciB3ZQpzeW5jaHJvbml6ZSBhZ2FpbnN0IHRoZSBJUlEsIHNlZSBn ZW42X2Rpc2FibGVfcnBzX2ludGVycnVwdHMoKSwKZ2VuOF9pcnFfcG93ZXJfd2VsbF9wcmVfZGlz YWJsZSgpIGFuZAppbnRlbF9ydW50aW1lX3BtX2Rpc2FibGVfaW50ZXJydXB0cygpLiBOb3Qgc2F5 aW5nIHlvdSBzaG91bGQgdXNlIGEKdGhyZWFkZWQgSVJRIGluc3RlYWQsIGJ1dCBpdCBkb2VzIHBy b3ZpZGUgZm9yIHRoaXMgYXV0b21hdGljYWxseS4KCi0tSW1yZQoKPiAtLS0KPiDCoGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfaXJxLmPCoMKgwqDCoMKgwqDCoMKgwqB8wqDCoDIgKy0KPiDCoGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jwqDCoMKgwqDCoMKgwqDCoHwgMjQgKysrKysr KysrKysrKystLS0tLS0tLS0KPiAtCj4gwqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMu aMKgwqDCoMKgwqDCoMKgwqB8wqDCoDEgLQo+IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cmluZ2J1ZmZlci5oIHzCoMKgMSArCj4gwqA0IGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMo KyksIDEyIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2lycS5jCj4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jCj4gaW5kZXgg OGYzZTMzMDljM2FiLi5lNjgxMzQzNDcwMDcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9pcnEuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMK PiBAQCAtMTMyNCw3ICsxMzI0LDcgQEAgZ2VuOF9jc19pcnFfaGFuZGxlcihzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzCj4gKmVuZ2luZSwgdTMyIGlpciwgaW50IHRlc3Rfc2hpZnQpCj4gwqAJaWYgKGlp ciAmIChHVF9SRU5ERVJfVVNFUl9JTlRFUlJVUFQgPDwgdGVzdF9zaGlmdCkpCj4gwqAJCW5vdGlm eV9yaW5nKGVuZ2luZSk7Cj4gwqAJaWYgKGlpciAmIChHVF9DT05URVhUX1NXSVRDSF9JTlRFUlJV UFQgPDwgdGVzdF9zaGlmdCkpCj4gLQkJaW50ZWxfbHJjX2lycV9oYW5kbGVyKGVuZ2luZSk7Cj4g KwkJdGFza2xldF9zY2hlZHVsZSgmZW5naW5lLT5pcnFfdGFza2xldCk7Cj4gwqB9Cj4gwqAKPiDC oHN0YXRpYyBpcnFyZXR1cm5fdCBnZW44X2d0X2lycV9oYW5kbGVyKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlCj4gKmRldl9wcml2LAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9scmMuYwo+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKPiBpbmRleCA2 NzU5MmY4MzU0ZDYuLmIzYjYyYjNjZDkwZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9scmMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5j Cj4gQEAgLTQxOCwyMCArNDE4LDE4IEBAIHN0YXRpYyB2b2lkIGV4ZWNsaXN0c19zdWJtaXRfcmVx dWVzdHMoc3RydWN0Cj4gZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJxMCwKPiDCoHsKPiDCoAlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBycTAtPmk5MTU7Cj4gwqAKPiAtCS8qIEJV R19PTighaXJxc19kaXNhYmxlZCgpKTvCoMKgKi8KPiAtCj4gwqAJZXhlY2xpc3RzX3VwZGF0ZV9j b250ZXh0KHJxMCk7Cj4gwqAKPiDCoAlpZiAocnExKQo+IMKgCQlleGVjbGlzdHNfdXBkYXRlX2Nv bnRleHQocnExKTsKPiDCoAo+IC0Jc3Bpbl9sb2NrKCZkZXZfcHJpdi0+dW5jb3JlLmxvY2spOwo+ ICsJc3Bpbl9sb2NrX2lycSgmZGV2X3ByaXYtPnVuY29yZS5sb2NrKTsKPiDCoAlpbnRlbF91bmNv cmVfZm9yY2V3YWtlX2dldF9fbG9ja2VkKGRldl9wcml2LCBGT1JDRVdBS0VfQUxMKTsKPiDCoAo+ IMKgCWV4ZWNsaXN0c19lbHNwX3dyaXRlKHJxMCwgcnExKTsKPiDCoAo+IMKgCWludGVsX3VuY29y ZV9mb3JjZXdha2VfcHV0X19sb2NrZWQoZGV2X3ByaXYsIEZPUkNFV0FLRV9BTEwpOwo+IC0Jc3Bp bl91bmxvY2soJmRldl9wcml2LT51bmNvcmUubG9jayk7Cj4gKwlzcGluX3VubG9ja19pcnEoJmRl dl9wcml2LT51bmNvcmUubG9jayk7Cj4gwqB9Cj4gwqAKPiDCoHN0YXRpYyB2b2lkIGV4ZWNsaXN0 c19jb250ZXh0X3VucXVldWUoc3RydWN0IGludGVsX2VuZ2luZV9jcwo+ICplbmdpbmUpCj4gQEAg LTUzNiwxMyArNTM0LDE0IEBAIGdldF9jb250ZXh0X3N0YXR1cyhzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZQo+ICpkZXZfcHJpdiwgdTMyIGNzYl9iYXNlLAo+IMKgCj4gwqAvKioKPiDCoCAqIGludGVs X2xyY19pcnFfaGFuZGxlcigpIC0gaGFuZGxlIENvbnRleHQgU3dpdGNoIGludGVycnVwdHMKPiAt ICogQHJpbmc6IEVuZ2luZSBDb21tYW5kIFN0cmVhbWVyIHRvIGhhbmRsZS4KPiArICogQGVuZ2lu ZTogRW5naW5lIENvbW1hbmQgU3RyZWFtZXIgdG8gaGFuZGxlLgo+IMKgICoKPiDCoCAqIENoZWNr IHRoZSB1bnJlYWQgQ29udGV4dCBTdGF0dXMgQnVmZmVycyBhbmQgbWFuYWdlIHRoZSBzdWJtaXNz aW9uCj4gb2YgbmV3Cj4gwqAgKiBjb250ZXh0cyB0byB0aGUgRUxTUCBhY2NvcmRpbmdseS4KPiDC oCAqLwo+IC12b2lkIGludGVsX2xyY19pcnFfaGFuZGxlcihzdHJ1Y3QgaW50ZWxfZW5naW5lX2Nz ICplbmdpbmUpCj4gK3ZvaWQgaW50ZWxfbHJjX2lycV9oYW5kbGVyKHVuc2lnbmVkIGxvbmcgZGF0 YSkKPiDCoHsKPiArCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSA9IChzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzCj4gKilkYXRhOwo+IMKgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IGVuZ2luZS0+ZGV2LQo+ID5kZXZfcHJpdmF0ZTsKPiDCoAl1MzIgc3RhdHVzX3BvaW50 ZXI7Cj4gwqAJdW5zaWduZWQgaW50IHJlYWRfcG9pbnRlciwgd3JpdGVfcG9pbnRlcjsKPiBAQCAt NTUxLDcgKzU1MCw3IEBAIHZvaWQgaW50ZWxfbHJjX2lycV9oYW5kbGVyKHN0cnVjdCBpbnRlbF9l bmdpbmVfY3MKPiAqZW5naW5lKQo+IMKgCXVuc2lnbmVkIGludCBjc2JfcmVhZCA9IDAsIGk7Cj4g wqAJdW5zaWduZWQgaW50IHN1Ym1pdF9jb250ZXh0cyA9IDA7Cj4gwqAKPiAtCXNwaW5fbG9jaygm ZGV2X3ByaXYtPnVuY29yZS5sb2NrKTsKPiArCXNwaW5fbG9ja19pcnEoJmRldl9wcml2LT51bmNv cmUubG9jayk7Cj4gwqAJaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9nZXRfX2xvY2tlZChkZXZfcHJp diwgRk9SQ0VXQUtFX0FMTCk7Cj4gwqAKPiDCoAlzdGF0dXNfcG9pbnRlciA9Cj4gSTkxNV9SRUFE X0ZXKFJJTkdfQ09OVEVYVF9TVEFUVVNfUFRSKGVuZ2luZSkpOwo+IEBAIC01NzksNyArNTc4LDcg QEAgdm9pZCBpbnRlbF9scmNfaXJxX2hhbmRsZXIoc3RydWN0IGludGVsX2VuZ2luZV9jcwo+ICpl bmdpbmUpCj4gwqAJCQkJwqDCoMKgwqBlbmdpbmUtCj4gPm5leHRfY29udGV4dF9zdGF0dXNfYnVm ZmVyIDw8IDgpKTsKPiDCoAo+IMKgCWludGVsX3VuY29yZV9mb3JjZXdha2VfcHV0X19sb2NrZWQo ZGV2X3ByaXYsIEZPUkNFV0FLRV9BTEwpOwo+IC0Jc3Bpbl91bmxvY2soJmRldl9wcml2LT51bmNv cmUubG9jayk7Cj4gKwlzcGluX3VubG9ja19pcnEoJmRldl9wcml2LT51bmNvcmUubG9jayk7Cj4g wqAKPiDCoAlzcGluX2xvY2soJmVuZ2luZS0+ZXhlY2xpc3RfbG9jayk7Cj4gwqAKPiBAQCAtNjIx LDcgKzYyMCw3IEBAIHN0YXRpYyB2b2lkIGV4ZWNsaXN0c19jb250ZXh0X3F1ZXVlKHN0cnVjdAo+ IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0KQo+IMKgCj4gwqAJaTkxNV9nZW1fcmVxdWVz dF9yZWZlcmVuY2UocmVxdWVzdCk7Cj4gwqAKPiAtCXNwaW5fbG9ja19pcnEoJmVuZ2luZS0+ZXhl Y2xpc3RfbG9jayk7Cj4gKwlzcGluX2xvY2tfYmgoJmVuZ2luZS0+ZXhlY2xpc3RfbG9jayk7Cj4g wqAKPiDCoAlsaXN0X2Zvcl9lYWNoX2VudHJ5KGN1cnNvciwgJmVuZ2luZS0+ZXhlY2xpc3RfcXVl dWUsCj4gZXhlY2xpc3RfbGluaykKPiDCoAkJaWYgKCsrbnVtX2VsZW1lbnRzID4gMikKPiBAQCAt NjQ2LDcgKzY0NSw3IEBAIHN0YXRpYyB2b2lkIGV4ZWNsaXN0c19jb250ZXh0X3F1ZXVlKHN0cnVj dAo+IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0KQo+IMKgCWlmIChudW1fZWxlbWVudHMg PT0gMCkKPiDCoAkJZXhlY2xpc3RzX2NvbnRleHRfdW5xdWV1ZShlbmdpbmUpOwo+IMKgCj4gLQlz cGluX3VubG9ja19pcnEoJmVuZ2luZS0+ZXhlY2xpc3RfbG9jayk7Cj4gKwlzcGluX3VubG9ja19i aCgmZW5naW5lLT5leGVjbGlzdF9sb2NrKTsKPiDCoH0KPiDCoAo+IMKgc3RhdGljIGludCBsb2dp Y2FsX3JpbmdfaW52YWxpZGF0ZV9hbGxfY2FjaGVzKHN0cnVjdAo+IGRybV9pOTE1X2dlbV9yZXF1 ZXN0ICpyZXEpCj4gQEAgLTIwMTYsNiArMjAxNSw4IEBAIHZvaWQgaW50ZWxfbG9naWNhbF9yaW5n X2NsZWFudXAoc3RydWN0Cj4gaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCj4gwqAJaWYgKCFpbnRl bF9lbmdpbmVfaW5pdGlhbGl6ZWQoZW5naW5lKSkKPiDCoAkJcmV0dXJuOwo+IMKgCj4gKwl0YXNr bGV0X2tpbGwoJmVuZ2luZS0+aXJxX3Rhc2tsZXQpOwo+ICsKPiDCoAlkZXZfcHJpdiA9IGVuZ2lu ZS0+ZGV2LT5kZXZfcHJpdmF0ZTsKPiDCoAo+IMKgCWlmIChlbmdpbmUtPmJ1ZmZlcikgewo+IEBA IC0yMDg5LDYgKzIwOTAsOSBAQCBsb2dpY2FsX3JpbmdfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LAo+IHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKPiDCoAlJTklUX0xJU1RfSEVB RCgmZW5naW5lLT5leGVjbGlzdF9yZXRpcmVkX3JlcV9saXN0KTsKPiDCoAlzcGluX2xvY2tfaW5p dCgmZW5naW5lLT5leGVjbGlzdF9sb2NrKTsKPiDCoAo+ICsJdGFza2xldF9pbml0KCZlbmdpbmUt PmlycV90YXNrbGV0LCBpbnRlbF9scmNfaXJxX2hhbmRsZXIsCj4gKwkJwqDCoMKgwqDCoCh1bnNp Z25lZCBsb25nKWVuZ2luZSk7Cj4gKwo+IMKgCWxvZ2ljYWxfcmluZ19pbml0X3BsYXRmb3JtX2lu dmFyaWFudHMoZW5naW5lKTsKPiDCoAo+IMKgCXJldCA9IGk5MTVfY21kX3BhcnNlcl9pbml0X3Jp bmcoZW5naW5lKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJj LmgKPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oCj4gaW5kZXggNjY5MGQ5M2Q2 MDNmLi5lZmNiZDdiZjljYzkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfbHJjLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaAo+IEBAIC0x MjMsNyArMTIzLDYgQEAgaW50IGludGVsX2V4ZWNsaXN0c19zdWJtaXNzaW9uKHN0cnVjdAo+IGk5 MTVfZXhlY2J1ZmZlcl9wYXJhbXMgKnBhcmFtcywKPiDCoAkJCcKgwqDCoMKgwqDCoMKgc3RydWN0 IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMgo+ICphcmdzLAo+IMKgCQkJwqDCoMKgwqDCoMKgwqBz dHJ1Y3QgbGlzdF9oZWFkICp2bWFzKTsKPiDCoAo+IC12b2lkIGludGVsX2xyY19pcnFfaGFuZGxl cihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpOwo+IMKgdm9pZCBpbnRlbF9leGVjbGlz dHNfcmV0aXJlX3JlcXVlc3RzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MKPiAqZW5naW5lKTsKPiDC oAo+IMKgI2VuZGlmIC8qIF9JTlRFTF9MUkNfSF8gKi8KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCj4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9yaW5nYnVmZmVyLmgKPiBpbmRleCAyMjFhOTQ2MjdhYWIuLjI5ODEwY2JhOGE4YyAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKPiBAQCAtMjY2LDYgKzI2 Niw3IEBAIHN0cnVjdMKgwqBpbnRlbF9lbmdpbmVfY3Mgewo+IMKgCX0gc2VtYXBob3JlOwo+IMKg Cj4gwqAJLyogRXhlY2xpc3RzICovCj4gKwlzdHJ1Y3QgdGFza2xldF9zdHJ1Y3QgaXJxX3Rhc2ts ZXQ7Cj4gwqAJc3BpbmxvY2tfdCBleGVjbGlzdF9sb2NrOwo+IMKgCXN0cnVjdCBsaXN0X2hlYWQg ZXhlY2xpc3RfcXVldWU7Cj4gwqAJc3RydWN0IGxpc3RfaGVhZCBleGVjbGlzdF9yZXRpcmVkX3Jl cV9saXN0OwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK