From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jindal, Sonika" Subject: Re: [PATCH v2 5/9] drm/i915: Pass primary plane size to .update_primary_plane() Date: Fri, 20 Mar 2015 16:23:51 +0530 Message-ID: <550BFC3F.2000104@intel.com> References: <1425986129-15547-6-git-send-email-ville.syrjala@linux.intel.com> <1426775282-24722-1-git-send-email-ville.syrjala@linux.intel.com> <550BED41.9030902@intel.com> <20150320100456.GX17419@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 6B66E8954A for ; Fri, 20 Mar 2015 03:53:53 -0700 (PDT) In-Reply-To: <20150320100456.GX17419@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: =?windows-1252?Q?Ville_Syrj=E4l=E4?= Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org CgpPbiAzLzIwLzIwMTUgMzozNCBQTSwgVmlsbGUgU3lyasOkbMOkIHdyb3RlOgo+IE9uIEZyaSwg TWFyIDIwLCAyMDE1IGF0IDAzOjE5OjUzUE0gKzA1MzAsIEppbmRhbCwgU29uaWthIHdyb3RlOgo+ Pgo+Pgo+PiBPbiAzLzE5LzIwMTUgNzo1OCBQTSwgdmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5j b20gd3JvdGU6Cj4+PiBGcm9tOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXgu aW50ZWwuY29tPgo+Pj4KPj4+IEluIHByZXBhcmF0aW9uIHRvIG1vdmFibGUvcmVzaXplYWJsZSBw cmltYXJ5IHBsYW5lcyBwYXNzIHRoZSBjbGlwcGVkCj4+PiBwbGFuZSBzaXplIHRvIC51cGRhdGVf cHJpbWFyeV9wbGFuZSgpLgo+Pj4KPj4+IHYyOiBQYXNzIHNyYyBzaXplIHRvbyBhbmQgdXNlIGl0 IGFwcHJvcHJpYXRlbHkgKFNvbmlrYSkKPj4+Cj4+PiBDYzogU29uaWthIEppbmRhbCA8c29uaWth LmppbmRhbEBpbnRlbC5jb20+Cj4+PiBTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZp bGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+Pj4gLS0tCj4+PiAgICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oICAgICAgfCAgNCArLQo+Pj4gICAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGlzcGxheS5jIHwgODEgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0t LS0tCj4+PiAgICAyIGZpbGVzIGNoYW5nZWQsIDU3IGluc2VydGlvbnMoKyksIDI4IGRlbGV0aW9u cygtKQo+Pj4KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+Pj4gaW5kZXggZWMyMzI5MC4uMDU0 YmU0MiAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPj4+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPj4+IEBAIC01ODEsNyArNTgx LDkgQEAgc3RydWN0IGRybV9pOTE1X2Rpc3BsYXlfZnVuY3Mgewo+Pj4gICAgCQkJICB1aW50MzJf dCBmbGFncyk7Cj4+PiAgICAJdm9pZCAoKnVwZGF0ZV9wcmltYXJ5X3BsYW5lKShzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCj4+PiAgICAJCQkJICAgICBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwK Pj4+IC0JCQkJICAgICBpbnQgeCwgaW50IHkpOwo+Pj4gKwkJCQkgICAgIGludCB4LCBpbnQgeSwK Pj4+ICsJCQkJICAgICBpbnQgc3JjX3csIGludCBzcmNfaCwKPj4+ICsJCQkJICAgICBpbnQgY3J0 Y193LCBpbnQgY3J0Y19oKTsKPj4+ICAgIAl2b2lkICgqaHBkX2lycV9zZXR1cCkoc3RydWN0IGRy bV9kZXZpY2UgKmRldik7Cj4+PiAgICAJLyogY2xvY2sgdXBkYXRlcyBmb3IgbW9kZSBzZXQgKi8K Pj4+ICAgIAkvKiBjdXJzb3IgdXBkYXRlcyAqLwo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rp c3BsYXkuYwo+Pj4gaW5kZXggNTQ5OWM4ZS4uMmU5ZmRhYSAxMDA2NDQKPj4+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGlzcGxheS5jCj4+PiBAQCAtMjQ4Miw3ICsyNDgyLDkgQEAgaW50ZWxfZmlu ZF9wbGFuZV9vYmooc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMsCj4+Pgo+Pj4gICAgc3Rh dGljIHZvaWQgaTl4eF91cGRhdGVfcHJpbWFyeV9wbGFuZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMs Cj4+PiAgICAJCQkJICAgICAgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCj4+PiAtCQkJCSAg ICAgIGludCB4LCBpbnQgeSkKPj4+ICsJCQkJICAgICAgaW50IHgsIGludCB5LAo+Pj4gKwkJCQkg ICAgICBpbnQgc3JjX3csIGludCBzcmNfaCwKPj4+ICsJCQkJICAgICAgaW50IGNydGNfdywgaW50 IGNydGNfaCkKPj4+ICAgIHsKPj4+ICAgIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ ZGV2Owo+Pj4gICAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2 X3ByaXZhdGU7Cj4+PiBAQCAtMjUxNCwyMyArMjUxNiwyMiBAQCBzdGF0aWMgdm9pZCBpOXh4X3Vw ZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPj4+Cj4+PiAgICAJZHNw Y250ciB8PSBESVNQTEFZX1BMQU5FX0VOQUJMRTsKPj4+Cj4+PiArCVdBUk5fT05DRShzcmNfdyAh PSBjcnRjX3cgfHwgc3JjX2ggIT0gY3J0Y19oLAo+Pj4gKwkJICAicHJpbWFyeSBwbGFuZSBkb2Vz bid0IHN1cHBvcnQgc2NhbGluZ1xuIik7Cj4+PiArCj4+PiAgICAJaWYgKElOVEVMX0lORk8oZGV2 KS0+Z2VuIDwgNCkgewo+Pj4gICAgCQlpZiAoaW50ZWxfY3J0Yy0+cGlwZSA9PSBQSVBFX0IpCj4+ PiAgICAJCQlkc3BjbnRyIHw9IERJU1BQTEFORV9TRUxfUElQRV9COwo+Pj4gLQo+Pj4gLQkJLyog cGlwZXNyYyBhbmQgZHNwc2l6ZSBjb250cm9sIHRoZSBzaXplIHRoYXQgaXMgc2NhbGVkIGZyb20s Cj4+PiAtCQkgKiB3aGljaCBzaG91bGQgYWx3YXlzIGJlIHRoZSB1c2VyJ3MgcmVxdWVzdGVkIHNp emUuCj4+PiAtCQkgKi8KPj4+IC0JCUk5MTVfV1JJVEUoRFNQU0laRShwbGFuZSksCj4+PiAtCQkJ ICAgKChpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX2ggLSAxKSA8PCAxNikgfAo+Pj4gLQkJ CSAgIChpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX3cgLSAxKSk7Cj4+PiArCQlJOTE1X1dS SVRFKERTUFNJWkUocGxhbmUpLCAoKGNydGNfaCAtIDEpIDw8IDE2KSB8IChjcnRjX3cgLSAxKSk7 Cj4+IFNob3VsZG4ndCB0aGlzIGJlIHNyY18qIGhlcmUsIGxpa2UgeW91IGFyZSBkb2luZyBmb3Ig c2tsPyBBZ2FpbiBpdAo+PiBkb2Vzbid0IG1hdHRlciBiZWNhdXNlIG5vIHNjYWxpbmcuIEJ1dCBz dGlsbCBpdCB3aWxsIGxvb2sgYmV0dGVyIGlmIHdlCj4+IHVzZSBzYW1lIHBhcmFtcyBhY3Jvc3Mu Cj4+PiAgICAJCUk5MTVfV1JJVEUoRFNQUE9TKHBsYW5lKSwgMCk7Cj4+PiAgICAJfSBlbHNlIGlm IChJU19DSEVSUllWSUVXKGRldikgJiYgcGxhbmUgPT0gUExBTkVfQikgewo+Pj4gLQkJSTkxNV9X UklURShQUklNU0laRShwbGFuZSksCj4+PiAtCQkJICAgKChpbnRlbF9jcnRjLT5jb25maWctPnBp cGVfc3JjX2ggLSAxKSA8PCAxNikgfAo+Pj4gLQkJCSAgIChpbnRlbF9jcnRjLT5jb25maWctPnBp cGVfc3JjX3cgLSAxKSk7Cj4+PiArCQlJOTE1X1dSSVRFKFBSSU1TSVpFKHBsYW5lKSwgKChjcnRj X2ggLSAxKSA8PCAxNikgfCAoY3J0Y193IC0gMSkpOwo+PiBTYW1lIGFzIGFib3ZlLgo+Cj4gTm9w ZS4gT24gQ0hWIHRoZXJlIGlzIGEgc2NhbGVyIG9uIG9uZSBvZiB0aGUgcGxhbmVzIGFuZCB0aGVy ZSB3ZSdsbCBuZWVkCj4gdG8gd3JpdGUgdGhlIGRzdCBzaXplIGludG8gUFJJTVNJWkUsIGFuZCB0 aGUgc3JjIHNpemUgdG8gYW5vdGhlciByZWdpc3Rlci4KPiBTbyBqdXN0IHVzaW5nIHRoZSBkc3Qg c2l6ZSBmb3IgUFJJTVNJWkUgc2VlbXMgbGlrZSB0aGUgcmlnaHQgY2hvaWNlLgo+Cj4gQWxzbyB3 aXRoIElMSy1JVkIgc3ByaXRlcyB0aGUgZHN0IHNpemUgaXMgYWxzbyBpbiB0aGUgcGxhbmUgc2l6 ZSByZWdpc3RlciwKPiBhbmQgdGhlIHNvdXJjZSBzaXplIGlzIGluIHRoZSBwbGFuZSBzY2FsZSBy ZWdpc3RlciAoZWcuIERWU1NJWkUgYW5kCj4gRFZTU1NDQUxFKSwgc28gdGhpcyB3YXkgc2VlbXMg bW9yZSBjb25zaXN0ZW50IHdpdGggbW9zdCBvZiB0aGUgcGxhdGZvcm1zLgo+ClRoZW4gaXQgd291 bGQgYmUgZ29vZCB0byBoYXZlIHNvbWUgY29tbWVudCBoZXJlPwo+IEFsdGhvdWdoIGlmIHdlIHdh bnQgdG8gZXhwb3NlIHRoZSBwaXhlbC9saW5lIGRvdWJsaW5nIGFzIGZpeGVkIDJ4Cj4gc2NhbGlu ZyB3ZSBtaWdodCBuZWVkIHRvIHJldGhpbmsgdGhpcyBhZ2Fpbi4gQnV0IEknbSBnb2luZyB0byBw cmV0ZW5kCj4gdGhhdCB0aGVyZSdzIG5vIHN1Y2ggdGhpbmcgZm9yIG5vdy4KPgo+Pj4gICAgCQlJ OTE1X1dSSVRFKFBSSU1QT1MocGxhbmUpLCAwKTsKPj4+ICAgIAkJSTkxNV9XUklURShQUklNQ05T VEFMUEhBKHBsYW5lKSwgMCk7Cj4+PiArCX0gZWxzZSB7Cj4+PiArCQlXQVJOX09OQ0UoY3J0Y193 ICE9IGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfdyB8fAo+Pj4gKwkJCSAgY3J0Y19oICE9 IGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfaCwKPj4+ICsJCQkgICJwcmltYXJ5IHBsYW5l IHNpemUgZG9lc24ndCBtYXRjaCBwaXBlIHNpemVcbiIpOwo+Pj4gICAgCX0KPj4+Cj4+PiAgICAJ c3dpdGNoIChmYi0+cGl4ZWxfZm9ybWF0KSB7Cj4+PiBAQCAtMjU4NiwxNCArMjU4NywxNCBAQCBz dGF0aWMgdm9pZCBpOXh4X3VwZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywKPj4+ICAgIAlpZiAoY3J0Yy0+cHJpbWFyeS0+c3RhdGUtPnJvdGF0aW9uID09IEJJVChEUk1f Uk9UQVRFXzE4MCkpIHsKPj4+ICAgIAkJZHNwY250ciB8PSBESVNQUExBTkVfUk9UQVRFXzE4MDsK Pj4+Cj4+PiAtCQl4ICs9IChpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX3cgLSAxKTsKPj4+ IC0JCXkgKz0gKGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfaCAtIDEpOwo+Pj4gKwkJeCAr PSAoc3JjX3cgLSAxKTsKPj4+ICsJCXkgKz0gKHNyY19oIC0gMSk7Cj4+Pgo+Pj4gICAgCQkvKiBG aW5kaW5nIHRoZSBsYXN0IHBpeGVsIG9mIHRoZSBsYXN0IGxpbmUgb2YgdGhlIGRpc3BsYXkKPj4+ ICAgIAkJZGF0YSBhbmQgYWRkaW5nIHRvIGxpbmVhcl9vZmZzZXQqLwo+Pj4gICAgCQlsaW5lYXJf b2Zmc2V0ICs9Cj4+PiAtCQkJKGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfaCAtIDEpICog ZmItPnBpdGNoZXNbMF0gKwo+Pj4gLQkJCShpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX3cg LSAxKSAqIHBpeGVsX3NpemU7Cj4+PiArCQkJKHNyY19oIC0gMSkgKiBmYi0+cGl0Y2hlc1swXSAr Cj4+PiArCQkJKHNyY193IC0gMSkgKiBwaXhlbF9zaXplOwo+Pj4gICAgCX0KPj4+Cj4+PiAgICAJ STkxNV9XUklURShyZWcsIGRzcGNudHIpOwo+Pj4gQEAgLTI2MTEsNyArMjYxMiw5IEBAIHN0YXRp YyB2b2lkIGk5eHhfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ Pj4KPj4+ICAgIHN0YXRpYyB2b2lkIGlyb25sYWtlX3VwZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVj dCBkcm1fY3J0YyAqY3J0YywKPj4+ICAgIAkJCQkJICBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpm YiwKPj4+IC0JCQkJCSAgaW50IHgsIGludCB5KQo+Pj4gKwkJCQkJICBpbnQgeCwgaW50IHksCj4+ PiArCQkJCQkgIGludCBzcmNfdywgaW50IHNyY19oLAo+Pj4gKwkJCQkJICBpbnQgY3J0Y193LCBp bnQgY3J0Y19oKQo+Pj4gICAgewo+Pj4gICAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRj LT5kZXY7Cj4+PiAgICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5k ZXZfcHJpdmF0ZTsKPj4+IEBAIC0yNjQzLDYgKzI2NDYsMTMgQEAgc3RhdGljIHZvaWQgaXJvbmxh a2VfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+Pj4gICAgCWlm IChJU19IQVNXRUxMKGRldikgfHwgSVNfQlJPQURXRUxMKGRldikpCj4+PiAgICAJCWRzcGNudHIg fD0gRElTUFBMQU5FX1BJUEVfQ1NDX0VOQUJMRTsKPj4+Cj4+PiArCVdBUk5fT05DRShzcmNfdyAh PSBjcnRjX3cgfHwgc3JjX2ggIT0gY3J0Y19oLAo+Pj4gKwkJICAicHJpbWFyeSBwbGFuZSBkb2Vz bid0IHN1cHBvcnQgc2NhbGluZ1xuIik7Cj4+PiArCj4+PiArCVdBUk5fT05DRShjcnRjX3cgIT0g aW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBlX3NyY193IHx8Cj4+PiArCQkgIGNydGNfaCAhPSBpbnRl bF9jcnRjLT5jb25maWctPnBpcGVfc3JjX2gsCj4+PiArCQkgICJwcmltYXJ5IHBsYW5lIHNpemUg ZG9lc24ndCBtYXRjaCBwaXBlIHNpemVcbiIpOwo+Pj4gKwo+PiBJIGZlZWwgdGhpcyBzaG91bGQg YmUgcGFydCBvZiB0aGUgY2hlY2tfcGxhbmUgZnVuY3Rpb25zIHdoZXJlIHdlIGFscmVhZHkKPj4g cGVyZm9ybSBtYW55IHNpemUgcmVsYXRlZCBjaGVja3MuCj4KPiBUaGlzIGlzIGp1c3QgYW4gYXNz ZXJ0aW9uIHRvIGNhdGNoIGFueW9uZSBwYXNzaW5nIGJvZ3VzIHZhbHVlcyBoZXJlLAo+IGFuZCBh IHJlbWluZGVyIHRvIHBlb3BsZSB0aGF0IGlmIHRoZXkgd2FudCB0byBleHRlbmQgdGhlIHByaW1h cnkgcGxhbmUKPiBjYXBhYmlsaXRpZXMgdGhlcmUncyBtb3JlIHdvcmsgdG8gYmUgZG9uZS4KPgpI bW0sIGJ1dCBzdGlsbCB0aGlzIGNhbiBiZSBwYXJ0IG9mIHRoZSBjaGVja19wbGFuZS4gTm8gcHJv YmxlbSwgeW91IGNhbGwuCj4+PiAgICAJc3dpdGNoIChmYi0+cGl4ZWxfZm9ybWF0KSB7Cj4+PiAg ICAJY2FzZSBEUk1fRk9STUFUX0M4Ogo+Pj4gICAgCQlkc3BjbnRyIHw9IERJU1BQTEFORV84QlBQ Owo+Pj4gQEAgLTI2ODYsMTQgKzI2OTYsMTQgQEAgc3RhdGljIHZvaWQgaXJvbmxha2VfdXBkYXRl X3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+Pj4gICAgCQlkc3BjbnRyIHw9 IERJU1BQTEFORV9ST1RBVEVfMTgwOwo+Pj4KPj4+ICAgIAkJaWYgKCFJU19IQVNXRUxMKGRldikg JiYgIUlTX0JST0FEV0VMTChkZXYpKSB7Cj4+PiAtCQkJeCArPSAoaW50ZWxfY3J0Yy0+Y29uZmln LT5waXBlX3NyY193IC0gMSk7Cj4+PiAtCQkJeSArPSAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBl X3NyY19oIC0gMSk7Cj4+PiArCQkJeCArPSAoc3JjX3cgLSAxKTsKPj4+ICsJCQl5ICs9IChzcmNf aCAtIDEpOwo+Pj4KPj4+ICAgIAkJCS8qIEZpbmRpbmcgdGhlIGxhc3QgcGl4ZWwgb2YgdGhlIGxh c3QgbGluZSBvZiB0aGUgZGlzcGxheQo+Pj4gICAgCQkJZGF0YSBhbmQgYWRkaW5nIHRvIGxpbmVh cl9vZmZzZXQqLwo+Pj4gICAgCQkJbGluZWFyX29mZnNldCArPQo+Pj4gLQkJCQkoaW50ZWxfY3J0 Yy0+Y29uZmlnLT5waXBlX3NyY19oIC0gMSkgKiBmYi0+cGl0Y2hlc1swXSArCj4+PiAtCQkJCShp bnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX3cgLSAxKSAqIHBpeGVsX3NpemU7Cj4+PiArCQkJ CShzcmNfaCAtIDEpICogZmItPnBpdGNoZXNbMF0gKwo+Pj4gKwkJCQkoc3JjX3cgLSAxKSAqIHBp eGVsX3NpemU7Cj4+PiAgICAJCX0KPj4+ICAgIAl9Cj4+Pgo+Pj4gQEAgLTI3NDcsNyArMjc1Nyw5 IEBAIHUzMiBpbnRlbF9mYl9zdHJpZGVfYWxpZ25tZW50KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs IHVpbnQ2NF90IGZiX21vZGlmaWVyLAo+Pj4KPj4+ICAgIHN0YXRpYyB2b2lkIHNreWxha2VfdXBk YXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+Pj4gICAgCQkJCQkgc3Ry dWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCj4+PiAtCQkJCQkgaW50IHgsIGludCB5KQo+Pj4gKwkJ CQkJIGludCB4LCBpbnQgeSwKPj4+ICsJCQkJCSBpbnQgc3JjX3csIGludCBzcmNfaCwKPj4+ICsJ CQkJCSBpbnQgY3J0Y193LCBpbnQgY3J0Y19oKQo+Pj4gICAgewo+Pj4gICAgCXN0cnVjdCBkcm1f ZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7Cj4+PiAgICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPj4+IEBAIC0yNzY3LDYgKzI3NzksOSBAQCBz dGF0aWMgdm9pZCBza3lsYWtlX3VwZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fY3J0YyAq Y3J0YywKPj4+ICAgIAkJICAgIFBMQU5FX0NUTF9QSVBFX0dBTU1BX0VOQUJMRSB8Cj4+PiAgICAJ CSAgICBQTEFORV9DVExfUElQRV9DU0NfRU5BQkxFOwo+Pj4KPj4+ICsJV0FSTl9PTkNFKHNyY193 ICE9IGNydGNfdyB8fCBzcmNfaCAhPSBjcnRjX2gsCj4+PiArCQkgICJwcmltYXJ5IHBsYW5lIGRv ZXNuJ3Qgc3VwcG9ydCBzY2FsaW5nXG4iKTsKPj4+ICsKPj4+ICAgIAlzd2l0Y2ggKGZiLT5waXhl bF9mb3JtYXQpIHsKPj4+ICAgIAljYXNlIERSTV9GT1JNQVRfUkdCNTY1Ogo+Pj4gICAgCQlwbGFu ZV9jdGwgfD0gUExBTkVfQ1RMX0ZPUk1BVF9SR0JfNTY1Owo+Pj4gQEAgLTI4MjYsOSArMjg0MSw3 IEBAIHN0YXRpYyB2b2lkIHNreWxha2VfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9j cnRjICpjcnRjLAo+Pj4KPj4+ICAgIAlJOTE1X1dSSVRFKFBMQU5FX1BPUyhwaXBlLCAwKSwgMCk7 Cj4+PiAgICAJSTkxNV9XUklURShQTEFORV9PRkZTRVQocGlwZSwgMCksICh5IDw8IDE2KSB8IHgp Owo+Pj4gLQlJOTE1X1dSSVRFKFBMQU5FX1NJWkUocGlwZSwgMCksCj4+PiAtCQkgICAoaW50ZWxf Y3J0Yy0+Y29uZmlnLT5waXBlX3NyY19oIC0gMSkgPDwgMTYgfAo+Pj4gLQkJICAgKGludGVsX2Ny dGMtPmNvbmZpZy0+cGlwZV9zcmNfdyAtIDEpKTsKPj4+ICsJSTkxNV9XUklURShQTEFORV9TSVpF KHBpcGUsIDApLCAoKHNyY19oIC0gMSkgPDwgMTYpIHwgKHNyY193IC0gMSkpOwo+Pj4gICAgCUk5 MTVfV1JJVEUoUExBTkVfU1RSSURFKHBpcGUsIDApLCBmYi0+cGl0Y2hlc1swXSAvIHN0cmlkZV9k aXYpOwo+Pj4gICAgCUk5MTVfV1JJVEUoUExBTkVfU1VSRihwaXBlLCAwKSwgaTkxNV9nZW1fb2Jq X2dndHRfb2Zmc2V0KG9iaikpOwo+Pj4KPj4+IEBAIC0yODQ1LDEyICsyODU4LDE4IEBAIGludGVs X3BpcGVfc2V0X2Jhc2VfYXRvbWljKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yywgc3RydWN0IGRybV9m cmFtZWJ1ZmZlciAqZmIsCj4+PiAgICB7Cj4+PiAgICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9 IGNydGMtPmRldjsKPj4+ICAgIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBk ZXYtPmRldl9wcml2YXRlOwo+Pj4gKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRv X2ludGVsX2NydGMoY3J0Yyk7Cj4+Pgo+Pj4gICAgCWlmIChkZXZfcHJpdi0+ZGlzcGxheS5kaXNh YmxlX2ZiYykKPj4+ICAgIAkJZGV2X3ByaXYtPmRpc3BsYXkuZGlzYWJsZV9mYmMoZGV2KTsKPj4+ Cj4+PiArCS8qIEZJWE1FOiB0aGlzIHdpbGwgZ28gYmFkbHkgaWYgdGhlIGZiIGlzbid0IGJpZyBl bm91Z2ggKi8KPj4+ICAgIAl0b19pbnRlbF9jcnRjKGNydGMpLT5wcmltYXJ5X2VuYWJsZWQgPSB0 cnVlOwo+Pj4gLQlkZXZfcHJpdi0+ZGlzcGxheS51cGRhdGVfcHJpbWFyeV9wbGFuZShjcnRjLCBm YiwgeCwgeSk7Cj4+PiArCWRldl9wcml2LT5kaXNwbGF5LnVwZGF0ZV9wcmltYXJ5X3BsYW5lKGNy dGMsIGZiLCB4LCB5LAo+Pj4gKwkJCQkJICAgICAgIGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9z cmNfdywKPj4+ICsJCQkJCSAgICAgICBpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX2gsCj4+ PiArCQkJCQkgICAgICAgaW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBlX3NyY193LAo+Pj4gKwkJCQkJ ICAgICAgIGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfaCk7Cj4+Pgo+Pj4gICAgCXJldHVy biAwOwo+Pj4gICAgfQo+Pj4gQEAgLTI4ODUsNyArMjkwNCwxMSBAQCBzdGF0aWMgdm9pZCBpbnRl bF91cGRhdGVfcHJpbWFyeV9wbGFuZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPj4+ICAgIAkJ CWRldl9wcml2LT5kaXNwbGF5LnVwZGF0ZV9wcmltYXJ5X3BsYW5lKGNydGMsCj4+PiAgICAJCQkJ CQkJICAgICAgIHN0YXRlLT5iYXNlLmZiLAo+Pj4gICAgCQkJCQkJCSAgICAgICBzdGF0ZS0+c3Jj LngxID4+IDE2LAo+Pj4gLQkJCQkJCQkgICAgICAgc3RhdGUtPnNyYy55MSA+PiAxNik7Cj4+PiAr CQkJCQkJCSAgICAgICBzdGF0ZS0+c3JjLnkxID4+IDE2LAo+Pj4gKwkJCQkJCQkgICAgICAgZHJt X3JlY3Rfd2lkdGgoJnN0YXRlLT5zcmMpID4+IDE2LAo+Pj4gKwkJCQkJCQkgICAgICAgZHJtX3Jl Y3RfaGVpZ2h0KCZzdGF0ZS0+c3JjKSA+PiAxNiwKPj4+ICsJCQkJCQkJICAgICAgIGRybV9yZWN0 X3dpZHRoKCZzdGF0ZS0+ZHN0KSwKPj4+ICsJCQkJCQkJICAgICAgIGRybV9yZWN0X2hlaWdodCgm c3RhdGUtPmRzdCkpOwo+PiBUaGUgb3JkZXIgaW4gaW50ZWxfc3ByaXRlLmMgaXMgZHN0IHgsIHks IGRlc3QgdywgaCwgdGhlbiBzcmMgeCwgeSwgc3JjCj4+IHcsIGguIEJ1dCB3ZSBjYW4gc29ydCBp dCBsYXRlciB3aGVuIHdlIGFyZSBhY3R1YWxseSBtZXJnaW5nIGJvdGggdGhlCj4+IHVwZGF0ZSBm dW5jdGlvbnMgZm9yIHByaW1hcnkgYW5kIHNwcml0ZXMuCj4KPiBPaC4gRmFpbGVkIHRvIG5vdGlj ZSB0aGF0LiBCdXQgeWVhaCBlYXN5IGVub3VnaCB0byBmaXggd2hlbiB3ZSB1bmlmeS4KPgo+Pgo+ PiBBbHNvLCBJIHRoaW5rIGl0IHdpbGwgYmUgYmV0dGVyIHRvIHBhc3MgY3J0Y194LCBjcnRjX3kg YWxzbyB0byBiZSB1c2VkCj4+IHRvIHNldCBwbGFuZSBwb3NpdGlvbi4KPgo+IFRoYXQncyBpbiB0 aGUgbmV4dCBwYXRjaC4KPgpPb3BzLCB5ZXMgOikKPj4KPj4gLVNvbmlrYQo+Pj4gICAgCQl9Cj4+ Pgo+Pj4gICAgCQlkcm1fbW9kZXNldF91bmxvY2soJmNydGMtPm11dGV4KTsKPj4+IEBAIC0xMjA3 MCw3ICsxMjA5MywxMSBAQCBpbnRlbF9jb21taXRfcHJpbWFyeV9wbGFuZShzdHJ1Y3QgZHJtX3Bs YW5lICpwbGFuZSwKPj4+ICAgIAkJZGV2X3ByaXYtPmRpc3BsYXkudXBkYXRlX3ByaW1hcnlfcGxh bmUoY3J0YywKPj4+ICAgIAkJCQkJCSAgICAgICBzdGF0ZS0+YmFzZS5mYiwKPj4+ICAgIAkJCQkJ CSAgICAgICBzdGF0ZS0+c3JjLngxID4+IDE2LAo+Pj4gLQkJCQkJCSAgICAgICBzdGF0ZS0+c3Jj LnkxID4+IDE2KTsKPj4+ICsJCQkJCQkgICAgICAgc3RhdGUtPnNyYy55MSA+PiAxNiwKPj4+ICsJ CQkJCQkgICAgICAgZHJtX3JlY3Rfd2lkdGgoJnN0YXRlLT5zcmMpID4+IDE2LAo+Pj4gKwkJCQkJ CSAgICAgICBkcm1fcmVjdF9oZWlnaHQoJnN0YXRlLT5zcmMpID4+IDE2LAo+Pj4gKwkJCQkJCSAg ICAgICBkcm1fcmVjdF93aWR0aCgmc3RhdGUtPmRzdCksCj4+PiArCQkJCQkJICAgICAgIGRybV9y ZWN0X2hlaWdodCgmc3RhdGUtPmRzdCkpOwo+Pj4gICAgCX0KPj4+ICAgIH0KPj4+Cj4+Pgo+Cl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==