From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: Re: [PATCH 08/21 v2] drm/i915: Add helper function to update scaler_users in crtc_state Date: Tue, 24 Mar 2015 22:15:04 -0700 Message-ID: <20150325051504.GH28667@intel.com> References: <1426896282-23215-1-git-send-email-chandra.konduru@intel.com> <1426896282-23215-9-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 mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 468436E7E5 for ; Tue, 24 Mar 2015 22:15:05 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1426896282-23215-9-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: daniel.vetter@intel.com, intel-gfx@lists.freedesktop.org, ander.conselvan.de.oliveira@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBNYXIgMjAsIDIwMTUgYXQgMDU6MDQ6MjlQTSAtMDcwMCwgQ2hhbmRyYSBLb25kdXJ1 IHdyb3RlOgo+IFRoaXMgaGVscGVyIGZ1bmN0aW9uIHN0YWdlcyBhIHNjYWxlciByZXF1ZXN0IGZv ciBhIHBsYW5lL2NydGMgaW50bwo+IGNydGNfc3RhdGUtPnNjYWxlcl91c2VycyAod2hpY2ggaXMg YSBiaXQgZmllbGQpLiBJdCBhbHNvIHBlcmZvcm1zCj4gcmVxdWlyZWQgY2hlY2tzIGJlZm9yZSBz dGFnaW5nIGFueSBjaGFuZ2UgaW50byBzY2FsZXJfc3RhdGUuCj4gCj4gdjI6Cj4gLXVwZGF0ZXMg dG8gdXNlIHNpbmdsZSBjb3B5IG9mIHNjYWxlciBsaW1pdHMgKE1hdHQpCj4gLWFkZGVkIGZvcmNl IGRldGFjaCBwYXJhbWV0ZXIgZm9yIHBmaXQgZGlzYWJsZSBwdXJwb3NlIChtZSkKPiAKPiBTaWdu ZWQtb2ZmLWJ5OiBDaGFuZHJhIEtvbmR1cnUgPGNoYW5kcmEua29uZHVydUBpbnRlbC5jb20+Cj4g LS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8ICAxNDMgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaCAgICAgfCAgICAzICsKPiAgMiBmaWxlcyBjaGFuZ2VkLCAxNDYgaW5zZXJ0aW9ucygr KQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCA4OTBkMzcyLi45 NzZiZmIxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXku Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC0xMjM4 Nyw2ICsxMjM4NywxNDkgQEAgaW50ZWxfY2xlYW51cF9wbGFuZV9mYihzdHJ1Y3QgZHJtX3BsYW5l ICpwbGFuZSwKPiAgCX0KPiAgfQo+ICAKPiArLyoKPiArICogVXBkYXRlIGNydGNfc3RhdGUtPnNj YWxlcl91c2VycyBmb3IgcmVxdWVzdGVkIHBsYW5lIG9yIGNydGMgYmFzZWQgb24gc3RhdGUuCgpJ IHJlYWxpemUgeW91J3JlIHRyeWluZyB0byByZS11c2Ugc29tZSBsb2dpYyBoZXJlLCBidXQgSSBm aW5kIHRoZQpvdmVybG9hZGVkIGZ1bmN0aW9uIHRoYXQgd29ya3Mgb24gZWl0aGVyIHBsYW5lcyBv ciBjcnRjcyBhIGJpdCBoYXJkZXIgdG8KZm9sbG93LiAgUGVyc29uYWxseSBJJ2QgcHJlZmVyIGlm IHRoaXMgd2VyZSBqdXN0IHR3byBzZXBhcmF0ZSBmdW5jdGlvbnMsCm9uZSBmb2N1c2VkIG9uIHBs YW5lcywgb25lIGZvY3VzZWQgb24gQ1JUQydzLCBldmVuIGlmIGl0IG1lYW5zCmR1cGxpY2F0aW5n IGEgbGl0dGxlIGJpdCBvZiB0aGUgbG9naWMuCgo+ICsgKgo+ICsgKiBwbGFuZSAoaW4pCj4gKyAq ICAgICBOVUxMIC0gZm9yIGNydGMKPiArICogICAgIG5vdCBOVUxMIC0gZm9yIHBsYW5lCj4gKyAq IGZvcmNlX2RldGFjaCAoaW4pCj4gKyAqICAgICB1bmNvbmRpdGlvbmFsbHkgc2NhbGVyIHdpbGwg YmUgc3RhZ2VkIGZvciBkZXRhY2htZW50IGZyb20gY3J0Yy9wbGFuZQo+ICsgKiBSZXR1cm4KPiAr ICogICAgIDAgLSBzY2FsZXJfdXNhZ2UgdXBkYXRlZCBzdWNjZXNzZnVsbHkKPiArICogICAgZXJy b3IgLSByZXF1ZXN0ZWQgc2NhbGluZyBjYW5ub3QgYmUgc3VwcG9ydGVkIG9yIG90aGVyIGVycm9y IGNvbmRpdGlvbgo+ICsgKi8KClByb2JhYmx5IHdhbnQgdG8gcHV0IHRoaXMgaW4ga2VybmVsZG9j IGZvcm1hdC4KCj4gK2ludAo+ICtza2xfdXBkYXRlX3NjYWxlcl91c2VycygKPiArCXN0cnVjdCBp bnRlbF9jcnRjICppbnRlbF9jcnRjLCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0 ZSwKPiArCXN0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmUsIHN0cnVjdCBpbnRlbF9wbGFu ZV9zdGF0ZSAqcGxhbmVfc3RhdGUsCgpNaWdodCBiZSBhIGxpdHRsZSBlYXNpZXIgdG8gZHJvcCB0 aGUgaW50ZWxfY3J0YyBhbmQgaW50ZWxfcGxhbmUKcGFyYW1ldGVycyBhbmQganVzdCBwdWxsIHRo ZW0gb3V0IG9mIHRoZSBzdGF0ZSBiYWNrcG9pbnRlcnMuCgo+ICsJaW50IGZvcmNlX2RldGFjaCkK PiArewo+ICsJaW50IG5lZWRfc2NhbGluZzsKPiArCWludCBpZHg7Cj4gKwlpbnQgc3JjX3csIHNy Y19oLCBkc3RfdywgZHN0X2g7Cj4gKwlpbnQgc2NhbGVyX2lkOwo+ICsJc3RydWN0IGRybV9mcmFt ZWJ1ZmZlciAqZmI7Cj4gKwlzdHJ1Y3QgaW50ZWxfY3J0Y19zY2FsZXJfc3RhdGUgKnNjYWxlcl9z dGF0ZTsKPiArCj4gKwlpZiAoIWludGVsX2NydGMgfHwgIWNydGNfc3RhdGUgfHwKPiArCQkoaW50 ZWxfcGxhbmUgJiYgaW50ZWxfcGxhbmUtPmJhc2UudHlwZSA9PSBEUk1fUExBTkVfVFlQRV9DVVJT T1IpKQo+ICsJCXJldHVybiAwOwo+ICsKPiArCXNjYWxlcl9zdGF0ZSA9ICZjcnRjX3N0YXRlLT5z Y2FsZXJfc3RhdGU7Cj4gKwo+ICsJaWYgKCFzY2FsZXJfc3RhdGUtPm51bV9zY2FsZXJzKSB7Cj4g KwkJRFJNX0RFQlVHX0tNUygiY3J0Y19zdGF0ZSA9ICVwLCBudW1fc2NhbGVycyA9ICVkXG4iLCBj cnRjX3N0YXRlLAo+ICsJCQlzY2FsZXJfc3RhdGUtPm51bV9zY2FsZXJzKTsKPiArCQlyZXR1cm4g MDsKPiArCX0KPiArCj4gKwlpZHggPSBpbnRlbF9wbGFuZSA/IGRybV9wbGFuZV9pbmRleCgmaW50 ZWxfcGxhbmUtPmJhc2UpIDogU0tMX0NSVENfSU5ERVg7Cj4gKwlmYiA9IGludGVsX3BsYW5lID8g cGxhbmVfc3RhdGUtPmJhc2UuZmIgOiBOVUxMOwo+ICsKPiArCWlmIChpbnRlbF9wbGFuZSkgewo+ ICsJCXNyY193ID0gZHJtX3JlY3Rfd2lkdGgoJnBsYW5lX3N0YXRlLT5zcmMpID4+IDE2Owo+ICsJ CXNyY19oID0gZHJtX3JlY3RfaGVpZ2h0KCZwbGFuZV9zdGF0ZS0+c3JjKSA+PiAxNjsKPiArCQlk c3RfdyA9IGRybV9yZWN0X3dpZHRoKCZwbGFuZV9zdGF0ZS0+ZHN0KTsKPiArCQlkc3RfaCA9IGRy bV9yZWN0X2hlaWdodCgmcGxhbmVfc3RhdGUtPmRzdCk7Cj4gKwkJc2NhbGVyX2lkID0gcGxhbmVf c3RhdGUtPnNjYWxlcl9pZDsKPiArCX0gZWxzZSB7Cj4gKwkJc3RydWN0IGRybV9kaXNwbGF5X21v ZGUgKmFkanVzdGVkX21vZGUgPQo+ICsJCQkmY3J0Y19zdGF0ZS0+YmFzZS5hZGp1c3RlZF9tb2Rl Owo+ICsJCXNyY193ID0gY3J0Y19zdGF0ZS0+cGlwZV9zcmNfdzsKPiArCQlzcmNfaCA9IGNydGNf c3RhdGUtPnBpcGVfc3JjX2g7Cj4gKwkJZHN0X3cgPSBhZGp1c3RlZF9tb2RlLT5oZGlzcGxheTsK PiArCQlkc3RfaCA9IGFkanVzdGVkX21vZGUtPnZkaXNwbGF5Owo+ICsJCXNjYWxlcl9pZCA9IHNj YWxlcl9zdGF0ZS0+c2NhbGVyX2lkOwo+ICsJfQo+ICsJbmVlZF9zY2FsaW5nID0gKHNyY193ICE9 IGRzdF93IHx8IHNyY19oICE9IGRzdF9oKTsKCldlJ3JlIGFscmVhZHkgY2FsY3VsYXRpbmcgdGhp cyBpbiB0aGUgcGxhbmUgY2hlY2sgZnVuY3Rpb247IHdlIHNob3VsZApwcm9iYWJseSBqdXN0IHN0 b3JlIHRoZSByZXN1bHQgaW4gYSBwbGFuZV9zdGF0ZSBmaWVsZCBhdCB0aGF0IHBvaW50IHNvCndl IGRvbid0IGhhdmUgdG8gcmUtY2FsY3VsYXRlIGl0IGhlcmUuCgoKPiArCj4gKwkvKgo+ICsJICog aWYgcGxhbmUgaXMgYmVpbmcgZGlzYWJsZWQgb3Igc2NhbGVyIGlzIG5vIG1vcmUgcmVxdWlyZWQg b3IgZm9yY2UgZGV0YWNoCgpNYXliZSBpdCB3aWxsIGJlY29tZSBtb3JlIGNsZWFyIGxhdGVyIGlu IHRoZSBwYXRjaCBzZXJpZXMsIGJ1dCBJJ20gbm90CnN1cmUgSSB1bmRlcnN0YW5kIHdoYXQgJ2Zv cmNlX2RldGFjaCcgZG9lcy4gIFdvbid0IHNjYWxlcnMgdGhhdCB3ZSBkb24ndAplbmQgdXAgcmUt YXNzaWduaW5nIGF1dG9tYXRpY2FsbHkgYmUgY2xlYXJlZCB3aGVuIHdlIG5vYm9keSBtYWtlcyB1 c2Ugb2YKdGhlbSBpbiBhIG5ldyBjb21taXQ/Cgo+ICsJICogIC0gZnJlZSBzY2FsZXIgYmluZGVk IHRvIHRoaXMgcGxhbmUvY3J0Ywo+ICsJICogIC0gaW4gb3JkZXIgdG8gZG8gdGhpcywgdXBkYXRl IGNydGMtPnNjYWxlcl91c2FnZQo+ICsJICoKPiArCSAqIEhlcmUgc2NhbGVyIHN0YXRlIGluIGNy dGNfc3RhdGUgaXMgc2V0IGZyZWUgc28gdGhhdAo+ICsJICogc2NhbGVyIGNhbiBiZSBhc3NpZ25l ZCB0byBvdGhlciB1c2VyLiBBY3R1YWwgcmVnaXN0ZXIKPiArCSAqIHVwZGF0ZSB0byBmcmVlIHRo ZSBzY2FsZXIgaXMgZG9uZSBpbiBwbGFuZS9wYW5lbC1maXQgcHJvZ3JhbW1pbmcuCj4gKwkgKiBG b3IgdGhpcyBwdXJwb3NlIGNydGMvcGxhbmVfc3RhdGUtPnNjYWxlcl9pZCBpc24ndCByZXNldCBo ZXJlLgo+ICsJICovCj4gKwlpZiAoZm9yY2VfZGV0YWNoIHx8ICFuZWVkX3NjYWxpbmcgfHwgKGlu dGVsX3BsYW5lICYmCj4gKwkJKCFmYiB8fCAhcGxhbmVfc3RhdGUtPnZpc2libGUpKSkgewo+ICsJ CWlmIChzY2FsZXJfaWQgPj0gMCkgewo+ICsJCQlzY2FsZXJfc3RhdGUtPnNjYWxlcl91c2VycyAm PSB+KDEgPDwgaWR4KTsKPiArCQkJc2NhbGVyX3N0YXRlLT5zY2FsZXJzW3NjYWxlcl9pZF0uaW5f dXNlID0gMDsKPiArCj4gKwkJCURSTV9ERUJVR19LTVMoIlN0YWdlZCBmcmVlaW5nIHNjYWxlciBp ZCAldS4ldSBmcm9tICVzOiVkICIKPiArCQkJCSJjcnRjX3N0YXRlID0gJXAgc2NhbGVyX3VzZXJz ID0gMHgleFxuIiwKPiArCQkJCWludGVsX2NydGMtPnBpcGUsIHNjYWxlcl9pZCwgaW50ZWxfcGxh bmUgPyAiUExBTkUiIDogIkNSVEMiLAo+ICsJCQkJaW50ZWxfcGxhbmUgPyBpbnRlbF9wbGFuZS0+ YmFzZS5iYXNlLmlkIDoKPiArCQkJCWludGVsX2NydGMtPmJhc2UuYmFzZS5pZCwgY3J0Y19zdGF0 ZSwKPiArCQkJCXNjYWxlcl9zdGF0ZS0+c2NhbGVyX3VzZXJzKTsKPiArCQl9Cj4gKwkJcmV0dXJu IDA7Cj4gKwl9Cj4gKwo+ICsJLyoKPiArCSAqIGNoZWNrIGZvciByZWN0IHNpemU6Cj4gKwkgKiAg ICAgbWluIHNpemVzIGluIGNhc2Ugb2Ygc2NhbGluZyBpbnZvbHZlZAo+ICsJICogICAgIG1heCBz aXplcyBpbiBhbGwgY2FzZXMKPiArCSAqLwo+ICsJaWYgKChuZWVkX3NjYWxpbmcgJiYKCm5lZWRf c2NhbGluZyBpcyBndWFyYW50ZWVkIHRvIGJlIHRydWUgbm93IChvdGhlcndpc2Ugd2Ugd291bGQg aGF2ZQpyZXR1cm5lZCBhYm92ZSksIHNvIHdlIGNhbiBkcm9wIHRoaXMgdGVzdC4KCj4gKwkJKHNy Y193IDwgc2NhbGVyX3N0YXRlLT5taW5fc3JjX3cgfHwgc3JjX2ggPCBzY2FsZXJfc3RhdGUtPm1p bl9zcmNfaCB8fAo+ICsJCSBkc3RfdyA8IHNjYWxlcl9zdGF0ZS0+bWluX2RzdF93IHx8IGRzdF9o IDwgc2NhbGVyX3N0YXRlLT5taW5fZHN0X2gpKSB8fAo+ICsKPiArCQkgc3JjX3cgPiBzY2FsZXJf c3RhdGUtPm1heF9zcmNfdyB8fCBzcmNfaCA+IHNjYWxlcl9zdGF0ZS0+bWF4X3NyY19oIHx8Cj4g KwkJIGRzdF93ID4gc2NhbGVyX3N0YXRlLT5tYXhfZHN0X3cgfHwgZHN0X2ggPiBzY2FsZXJfc3Rh dGUtPm1heF9kc3RfaCkgewo+ICsJCURSTV9ERUJVR19LTVMoIiVzOiVkIHNjYWxlcl91c2VyIGlu ZGV4ICV1LiV1OiBzcmMgJXV4JXUgZHN0ICV1eCV1ICIKPiArCQkJInNpemUgaXMgb3V0IG9mIHNj YWxlciByYW5nZVxuIiwKPiArCQkJaW50ZWxfcGxhbmUgPyAiUExBTkUiIDogIkNSVEMiLAo+ICsJ CQlpbnRlbF9wbGFuZSA/IGludGVsX3BsYW5lLT5iYXNlLmJhc2UuaWQgOiBpbnRlbF9jcnRjLT5i YXNlLmJhc2UuaWQsCj4gKwkJCWludGVsX2NydGMtPnBpcGUsIGlkeCwgc3JjX3csIHNyY19oLCBk c3RfdywgZHN0X2gpOwo+ICsJCXJldHVybiAtRUlOVkFMOwo+ICsJfQo+ICsKPiArCS8qIGNoZWNr IGNvbG9ya2V5ICovCj4gKwlpZiAoaW50ZWxfcGxhbmUgJiYgbmVlZF9zY2FsaW5nICYmIGludGVs X2NvbG9ya2V5X2VuYWJsZWQoaW50ZWxfcGxhbmUpKSB7CgpDYW4gZHJvcCAnbmVlZF9zY2FsaW5n JyB0ZXN0IGFnYWluLgoKPiArCQlEUk1fREVCVUdfS01TKCJQTEFORTolZCBzY2FsaW5nIHdpdGgg Y29sb3Iga2V5IG5vdCBhbGxvd2VkIiwKPiArCQkJaW50ZWxfcGxhbmUtPmJhc2UuYmFzZS5pZCk7 Cj4gKwkJcmV0dXJuIC1FSU5WQUw7Cj4gKwl9Cj4gKwo+ICsJLyogQ2hlY2sgc3JjIGZvcm1hdCAq Lwo+ICsJaWYgKGludGVsX3BsYW5lICYmIG5lZWRfc2NhbGluZykgewoKRGl0dG8KCj4gKwkJc3dp dGNoIChmYi0+cGl4ZWxfZm9ybWF0KSB7Cj4gKwkJY2FzZSBEUk1fRk9STUFUX1JHQjU2NToKPiAr CQljYXNlIERSTV9GT1JNQVRfWEJHUjg4ODg6Cj4gKwkJY2FzZSBEUk1fRk9STUFUX1hSR0I4ODg4 Ogo+ICsJCWNhc2UgRFJNX0ZPUk1BVF9BQkdSODg4ODoKPiArCQljYXNlIERSTV9GT1JNQVRfQVJH Qjg4ODg6Cj4gKwkJY2FzZSBEUk1fRk9STUFUX1hSR0IyMTAxMDEwOgo+ICsJCWNhc2UgRFJNX0ZP Uk1BVF9BUkdCMjEwMTAxMDoKPiArCQljYXNlIERSTV9GT1JNQVRfWEJHUjIxMDEwMTA6Cj4gKwkJ Y2FzZSBEUk1fRk9STUFUX0FCR1IyMTAxMDEwOgo+ICsJCWNhc2UgRFJNX0ZPUk1BVF9ZVVlWOgo+ ICsJCWNhc2UgRFJNX0ZPUk1BVF9ZVllVOgo+ICsJCWNhc2UgRFJNX0ZPUk1BVF9VWVZZOgo+ICsJ CWNhc2UgRFJNX0ZPUk1BVF9WWVVZOgo+ICsJCQlicmVhazsKPiArCQlkZWZhdWx0Ogo+ICsJCQlE Uk1fREVCVUdfS01TKCJQTEFORTolZCBGQjolZCBmb3JtYXQgMHgleCBub3Qgc3VwcG9ydGVkXG4i LAo+ICsJCQkJaW50ZWxfcGxhbmUtPmJhc2UuYmFzZS5pZCwgZmItPmJhc2UuaWQsIGZiLT5waXhl bF9mb3JtYXQpOwoKTWlnaHQgd2FudCB0byBhZGQgIi4uLndoaWxlIHNjYWxpbmciIHRvIHRoaXMg bWVzc2FnZSB0byBhdm9pZCBjb25mdXNpb24uCgo+ICsJCQlyZXR1cm4gLUVJTlZBTDsKPiArCQl9 Cj4gKwl9Cj4gKwo+ICsJLyogbWFyayB0aGlzIHBsYW5lIGFzIGEgc2NhbGVyIHVzZXIgaW4gY3J0 Y19zdGF0ZSAqLwo+ICsJc2NhbGVyX3N0YXRlLT5zY2FsZXJfdXNlcnMgfD0gKDEgPDwgaWR4KTsK PiArCURSTV9ERUJVR19LTVMoIiVzOiVkIHN0YWdlZCBzY2FsaW5nIHJlcXVlc3QgZm9yICV1eCV1 LT4ldXgldSAiCj4gKwkJImNydGNfc3RhdGUgPSAlcCBzY2FsZXJfdXNlcnMgPSAweCV4XG4iLAo+ ICsJCWludGVsX3BsYW5lID8gIlBMQU5FIiA6ICJDUlRDIiwKPiArCQlpbnRlbF9wbGFuZSA/IGlu dGVsX3BsYW5lLT5iYXNlLmJhc2UuaWQgOiBpbnRlbF9jcnRjLT5iYXNlLmJhc2UuaWQsCj4gKwkJ c3JjX3csIHNyY19oLCBkc3RfdywgZHN0X2gsIGNydGNfc3RhdGUsIHNjYWxlcl9zdGF0ZS0+c2Nh bGVyX3VzZXJzKTsKPiArCXJldHVybiAwOwo+ICt9Cj4gKwo+ICBzdGF0aWMgaW50Cj4gIGludGVs X2NoZWNrX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gIAkJCSAgc3Ry dWN0IGludGVsX3BsYW5lX3N0YXRlICpzdGF0ZSkKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ IGluZGV4IDFkYTUwODcuLmY1ZDUzYzkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ IEBAIC0xMTM4LDYgKzExMzgsOSBAQCB2b2lkIGludGVsX21vZGVfZnJvbV9waXBlX2NvbmZpZyhz dHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwKPiAgCQkJCSBzdHJ1Y3QgaW50ZWxfY3J0Y19z dGF0ZSAqcGlwZV9jb25maWcpOwo+ICB2b2lkIGludGVsX2NydGNfd2FpdF9mb3JfcGVuZGluZ19m bGlwcyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpOwo+ICB2b2lkIGludGVsX21vZGVzZXRfcHJlY2xv c2Uoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlKTsKPiAraW50 IHNrbF91cGRhdGVfc2NhbGVyX3VzZXJzKHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjLAo+ ICsJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsIHN0cnVjdCBpbnRlbF9wbGFu ZSAqaW50ZWxfcGxhbmUsCj4gKwlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRl LCBpbnQgZm9yY2VfZGV0YWNoKTsKPiAgCj4gIC8qIGludGVsX2RwLmMgKi8KPiAgdm9pZCBpbnRl bF9kcF9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBvdXRwdXRfcmVnLCBlbnVtIHBv cnQgcG9ydCk7Cj4gLS0gCj4gMS43LjkuNQoKWW91IHNob3VsZCBwcm9iYWJseSBqdXN0IHNxdWFz aCB0aGlzIGludG8gdGhlIGxhdGVyIHBhdGNoZXMgd2hlcmUgeW91CmFjdHVhbGx5IGNhbGwgaXQg KGUuZy4sIHBhdGNoIDE4KSBzbyBpdCdzIG1vcmUgY2xlYXIgaG93L3doZW4vd2hlcmUgaXQKaXMg dXNlZC4KCgpNYXR0Cgo+IAoKLS0gCk1hdHQgUm9wZXIKR3JhcGhpY3MgU29mdHdhcmUgRW5naW5l ZXIKSW9URyBQbGF0Zm9ybSBFbmFibGluZyAmIERldmVsb3BtZW50CkludGVsIENvcnBvcmF0aW9u Cig5MTYpIDM1Ni0yNzk1Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwt Z2Z4Cg==