From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan De Oliveira Subject: Re: [PATCH 10/12] drm/i915: Nuke fbc members from intel_crtc->atomic. Date: Thu, 26 Nov 2015 13:28:11 +0200 Message-ID: <1448537291.3189.1.camel@gmail.com> References: <1447945645-32005-1-git-send-email-maarten.lankhorst@linux.intel.com> <1447945645-32005-11-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-f49.google.com (mail-pa0-f49.google.com [209.85.220.49]) by gabe.freedesktop.org (Postfix) with ESMTPS id AD6416EB66 for ; Thu, 26 Nov 2015 03:28:15 -0800 (PST) Received: by pabfh17 with SMTP id fh17so87190162pab.0 for ; Thu, 26 Nov 2015 03:28:15 -0800 (PST) In-Reply-To: <1447945645-32005-11-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 T24gVGh1LCAyMDE1LTExLTE5IGF0IDE2OjA3ICswMTAwLCBNYWFydGVuIExhbmtob3JzdCB3cm90 ZToKPiBUaGlzIGxlYXZlcyBpbnRlbF9jcnRjLT5hdG9taWMgZW1wdHksIHNvIHphcCBpdCBhcyB3 ZWxsLgoKSSBtYWRlIHNvbWUgY29tbWVudHMgb24gdGhpcyBwYXRjaCBhbHJlYWR5LiBJIHRoaW5r IHRob3NlIGFyZSBzdGlsbCB2YWxpZDoKCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvYXJj aGl2ZXMvaW50ZWwtZ2Z4LzIwMTUtTm92ZW1iZXIvMDc5ODI5Lmh0bWwKCkFuZGVyCgo+IAo+IFNp Z25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5p bnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8 IDg3ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gLQo+ICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAxNiAtLS0tLS0tCj4gIDIgZmlsZXMgY2hhbmdl ZCwgMzMgaW5zZXJ0aW9ucygrKSwgNzAgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGlzcGxheS5jCj4gaW5kZXggOTU1MDFhYmE3ZDIzLi43ZjY5Zjk4ZDhiMjMgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gQEAgLTQ3MzQsNyArNDczNCw2 IEBAIHN0YXRpYyB2b2lkIGludGVsX3Bvc3RfcGxhbmVfdXBkYXRlKHN0cnVjdAo+IGludGVsX2Ny dGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlKQo+ICB7Cj4gIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0 YyA9IHRvX2ludGVsX2NydGMob2xkX2NydGNfc3RhdGUtPmJhc2UuY3J0Yyk7Cj4gIAlzdHJ1Y3Qg ZHJtX2F0b21pY19zdGF0ZSAqb2xkX3N0YXRlID0gb2xkX2NydGNfc3RhdGUtPmJhc2Uuc3RhdGU7 Cj4gLQlzdHJ1Y3QgaW50ZWxfY3J0Y19hdG9taWNfY29tbWl0ICphdG9taWMgPSAmY3J0Yy0+YXRv bWljOwo+ICAJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnID0KPiAgCQl0b19p bnRlbF9jcnRjX3N0YXRlKGNydGMtPmJhc2Uuc3RhdGUpOwo+ICAJc3RydWN0IGRybV9kZXZpY2Ug KmRldiA9IGNydGMtPmJhc2UuZGV2Owo+IEBAIC00NzUwLDE1ICs0NzQ5LDE1IEBAIHN0YXRpYyB2 b2lkIGludGVsX3Bvc3RfcGxhbmVfdXBkYXRlKHN0cnVjdAo+IGludGVsX2NydGNfc3RhdGUgKm9s ZF9jcnRjX3N0YXRlKQo+ICAJaWYgKHBpcGVfY29uZmlnLT53bV9jaGFuZ2VkICYmIHBpcGVfY29u ZmlnLT5iYXNlLmFjdGl2ZSkKPiAgCQlpbnRlbF91cGRhdGVfd2F0ZXJtYXJrcygmY3J0Yy0+YmFz ZSk7Cj4gIAo+IC0JaWYgKGF0b21pYy0+dXBkYXRlX2ZiYykKPiAtCQlpbnRlbF9mYmNfdXBkYXRl KGRldl9wcml2KTsKPiAtCj4gIAlpZiAob2xkX3ByaV9zdGF0ZSkgewo+ICAJCXN0cnVjdCBpbnRl bF9wbGFuZV9zdGF0ZSAqcHJpbWFyeV9zdGF0ZSA9Cj4gIAkJCXRvX2ludGVsX3BsYW5lX3N0YXRl KHByaW1hcnktPnN0YXRlKTsKPiAgCQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKm9sZF9wcmlt YXJ5X3N0YXRlID0KPiAgCQkJdG9faW50ZWxfcGxhbmVfc3RhdGUob2xkX3ByaV9zdGF0ZSk7Cj4g IAo+ICsJCWlmIChwcmltYXJ5X3N0YXRlLT52aXNpYmxlKQo+ICsJCQlpbnRlbF9mYmNfdXBkYXRl KGRldl9wcml2KTsKPiArCj4gIAkJaWYgKHByaW1hcnlfc3RhdGUtPnZpc2libGUgJiYKPiAgCQkg ICAgKG5lZWRzX21vZGVzZXQoJnBpcGVfY29uZmlnLT5iYXNlKSB8fAo+ICAJCSAgICAgIW9sZF9w cmltYXJ5X3N0YXRlLT52aXNpYmxlKSkKPiBAQCAtNDc2Nyw4ICs0NzY2LDYgQEAgc3RhdGljIHZv aWQgaW50ZWxfcG9zdF9wbGFuZV91cGRhdGUoc3RydWN0Cj4gaW50ZWxfY3J0Y19zdGF0ZSAqb2xk X2NydGNfc3RhdGUpCj4gIAo+ICAJaWYgKG5lZWRzX21vZGVzZXQoJnBpcGVfY29uZmlnLT5iYXNl KSkKPiAgCQlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZfcHJpdiwgUE9XRVJfRE9NQUlOX01P REVTRVQpOwo+IC0KPiAtCW1lbXNldChhdG9taWMsIDAsIHNpemVvZigqYXRvbWljKSk7Cj4gIH0K PiAgCj4gIHN0YXRpYyB2b2lkIGludGVsX3ByZV9wbGFuZV91cGRhdGUoc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlKQo+IEBAIC00Nzc2LDcgKzQ3NzMsNiBAQCBzdGF0aWMg dm9pZCBpbnRlbF9wcmVfcGxhbmVfdXBkYXRlKHN0cnVjdAo+IGludGVsX2NydGNfc3RhdGUgKm9s ZF9jcnRjX3N0YXRlKQo+ICAJc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRj KG9sZF9jcnRjX3N0YXRlLT5iYXNlLmNydGMpOwo+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9 IGNydGMtPmJhc2UuZGV2Owo+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0g ZGV2LT5kZXZfcHJpdmF0ZTsKPiAtCXN0cnVjdCBpbnRlbF9jcnRjX2F0b21pY19jb21taXQgKmF0 b21pYyA9ICZjcnRjLT5hdG9taWM7Cj4gIAlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9j b25maWcgPQo+ICAJCXRvX2ludGVsX2NydGNfc3RhdGUoY3J0Yy0+YmFzZS5zdGF0ZSk7Cj4gIAlz dHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqb2xkX3N0YXRlID0gb2xkX2NydGNfc3RhdGUtPmJhc2Uu c3RhdGU7Cj4gQEAgLTQ3ODUsOSArNDc4MSw2IEBAIHN0YXRpYyB2b2lkIGludGVsX3ByZV9wbGFu ZV91cGRhdGUoc3RydWN0Cj4gaW50ZWxfY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGUpCj4gIAkJ ZHJtX2F0b21pY19nZXRfZXhpc3RpbmdfcGxhbmVfc3RhdGUob2xkX3N0YXRlLCBwcmltYXJ5KTsK PiAgCWJvb2wgbW9kZXNldCA9IG5lZWRzX21vZGVzZXQoJnBpcGVfY29uZmlnLT5iYXNlKTsKPiAg Cj4gLQlpZiAoYXRvbWljLT5kaXNhYmxlX2ZiYykKPiAtCQlpbnRlbF9mYmNfZGlzYWJsZV9jcnRj KGNydGMpOwo+IC0KPiAgCWlmIChvbGRfcHJpX3N0YXRlKSB7Cj4gIAkJc3RydWN0IGludGVsX3Bs YW5lX3N0YXRlICpwcmltYXJ5X3N0YXRlID0KPiAgCQkJdG9faW50ZWxfcGxhbmVfc3RhdGUocHJp bWFyeS0+c3RhdGUpOwo+IEBAIC00Nzk1LDggKzQ3ODgsMjcgQEAgc3RhdGljIHZvaWQgaW50ZWxf cHJlX3BsYW5lX3VwZGF0ZShzdHJ1Y3QKPiBpbnRlbF9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0 ZSkKPiAgCQkJdG9faW50ZWxfcGxhbmVfc3RhdGUob2xkX3ByaV9zdGF0ZSk7Cj4gIAo+ICAJCWlm IChvbGRfcHJpbWFyeV9zdGF0ZS0+dmlzaWJsZSAmJgo+IC0JCSAgICAobW9kZXNldCB8fCAhcHJp bWFyeV9zdGF0ZS0+dmlzaWJsZSkpCj4gKwkJICAgIChtb2Rlc2V0IHx8ICFwcmltYXJ5X3N0YXRl LT52aXNpYmxlKSkgewo+ICsJCQlpbnRlbF9mYmNfZGlzYWJsZV9jcnRjKGNydGMpOwo+ICsKPiAg CQkJaW50ZWxfcHJlX2Rpc2FibGVfcHJpbWFyeSgmY3J0Yy0+YmFzZSk7Cj4gKwkJfSBlbHNlIGlm IChwcmltYXJ5X3N0YXRlLT52aXNpYmxlICYmCj4gKwkJCSBJTlRFTF9JTkZPKGRldl9wcml2KS0+ Z2VuIDw9IDQgJiYgIUlTX0c0WChkZXZfcHJpdikKPiAmJgo+ICsJCQkgZGV2X3ByaXYtPmZiYy5j cnRjID09IGNydGMgJiYKPiArCQkJIHByaW1hcnlfc3RhdGUtPmJhc2Uucm90YXRpb24gIT0gQklU KERSTV9ST1RBVEVfMCkpIHsKPiArCQkJLyoKPiArCQkJICogRkJDIGRvZXMgbm90IHdvcmsgb24g c29tZSBwbGF0Zm9ybXMgZm9yIHJvdGF0ZWQKPiArCQkJICogcGxhbmVzLCBzbyBkaXNhYmxlIGl0 IHdoZW4gcm90YXRpb24gaXMgbm90IDAgYW5kCj4gKwkJCSAqIHVwZGF0ZSBpdCB3aGVuIHJvdGF0 aW9uIGlzIHNldCBiYWNrIHRvIDAuCj4gKwkJCSAqCj4gKwkJCSAqIEZJWE1FOiBUaGlzIGlzIHJl ZHVuZGFudCB3aXRoIHRoZSBmYmMgdXBkYXRlIGRvbmUKPiBpbgo+ICsJCQkgKiB0aGUgcHJpbWFy eSBwbGFuZSBlbmFibGUgZnVuY3Rpb24gZXhjZXB0IHRoYXQgdGhhdAo+ICsJCQkgKiBvbmUgaXMg ZG9uZSB0b28gbGF0ZS4gV2UgZXZlbnR1YWxseSBuZWVkIHRvIHVuaWZ5Cj4gKwkJCSAqIHRoaXMu Cj4gKwkJCSAqLwo+ICsKPiArCQkJaW50ZWxfZmJjX2Rpc2FibGVfY3J0YyhjcnRjKTsKPiArCQl9 Cj4gIAl9Cj4gIAo+ICAJaWYgKHBpcGVfY29uZmlnLT5kaXNhYmxlX2N4c3IpIHsKPiBAQCAtMTE2 ODYsNyArMTE2OTgsNiBAQCBpbnQgaW50ZWxfcGxhbmVfYXRvbWljX2NhbGNfY2hhbmdlcyhzdHJ1 Y3QKPiBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPiAgCXN0cnVjdCBpbnRlbF9jcnRjICpp bnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKPiAgCXN0cnVjdCBkcm1fcGxhbmUgKnBs YW5lID0gcGxhbmVfc3RhdGUtPnBsYW5lOwo+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNy dGMtPmRldjsKPiAtCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2 X3ByaXZhdGU7Cj4gIAlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKm9sZF9wbGFuZV9zdGF0ZSA9 Cj4gIAkJdG9faW50ZWxfcGxhbmVfc3RhdGUocGxhbmUtPnN0YXRlKTsKPiAgCWludCBpZHggPSBp bnRlbF9jcnRjLT5iYXNlLmJhc2UuaWQsIHJldDsKPiBAQCAtMTE3NDUsNDYgKzExNzU2LDE3IEBA IGludCBpbnRlbF9wbGFuZV9hdG9taWNfY2FsY19jaGFuZ2VzKHN0cnVjdAo+IGRybV9jcnRjX3N0 YXRlICpjcnRjX3N0YXRlLAo+ICAJaWYgKHZpc2libGUgfHwgd2FzX3Zpc2libGUpCj4gIAkJcGlw ZV9jb25maWctPmZiX2JpdHMgfD0gdG9faW50ZWxfcGxhbmUocGxhbmUpCj4gLT5mcm9udGJ1ZmZl cl9iaXQ7Cj4gIAo+IC0Jc3dpdGNoIChwbGFuZS0+dHlwZSkgewo+IC0JY2FzZSBEUk1fUExBTkVf VFlQRV9QUklNQVJZOgo+IC0JCWlmICh0dXJuX29mZikKPiAtCQkJaW50ZWxfY3J0Yy0+YXRvbWlj LmRpc2FibGVfZmJjID0gdHJ1ZTsKPiAtCj4gLQkJLyoKPiAtCQkgKiBGQkMgZG9lcyBub3Qgd29y ayBvbiBzb21lIHBsYXRmb3JtcyBmb3Igcm90YXRlZAo+IC0JCSAqIHBsYW5lcywgc28gZGlzYWJs ZSBpdCB3aGVuIHJvdGF0aW9uIGlzIG5vdCAwIGFuZAo+IC0JCSAqIHVwZGF0ZSBpdCB3aGVuIHJv dGF0aW9uIGlzIHNldCBiYWNrIHRvIDAuCj4gLQkJICoKPiAtCQkgKiBGSVhNRTogVGhpcyBpcyBy ZWR1bmRhbnQgd2l0aCB0aGUgZmJjIHVwZGF0ZSBkb25lIGluCj4gLQkJICogdGhlIHByaW1hcnkg cGxhbmUgZW5hYmxlIGZ1bmN0aW9uIGV4Y2VwdCB0aGF0IHRoYXQKPiAtCQkgKiBvbmUgaXMgZG9u ZSB0b28gbGF0ZS4gV2UgZXZlbnR1YWxseSBuZWVkIHRvIHVuaWZ5Cj4gLQkJICogdGhpcy4KPiAt CQkgKi8KPiAtCj4gLQkJaWYgKHZpc2libGUgJiYKPiAtCQkgICAgSU5URUxfSU5GTyhkZXYpLT5n ZW4gPD0gNCAmJiAhSVNfRzRYKGRldikgJiYKPiAtCQkgICAgZGV2X3ByaXYtPmZiYy5jcnRjID09 IGludGVsX2NydGMgJiYKPiAtCQkgICAgcGxhbmVfc3RhdGUtPnJvdGF0aW9uICE9IEJJVChEUk1f Uk9UQVRFXzApKQo+IC0JCQlpbnRlbF9jcnRjLT5hdG9taWMuZGlzYWJsZV9mYmMgPSB0cnVlOwo+ IC0KPiAtCQlpbnRlbF9jcnRjLT5hdG9taWMudXBkYXRlX2ZiYyB8PSB2aXNpYmxlIHx8IG1vZGVf Y2hhbmdlZDsKPiAtCQlicmVhazsKPiAtCWNhc2UgRFJNX1BMQU5FX1RZUEVfQ1VSU09SOgo+IC0J CWJyZWFrOwo+IC0JY2FzZSBEUk1fUExBTkVfVFlQRV9PVkVSTEFZOgo+IC0JCS8qCj4gLQkJICog V2FDeFNSRGlzYWJsZWRGb3JTcHJpdGVTY2FsaW5nOml2Ygo+IC0JCSAqCj4gLQkJICogY3N0YXRl LT51cGRhdGVfd20gd2FzIGFscmVhZHkgc2V0IGFib3ZlLCBzbyB0aGlzIGZsYWcgd2lsbAo+IC0J CSAqIHRha2UgZWZmZWN0IHdoZW4gd2UgY29tbWl0IGFuZCBwcm9ncmFtIHdhdGVybWFya3MuCj4g LQkJICovCj4gLQkJaWYgKElTX0lWWUJSSURHRShkZXYpICYmCj4gLQkJICAgIG5lZWRzX3NjYWxp bmcodG9faW50ZWxfcGxhbmVfc3RhdGUocGxhbmVfc3RhdGUpKSAmJgo+IC0JCSAgICAhbmVlZHNf c2NhbGluZyhvbGRfcGxhbmVfc3RhdGUpKQo+IC0JCQlwaXBlX2NvbmZpZy0+ZGlzYWJsZV9scF93 bSA9IHRydWU7Cj4gKwkvKgo+ICsJICogV2FDeFNSRGlzYWJsZWRGb3JTcHJpdGVTY2FsaW5nOml2 Ygo+ICsJICoKPiArCSAqIGNzdGF0ZS0+dXBkYXRlX3dtIHdhcyBhbHJlYWR5IHNldCBhYm92ZSwg c28gdGhpcyBmbGFnIHdpbGwKPiArCSAqIHRha2UgZWZmZWN0IHdoZW4gd2UgY29tbWl0IGFuZCBw cm9ncmFtIHdhdGVybWFya3MuCj4gKwkgKi8KPiArCWlmIChwbGFuZS0+dHlwZSA9PSBEUk1fUExB TkVfVFlQRV9PVkVSTEFZICYmIElTX0lWWUJSSURHRShkZXYpICYmCj4gKwkgICAgbmVlZHNfc2Nh bGluZyh0b19pbnRlbF9wbGFuZV9zdGF0ZShwbGFuZV9zdGF0ZSkpICYmCj4gKwkgICAgIW5lZWRz X3NjYWxpbmcob2xkX3BsYW5lX3N0YXRlKSkKPiArCQlwaXBlX2NvbmZpZy0+ZGlzYWJsZV9scF93 bSA9IHRydWU7Cj4gIAo+IC0JCWJyZWFrOwo+IC0JfQo+ICAJcmV0dXJuIDA7Cj4gIH0KPiAgCj4g QEAgLTEzMTY2LDkgKzEzMTQ4LDYgQEAgc3RhdGljIGludCBpbnRlbF9hdG9taWNfY2hlY2soc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCQlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9j b25maWcgPQo+ICAJCQl0b19pbnRlbF9jcnRjX3N0YXRlKGNydGNfc3RhdGUpOwo+ICAKPiAtCQlt ZW1zZXQoJnRvX2ludGVsX2NydGMoY3J0YyktPmF0b21pYywgMCwKPiAtCQkgICAgICAgc2l6ZW9m KHN0cnVjdCBpbnRlbF9jcnRjX2F0b21pY19jb21taXQpKTsKPiAtCj4gIAkJLyogQ2F0Y2ggSTkx NV9NT0RFX0ZMQUdfSU5IRVJJVEVEICovCj4gIAkJaWYgKGNydGNfc3RhdGUtPm1vZGUucHJpdmF0 ZV9mbGFncyAhPSBjcnRjLT5zdGF0ZQo+IC0+bW9kZS5wcml2YXRlX2ZsYWdzKQo+ICAJCQljcnRj X3N0YXRlLT5tb2RlX2NoYW5nZWQgPSB0cnVlOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcnYuaAo+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgK PiBpbmRleCAzNWFlODI3YWI5MjMuLmQyZTFkYzY5OGZjYSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oCj4gQEAgLTUyNywyMCArNTI3LDYgQEAgc3RydWN0IGludGVsX21taW9fZmxpcCB7 Cj4gIAl1bnNpZ25lZCBpbnQgcm90YXRpb247Cj4gIH07Cj4gIAo+IC0vKgo+IC0gKiBUcmFja2lu ZyBvZiBvcGVyYXRpb25zIHRoYXQgbmVlZCB0byBiZSBwZXJmb3JtZWQgYXQgdGhlIGJlZ2lubmlu Zy9lbmQgb2YKPiBhbgo+IC0gKiBhdG9taWMgY29tbWl0LCBvdXRzaWRlIHRoZSBhdG9taWMgc2Vj dGlvbiB3aGVyZSBpbnRlcnJ1cHRzIGFyZSBkaXNhYmxlZC4KPiAtICogVGhlc2UgYXJlIGdlbmVy YWxseSBvcGVyYXRpb25zIHRoYXQgZ3JhYiBtdXRleGVzIG9yIG1pZ2h0IG90aGVyd2lzZSBzbGVl cAo+IC0gKiBhbmQgdGh1cyBjYW4ndCBiZSBydW4gd2l0aCBpbnRlcnJ1cHRzIGRpc2FibGVkLgo+ IC0gKi8KPiAtc3RydWN0IGludGVsX2NydGNfYXRvbWljX2NvbW1pdCB7Cj4gLQkvKiBTbGVlcGFi bGUgb3BlcmF0aW9ucyB0byBwZXJmb3JtIGJlZm9yZSBjb21taXQgKi8KPiAtCWJvb2wgZGlzYWJs ZV9mYmM7Cj4gLQo+IC0JLyogU2xlZXBhYmxlIG9wZXJhdGlvbnMgdG8gcGVyZm9ybSBhZnRlciBj b21taXQgKi8KPiAtCWJvb2wgdXBkYXRlX2ZiYzsKPiAtfTsKPiAtCj4gIHN0cnVjdCBpbnRlbF9j cnRjIHsKPiAgCXN0cnVjdCBkcm1fY3J0YyBiYXNlOwo+ICAJZW51bSBwaXBlIHBpcGU7Cj4gQEAg LTYwMSw4ICs1ODcsNiBAQCBzdHJ1Y3QgaW50ZWxfY3J0YyB7Cj4gIAkJaW50IHNjYW5saW5lX3N0 YXJ0Owo+ICAJfSBkZWJ1ZzsKPiAgCj4gLQlzdHJ1Y3QgaW50ZWxfY3J0Y19hdG9taWNfY29tbWl0 IGF0b21pYzsKPiAtCj4gIAkvKiBzY2FsZXJzIGF2YWlsYWJsZSBvbiB0aGlzIGNydGMgKi8KPiAg CWludCBudW1fc2NhbGVyczsKPiAgCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==