From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 13/14] drm/i915: skylake primary plane scaling using shared scalers Date: Mon, 13 Apr 2015 20:12:45 +0200 Message-ID: <20150413181245.GC6092@phenom.ffwll.local> References: <1428445727-18103-1-git-send-email-chandra.konduru@intel.com> <1428445727-18103-14-git-send-email-chandra.konduru@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wi0-f178.google.com (mail-wi0-f178.google.com [209.85.212.178]) by gabe.freedesktop.org (Postfix) with ESMTP id A62926E5DC for ; Mon, 13 Apr 2015 11:10:46 -0700 (PDT) Received: by widjs5 with SMTP id js5so70774088wid.1 for ; Mon, 13 Apr 2015 11:10:46 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1428445727-18103-14-git-send-email-chandra.konduru@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chandra Konduru Cc: ander.conselvan.de.oliveira@intel.com, intel-gfx@lists.freedesktop.org, daniel.vetter@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBBcHIgMDcsIDIwMTUgYXQgMDM6Mjg6NDZQTSAtMDcwMCwgQ2hhbmRyYSBLb25kdXJ1 IHdyb3RlOgo+IFRoaXMgcGF0Y2ggZW5hYmxlcyBza3lsYWtlIHByaW1hcnkgcGxhbmUgc2NhbGlu ZyB1c2luZyBzaGFyZWQKPiBzY2FsZXJzIGF0b21pYyBkZXNnaW4uCj4gCj4gdjI6Cj4gLXVzZSBz aW5nbGUgY29weSBvZiBzY2FsZXIgbGltaXRzIChNYXR0KQo+IAo+IHYzOgo+IC1tb3ZlIGRldGFj aF9zY2FsZXJzIHRvIGNydGMgY29tbWl0IHBhdGggKE1hdHQpCj4gLXVzZSB2YWx1ZXMgaW4gcGxh bmVfc3RhdGUtPnNyYyBhcyByZWd1bGFyIGludGVnZXJzIChtZSkKPiAKPiB2NDoKPiAtY2hhbmdl cyB0byBhbGlnbiB3aXRoIHVwZGF0ZWQgc2NhbGVyIHN0cnVjdHVyZXMgKE1hdHQsIG1lKQo+IC1r ZWVwIHBsYW5lIHNyYyByZWN0IGluIDE2LjE2IGZvcm1hdCAoTWF0dCwgRGFuaWVsKQo+IAo+IFNp Z25lZC1vZmYtYnk6IENoYW5kcmEgS29uZHVydSA8Y2hhbmRyYS5rb25kdXJ1QGludGVsLmNvbT4K Ck9rIHRoZXJlJ3MgYSByZWFsIGZ1bmN0aW9uYWwgY29uZmxpY3QgaGVyZSBub3cgd2l0aCA5MC8y NzAgcm90YXRpb24uIEl0J3MKYmlnIGVub3VnaCB0aGF0IGltbyB3ZSBhbHNvIG5lZWQgdG8gYWRk IGlndCBjb3ZlcmFnZSB0byB0ZXN0CnJvdGF0aW9uK3NjYWxpbmcgdG9nZXRoZXIgKHRoZSBzY2Fs ZWQgcGxhbmUgc2V0dXAgaXMgZGlmZmVyZW50IGZyb20gdGhlCm5vcm1hbCBvbmUsIGFuZCB3ZSBu ZWVkIHRvIGFsc28gbWFrZSBzdXJlIHdlIHNjYWxlIGNvcnJlY3RseSBpdHNlbGYgd2hlbgpyb3Rh dGVkKS4KCkNoYW5kcmEgY2FuIHlvdSBwbGVhc2UgZmlndXJlIG91dCB3aXRoIFNvbmlrYSB3aG8g Y2FuIGRvIHRoaXMgcmViYXNpbmcvaWd0CmV4dGVuc2lvbj8KClRoYW5rcywgRGFuaWVsCgo+IC0t LQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdG9taWMuYyAgfCAgICA1ICstCj4gIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8ICAgOTYgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKystLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAg ICAgfCAgICAxICsKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMgIHwgICAg OSArKysrCj4gIDQgZmlsZXMgY2hhbmdlZCwgMTA1IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25z KC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMKPiBpbmRleCAyZmMwNGVjLi44 Zjc1OWM2IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMKPiBAQCAtMTY3LDcg KzE2Nyw3IEBAIGludCBpbnRlbF9hdG9taWNfY29tbWl0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs Cj4gIAkJcGxhbmUtPnN0YXRlLT5zdGF0ZSA9IE5VTEw7Cj4gIAl9Cj4gIAo+IC0JLyogc3dhcCBj cnRjX3N0YXRlICovCj4gKwkvKiBzd2FwIGNydGNfc2NhbGVyX3N0YXRlICovCj4gIAlmb3IgKGkg PSAwOyBpIDwgZGV2LT5tb2RlX2NvbmZpZy5udW1fY3J0YzsgaSsrKSB7Cj4gIAkJc3RydWN0IGRy bV9jcnRjICpjcnRjID0gc3RhdGUtPmNydGNzW2ldOwo+ICAJCWlmICghY3J0Yykgewo+IEBAIC0x NzYsNiArMTc2LDkgQEAgaW50IGludGVsX2F0b21pY19jb21taXQoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwKPiAgCj4gIAkJdG9faW50ZWxfY3J0YyhjcnRjKS0+Y29uZmlnLT5zY2FsZXJfc3RhdGUg PQo+ICAJCQl0b19pbnRlbF9jcnRjX3N0YXRlKHN0YXRlLT5jcnRjX3N0YXRlc1tpXSktPnNjYWxl cl9zdGF0ZTsKPiArCj4gKwkJaWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuID49IDkpCj4gKwkJCXNr bF9kZXRhY2hfc2NhbGVycyh0b19pbnRlbF9jcnRjKGNydGMpKTsKPiAgCX0KPiAgCj4gIAlkcm1f YXRvbWljX2hlbHBlcl9jb21taXRfcGxhbmVzKGRldiwgc3RhdGUpOwo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCBhYTRkYTFmLi5jN2VlMjMyIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC0yOTc4LDYgKzI5NzgsMTQgQEAgc3RhdGlj IHZvaWQgc2t5bGFrZV91cGRhdGVfcHJpbWFyeV9wbGFuZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMs Cj4gIAlpbnQgcGlwZSA9IGludGVsX2NydGMtPnBpcGU7Cj4gIAl1MzIgcGxhbmVfY3RsLCBzdHJp ZGVfZGl2Owo+ICAJdW5zaWduZWQgbG9uZyBzdXJmX2FkZHI7Cj4gKwlzdHJ1Y3QgaW50ZWxfY3J0 Y19zdGF0ZSAqY3J0Y19zdGF0ZSA9IGludGVsX2NydGMtPmNvbmZpZzsKPiArCXN0cnVjdCBpbnRl bF9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGU7Cj4gKwlpbnQgc3JjX3ggPSAwLCBzcmNfeSA9IDAs IHNyY193ID0gMCwgc3JjX2ggPSAwOwo+ICsJaW50IGRzdF94ID0gMCwgZHN0X3kgPSAwLCBkc3Rf dyA9IDAsIGRzdF9oID0gMDsKPiArCWludCBzY2FsZXJfaWQgPSAtMTsKPiArCj4gKwlwbGFuZV9z dGF0ZSA9IGNydGMtPnByaW1hcnkgPwo+ICsJCXRvX2ludGVsX3BsYW5lX3N0YXRlKGNydGMtPnBy aW1hcnktPnN0YXRlKSA6IE5VTEw7Cj4gIAo+ICAJaWYgKCFpbnRlbF9jcnRjLT5wcmltYXJ5X2Vu YWJsZWQpIHsKPiAgCQlJOTE1X1dSSVRFKFBMQU5FX0NUTChwaXBlLCAwKSwgMCk7Cj4gQEAgLTMw NDYsMTIgKzMwNTQsNDAgQEAgc3RhdGljIHZvaWQgc2t5bGFrZV91cGRhdGVfcHJpbWFyeV9wbGFu ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAkJCQkJICAgICAgIGZiLT5waXhlbF9mb3JtYXQp Owo+ICAJc3VyZl9hZGRyID0gaW50ZWxfcGxhbmVfb2JqX29mZnNldCh0b19pbnRlbF9wbGFuZShj cnRjLT5wcmltYXJ5KSwgb2JqKTsKPiAgCj4gKwlpZiAocGxhbmVfc3RhdGUpIHsKPiArCQlzY2Fs ZXJfaWQgPSBwbGFuZV9zdGF0ZS0+c2NhbGVyX2lkOwo+ICsJCXNyY194ID0gcGxhbmVfc3RhdGUt PnNyYy54MSA+PiAxNjsKPiArCQlzcmNfeSA9IHBsYW5lX3N0YXRlLT5zcmMueTEgPj4gMTY7Cj4g KwkJc3JjX3cgPSBkcm1fcmVjdF93aWR0aCgmcGxhbmVfc3RhdGUtPnNyYykgPj4gMTY7Cj4gKwkJ c3JjX2ggPSBkcm1fcmVjdF9oZWlnaHQoJnBsYW5lX3N0YXRlLT5zcmMpID4+IDE2Owo+ICsJCWRz dF94ID0gcGxhbmVfc3RhdGUtPmRzdC54MTsKPiArCQlkc3RfeSA9IHBsYW5lX3N0YXRlLT5kc3Qu eTE7Cj4gKwkJZHN0X3cgPSBkcm1fcmVjdF93aWR0aCgmcGxhbmVfc3RhdGUtPmRzdCk7Cj4gKwkJ ZHN0X2ggPSBkcm1fcmVjdF9oZWlnaHQoJnBsYW5lX3N0YXRlLT5kc3QpOwo+ICsJfQo+ICsKPiAg CUk5MTVfV1JJVEUoUExBTkVfQ1RMKHBpcGUsIDApLCBwbGFuZV9jdGwpOwo+ICAJSTkxNV9XUklU RShQTEFORV9QT1MocGlwZSwgMCksIDApOwo+ICsKPiArCWlmIChzcmNfdyAmJiBzcmNfaCAmJiBk c3RfdyAmJiBkc3RfaCAmJiBzY2FsZXJfaWQgPj0gMCkgewo+ICsJCXVpbnQzMl90IHBzX2N0cmwg PSAwOwo+ICsKPiArCQlXQVJOX09OKHggIT0gc3JjX3ggfHwgeSAhPSBzcmNfeSk7Cj4gKwkJcHNf Y3RybCA9IFBTX1NDQUxFUl9FTiB8IFBTX1BMQU5FX1NFTCgwKSB8Cj4gKwkJCWNydGNfc3RhdGUt PnNjYWxlcl9zdGF0ZS5zY2FsZXJzW3NjYWxlcl9pZF0ubW9kZTsKPiArCQlJOTE1X1dSSVRFKFNL TF9QU19DVFJMKHBpcGUsIHNjYWxlcl9pZCksIHBzX2N0cmwpOwo+ICsJCUk5MTVfV1JJVEUoU0tM X1BTX1BXUl9HQVRFKHBpcGUsIHNjYWxlcl9pZCksIDApOwo+ICsJCUk5MTVfV1JJVEUoU0tMX1BT X1dJTl9QT1MocGlwZSwgc2NhbGVyX2lkKSwgKGRzdF94IDw8IDE2KSB8IGRzdF95KTsKPiArCQlJ OTE1X1dSSVRFKFNLTF9QU19XSU5fU1oocGlwZSwgc2NhbGVyX2lkKSwgKGRzdF93IDw8IDE2KSB8 IGRzdF9oKTsKPiArCj4gKwkJSTkxNV9XUklURShQTEFORV9TSVpFKHBpcGUsIDApLCAoKHNyY19o IC0gMSkgPDwgMTYpIHwgKHNyY193IC0gMSkpOwo+ICsJfSBlbHNlIHsKPiArCQlJOTE1X1dSSVRF KFBMQU5FX1NJWkUocGlwZSwgMCksCj4gKwkJCShpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3Jj X2ggLSAxKSA8PCAxNiB8Cj4gKwkJCShpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX3cgLSAx KSk7Cj4gKwl9Cj4gKwo+ICAJSTkxNV9XUklURShQTEFORV9PRkZTRVQocGlwZSwgMCksICh5IDw8 IDE2KSB8IHgpOwo+IC0JSTkxNV9XUklURShQTEFORV9TSVpFKHBpcGUsIDApLAo+IC0JCSAgIChp bnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX2ggLSAxKSA8PCAxNiB8Cj4gLQkJICAgKGludGVs X2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfdyAtIDEpKTsKPiAgCUk5MTVfV1JJVEUoUExBTkVfU1RS SURFKHBpcGUsIDApLCBmYi0+cGl0Y2hlc1swXSAvIHN0cmlkZV9kaXYpOwo+ICAJSTkxNV9XUklU RShQTEFORV9TVVJGKHBpcGUsIDApLCBzdXJmX2FkZHIpOwo+ICAKPiBAQCAtMTI3NzgsNiArMTI4 MTQsMzYgQEAgaW50ZWxfY2xlYW51cF9wbGFuZV9mYihzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwK PiAgCX0KPiAgfQo+ICAKPiAraW50Cj4gK3NrbF9tYXhfc2NhbGUoc3RydWN0IGludGVsX2NydGMg KmludGVsX2NydGMsIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICt7Cj4g KwlpbnQgbWF4X3NjYWxlOwo+ICsJc3RydWN0IGRybV9kZXZpY2UgKmRldjsKPiArCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdjsKPiArCWludCBjcnRjX2Nsb2NrLCBjZGNsazsKPiAr Cj4gKwlpZiAoIWludGVsX2NydGMgfHwgIWNydGNfc3RhdGUpCj4gKwkJcmV0dXJuIERSTV9QTEFO RV9IRUxQRVJfTk9fU0NBTElORzsKPiArCj4gKwlkZXYgPSBpbnRlbF9jcnRjLT5iYXNlLmRldjsK PiArCWRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiArCWNydGNfY2xvY2sgPSBjcnRjX3N0 YXRlLT5iYXNlLmFkanVzdGVkX21vZGUuY3J0Y19jbG9jazsKPiArCWNkY2xrID0gZGV2X3ByaXYt PmRpc3BsYXkuZ2V0X2Rpc3BsYXlfY2xvY2tfc3BlZWQoZGV2KTsKPiArCj4gKwlpZiAoIWNydGNf Y2xvY2sgfHwgIWNkY2xrKQo+ICsJCXJldHVybiBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkc7 Cj4gKwo+ICsJLyoKPiArCSAqIHNrbCBtYXggc2NhbGUgaXMgbG93ZXIgb2Y6Cj4gKwkgKiAgICBj bG9zZSB0byAzIGJ1dCBub3QgMywgLTEgaXMgZm9yIHRoYXQgcHVycG9zZQo+ICsJICogICAgICAg ICAgICBvcgo+ICsJICogICAgY2RjbGsvY3J0Y19jbG9jawo+ICsJICovCj4gKwltYXhfc2NhbGUg PSBtaW4oKDEgPDwgMTYpICogMyAtIDEsICgxIDw8IDgpICogKChjZGNsayA8PCA4KSAvIGNydGNf Y2xvY2spKTsKPiArCj4gKwlyZXR1cm4gbWF4X3NjYWxlOwo+ICt9Cj4gKwo+ICBzdGF0aWMgaW50 Cj4gIGludGVsX2NoZWNrX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4g IAkJCSAgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpzdGF0ZSkKPiBAQCAtMTI3ODYsMTkgKzEy ODUyLDI5IEBAIGludGVsX2NoZWNrX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9wbGFuZSAqcGxh bmUsCj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2 YXRlOwo+ICAJc3RydWN0IGRybV9jcnRjICpjcnRjID0gc3RhdGUtPmJhc2UuY3J0YzsKPiAgCXN0 cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjOwo+ICsJc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGU7Cj4gIAlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHN0YXRlLT5iYXNl LmZiOwo+ICAJc3RydWN0IGRybV9yZWN0ICpkZXN0ID0gJnN0YXRlLT5kc3Q7Cj4gIAlzdHJ1Y3Qg ZHJtX3JlY3QgKnNyYyA9ICZzdGF0ZS0+c3JjOwo+ICAJY29uc3Qgc3RydWN0IGRybV9yZWN0ICpj bGlwID0gJnN0YXRlLT5jbGlwOwo+ICsJaW50IG1heF9zY2FsZSA9IERSTV9QTEFORV9IRUxQRVJf Tk9fU0NBTElORzsKPiArCWludCBtaW5fc2NhbGUgPSBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJ Tkc7Cj4gIAlpbnQgcmV0Owo+ICAKPiAgCWNydGMgPSBjcnRjID8gY3J0YyA6IHBsYW5lLT5jcnRj Owo+ICAJaW50ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Yyk7Cj4gKwljcnRjX3N0YXRlID0g c3RhdGUtPmJhc2Uuc3RhdGUgPwo+ICsJCWludGVsX2F0b21pY19nZXRfY3J0Y19zdGF0ZShzdGF0 ZS0+YmFzZS5zdGF0ZSwgaW50ZWxfY3J0YykgOiBOVUxMOwo+ICsKPiArCWlmIChJTlRFTF9JTkZP KGRldiktPmdlbiA+PSA5KSB7Cj4gKwkJbWluX3NjYWxlID0gMTsKPiArCQltYXhfc2NhbGUgPSBz a2xfbWF4X3NjYWxlKGludGVsX2NydGMsIGNydGNfc3RhdGUpOwo+ICsJfQo+ICAKPiAgCXJldCA9 IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfdXBkYXRlKHBsYW5lLCBjcnRjLCBmYiwKPiAgCQkJCQkg ICAgc3JjLCBkZXN0LCBjbGlwLAo+IC0JCQkJCSAgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJ TkcsCj4gLQkJCQkJICAgIERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElORywKPiArCQkJCQkgICAg bWluX3NjYWxlLAo+ICsJCQkJCSAgICBtYXhfc2NhbGUsCj4gIAkJCQkJICAgIGZhbHNlLCB0cnVl LCAmc3RhdGUtPnZpc2libGUpOwo+ICAJaWYgKHJldCkKPiAgCQlyZXR1cm4gcmV0Owo+IEBAIC0x Mjg0Miw2ICsxMjkxOCwxMyBAQCBpbnRlbF9jaGVja19wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1f cGxhbmUgKnBsYW5lLAo+ICAJCQlpbnRlbF9jcnRjLT5hdG9taWMudXBkYXRlX3dtID0gdHJ1ZTsK PiAgCX0KPiAgCj4gKwlpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4gPj0gOSkgewo+ICsJCXJldCA9 IHNrbF91cGRhdGVfc2NhbGVyX3VzZXJzKGludGVsX2NydGMsIGNydGNfc3RhdGUsCj4gKwkJCXRv X2ludGVsX3BsYW5lKHBsYW5lKSwgc3RhdGUsIDApOwo+ICsJCWlmIChyZXQpCj4gKwkJCXJldHVy biByZXQ7Cj4gKwl9Cj4gKwo+ICAJcmV0dXJuIDA7Cj4gIH0KPiAgCj4gQEAgLTEzMDIxLDYgKzEz MTA0LDkgQEAgc3RhdGljIHN0cnVjdCBkcm1fcGxhbmUgKmludGVsX3ByaW1hcnlfcGxhbmVfY3Jl YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAo+ICAJcHJpbWFyeS0+Y2FuX3NjYWxlID0g ZmFsc2U7Cj4gIAlwcmltYXJ5LT5tYXhfZG93bnNjYWxlID0gMTsKPiArCWlmIChJTlRFTF9JTkZP KGRldiktPmdlbiA+PSA5KSB7Cj4gKwkJcHJpbWFyeS0+Y2FuX3NjYWxlID0gdHJ1ZTsKPiArCX0K PiAgCXN0YXRlLT5zY2FsZXJfaWQgPSAtMTsKPiAgCXByaW1hcnktPnBpcGUgPSBwaXBlOwo+ICAJ cHJpbWFyeS0+cGxhbmUgPSBwaXBlOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gaW5kZXgg N2IyOGJmZi4uMDU0MzE1MCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTEx MjUsNiArMTEyNSw3IEBAIHZvaWQgc2tsX2RldGFjaF9zY2FsZXJzKHN0cnVjdCBpbnRlbF9jcnRj ICppbnRlbF9jcnRjKTsKPiAgaW50IHNrbF91cGRhdGVfc2NhbGVyX3VzZXJzKHN0cnVjdCBpbnRl bF9jcnRjICppbnRlbF9jcnRjLAo+ICAJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3Rh dGUsIHN0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmUsCj4gIAlzdHJ1Y3QgaW50ZWxfcGxh bmVfc3RhdGUgKnBsYW5lX3N0YXRlLCBpbnQgZm9yY2VfZGV0YWNoKTsKPiAraW50IHNrbF9tYXhf c2NhbGUoc3RydWN0IGludGVsX2NydGMgKmNydGMsIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpj cnRjX3N0YXRlKTsKPiAgCj4gIHVuc2lnbmVkIGxvbmcgaW50ZWxfcGxhbmVfb2JqX29mZnNldChz dHJ1Y3QgaW50ZWxfcGxhbmUgKmludGVsX3BsYW5lLAo+ICAJCQkJICAgICBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfc3ByaXRlLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwo+IGlu ZGV4IGMwNWZiMzYuLjk1NTk2NWMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfc3ByaXRlLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUu Ywo+IEBAIC0xMTE5LDYgKzExMTksMTUgQEAgaW50IGludGVsX3Nwcml0ZV9zZXRfY29sb3JrZXko c3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgCX0KPiAgCj4gIAlpbnRlbF9w bGFuZSA9IHRvX2ludGVsX3BsYW5lKHBsYW5lKTsKPiArCj4gKwlpZiAoSU5URUxfSU5GTyhkZXYp LT5nZW4gPj0gOSkgewo+ICsJCS8qIHBsYW5lIHNjYWxpbmcgYW5kIGNvbG9ya2V5IGFyZSBtdXR1 YWxseSBleGNsdXNpdmUgKi8KPiArCQlpZiAodG9faW50ZWxfcGxhbmVfc3RhdGUocGxhbmUtPnN0 YXRlKS0+c2NhbGVyX2lkID49IDApIHsKPiArCQkJRFJNX0VSUk9SKCJjb2xvcmtleSBub3QgYWxs b3dlZCB3aXRoIHNjYWxlclxuIik7Cj4gKwkJCXJldHVybiAtRUlOVkFMOwo+ICsJCX0KPiArCX0K PiArCj4gIAlpbnRlbF9wbGFuZS0+Y2tleSA9ICpzZXQ7Cj4gIAo+ICAJLyoKPiAtLSAKPiAxLjcu OS41Cj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K PiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y Zwo+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1n ZngKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlv bgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=