From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v3 5/8] drm: Handle aspect ratio info in atomic and legacy modeset paths Date: Wed, 31 Jan 2018 15:09:11 +0200 Message-ID: <20180131130911.GJ5453@intel.com> References: <1515738096-16892-1-git-send-email-ankit.k.nautiyal@intel.com> <1515738096-16892-6-git-send-email-ankit.k.nautiyal@intel.com> <20180129185321.GU5453@intel.com> <2a237194-9136-1b9e-7df2-9f4056dde68d@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id E43A56EBD7 for ; Wed, 31 Jan 2018 13:09:14 +0000 (UTC) Content-Disposition: inline In-Reply-To: <2a237194-9136-1b9e-7df2-9f4056dde68d@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: "Nautiyal, Ankit K" Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBKYW4gMzEsIDIwMTggYXQgMTI6MDQ6NTJQTSArMDUzMCwgTmF1dGl5YWwsIEFua2l0 IEsgd3JvdGU6Cj4gCj4gCj4gT24gMS8zMC8yMDE4IDEyOjIzIEFNLCBWaWxsZSBTeXJqw6Rsw6Qg d3JvdGU6Cj4gPiBPbiBGcmksIEphbiAxMiwgMjAxOCBhdCAxMTo1MTozM0FNICswNTMwLCBOYXV0 aXlhbCwgQW5raXQgSyB3cm90ZToKPiA+PiBGcm9tOiBBbmtpdCBOYXV0aXlhbCA8YW5raXQuay5u YXV0aXlhbEBpbnRlbC5jb20+Cj4gPj4KPiA+PiBJZiB0aGUgdXNlciBtb2RlIGRvZXMgbm90IHN1 cHBvcnQgYXNwZWN0LXJhdGlvLCBhbmQgcmVxdWVzdHMgZm9yCj4gPj4gYSBtb2Rlc2V0LCB0aGVu IHRoZSBmbGFnIGJpdHMgcmVwcmVzZW50aW5nIGFzcGVjdCByYXRpbyBpbiB0aGUKPiA+PiBnaXZl biB1c2VyLW1vZGUgbXVzdCBiZSByZWplY3RlZC4KPiA+PiBTaW1pbGFybHksIHdoaWxlIHByZXBh cmluZyBhIHVzZXItbW9kZSBmcm9tIGtlcm5lbCBtb2RlLCB0aGUKPiA+PiBhc3BlY3QtcmF0aW8g aW5mbyBtdXN0IG5vdCBiZSBnaXZlbiwgaWYgYXNwZWN0LXJhdGlvIGlzIG5vdAo+ID4+IHN1cHBv cnRlZCBieSB0aGUgdXNlci4KPiA+Pgo+ID4+IFRoaXMgcGF0Y2g6Cj4gPj4gMS4gYWRkcyBhIG5l dyBiaXQgZmllbGQgYXNwZWN0X3JhdGlvX2FsbG93ZWQgaW4gZHJtX2F0b21pY19zdGF0ZSwKPiA+ PiB3aGljaCBpcyBzZXQgb25seSBpZiB0aGUgYXNwZWN0LXJhdGlvIGlzIHN1cHBvcnRlZCBieSB0 aGUgdXNlci4KPiA+PiAyLiBkaXNjYXJkcyB0aGUgYXNwZWN0LXJhdGlvIGluZm8gZnJvbSB0aGUg dXNlciBtb2RlIHdoaWxlCj4gPj4gcHJlcGFyaW5nIGtlcm5lbCBtb2RlIHN0cnVjdHVyZSwgZHVy aW5nIG1vZGVzZXQsIGlmIHRoZQo+ID4+IHVzZXIgZG9lcyBub3Qgc3VwcG9ydCBhc3BlY3QgcmF0 aW8uCj4gPj4gMy4gYXZvaWRzIHNldHRpbmcgdGhlIGFzcGVjdC1yYXRpbyBpbmZvIGluIHVzZXIt bW9kZSwgd2hpbGUKPiA+PiBjb252ZXJ0aW5nIHVzZXItbW9kZSBmcm9tIHRoZSBrZXJuZWwtbW9k ZS4KPiA+Pgo+ID4+IFNpZ25lZC1vZmYtYnk6IEFua2l0IE5hdXRpeWFsIDxhbmtpdC5rLm5hdXRp eWFsQGludGVsLmNvbT4KPiA+Pgo+ID4+IFYzOiBBZGRyZXNzZWQgcmV2aWV3IGNvbW1lbnRzIGZy b20gVmlsbGU6Cj4gPj4gLURvIG5vdCBjb3JydXB0IHRoZSBjdXJyZW50IGNydGMgc3RhdGUgYnkg dXBkYXRpbmcgYXNwZWN0IHJhdGlvCj4gPj4gb24gdGhlIGZseS4KPiA+PiAtLS0KPiA+PiAgIGRy aXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMgfCA2MSArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKy0tLQo+ID4+ICAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgICB8 IDE5ICsrKysrKysrKysrKysrCj4gPj4gICBpbmNsdWRlL2RybS9kcm1fYXRvbWljLmggICAgIHwg IDIgKysKPiA+PiAgIDMgZmlsZXMgY2hhbmdlZCwgNzkgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlv bnMoLSkKPiA+Pgo+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5j IGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+ID4+IGluZGV4IDY5ZmY3NjMuLjM5MzEz ZTIgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+ID4+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKPiA+PiBAQCAtMzE2LDYgKzMxNiwzNSBA QCBzdGF0aWMgczMyIF9fdXNlciAqZ2V0X291dF9mZW5jZV9mb3JfY3J0YyhzdHJ1Y3QgZHJtX2F0 b21pY19zdGF0ZSAqc3RhdGUsCj4gPj4gICAKPiA+PiAgIAlyZXR1cm4gZmVuY2VfcHRyOwo+ID4+ ICAgfQo+ID4+ICsvKioKPiA+PiArICogZHJtX2F0b21pY19hbGxvd19hc3BlY3RfcmF0aW9fZm9y X2ttb2RlCj4gPj4gKyAqIEBzdGF0ZTogdGhlIGNydGMgc3RhdGUKPiA+PiArICogQG1vZGU6IGtl cm5lbC1pbnRlcm5hbCBtb2RlLCB3aGljaCBpcyB1c2VkIHRvIGNyZWF0ZSBhIGR1cGxpY2F0ZSBt b2RlLAo+ID4+ICsgKiB3aXRoIHVwZGF0ZWQgcGljdHVyZSBhc3BlY3QgcmF0aW8uCj4gPj4gKyAq Cj4gPj4gKyAqIEFsbG93IHRoZSBhc3BlY3QgcmF0aW8gaW5mbyBpbiB0aGUga2VybmVsIG1vZGUg b25seSBpZiBhc3BlY3QgcmF0aW8gaXMKPiA+PiArICogc3VwcG9ydGVkLgo+ID4+ICsgKgo+ID4+ ICsgKiBSRVRVUk5TOgo+ID4+ICsgKiBrZXJuZWwtaW50ZXJuYWwgbW9kZSB3aXRoIHVwZGF0ZWQg cGljdHVyZSBhc3BlY3QgcmF0aW8gdmFsdWUuCj4gPj4gKyAqLwo+ID4+ICsKPiA+PiArc3RydWN0 IGRybV9kaXNwbGF5X21vZGUqCj4gPj4gK2RybV9hdG9taWNfYWxsb3dfYXNwZWN0X3JhdGlvX2Zv cl9rbW9kZShzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnN0YXRlLAo+ID4+ICsJCQkJCWNvbnN0IHN0 cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQo+ID4+ICt7Cj4gPj4gKwlzdHJ1Y3QgZHJtX2F0 b21pY19zdGF0ZSAqYXRvbWljX3N0YXRlID0gc3RhdGUtPnN0YXRlOwo+ID4+ICsJc3RydWN0IGRy bV9kaXNwbGF5X21vZGUgKmFyX2ttb2RlOwo+ID4+ICsKPiA+PiArCWFyX2ttb2RlID0gZHJtX21v ZGVfZHVwbGljYXRlKHN0YXRlLT5jcnRjLT5kZXYsIG1vZGUpOwo+ID4+ICsJLyoKPiA+PiArCSAq IElmIGFzcGVjdCByYXRpbyBpcyBub3Qgc3VwcG9ydGVkLCBzZXQgdGhlIHBpY3R1cmUgYXNwZWN0 IHJhdGlvIGFzCj4gPj4gKwkgKiBOT05FLgo+ID4+ICsJICovCj4gPj4gKwlpZiAoYXRvbWljX3N0 YXRlICYmICFhdG9taWNfc3RhdGUtPmFsbG93X2FzcGVjdF9yYXRpbykKPiA+PiArCQlhcl9rbW9k ZS0+cGljdHVyZV9hc3BlY3RfcmF0aW8gPSBIRE1JX1BJQ1RVUkVfQVNQRUNUX05PTkU7Cj4gPj4g KwlyZXR1cm4gYXJfa21vZGU7Cj4gPj4gK30KPiA+PiAgIAo+ID4+ICAgLyoqCj4gPj4gICAgKiBk cm1fYXRvbWljX3NldF9tb2RlX2Zvcl9jcnRjIC0gc2V0IG1vZGUgZm9yIENSVEMKPiA+PiBAQCAt MzQxLDcgKzM3MCwxMCBAQCBpbnQgZHJtX2F0b21pY19zZXRfbW9kZV9mb3JfY3J0YyhzdHJ1Y3Qg ZHJtX2NydGNfc3RhdGUgKnN0YXRlLAo+ID4+ICAgCXN0YXRlLT5tb2RlX2Jsb2IgPSBOVUxMOwo+ ID4+ICAgCj4gPj4gICAJaWYgKG1vZGUpIHsKPiA+PiAtCQlkcm1fbW9kZV9jb252ZXJ0X3RvX3Vt b2RlKCZ1bW9kZSwgbW9kZSk7Cj4gPj4gKwkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFyX21v ZGU7Cj4gPj4gKwo+ID4+ICsJCWFyX21vZGUgPSBkcm1fYXRvbWljX2FsbG93X2FzcGVjdF9yYXRp b19mb3Jfa21vZGUoc3RhdGUsIG1vZGUpOwo+ID4+ICsJCWRybV9tb2RlX2NvbnZlcnRfdG9fdW1v ZGUoJnVtb2RlLCBhcl9tb2RlKTsKPiA+IFRoaXMgc3RpbGwgbG9va3Mgc2tldGNoeS4KPiA+Cj4g PiBJIGJlbGlldmUgdGhlcmUgYXJlIGp1c3QgdHdvIHBsYWNlcyB3aGVyZSB3ZSBuZWVkIHRvIGZp bHRlciBvdXQgdGhlCj4gPiBhc3BlY3QgcmF0aW8gZmxhZ3MgZnJvbSB0aGUgdW1vZGUsIG5hbWVs eSB0aGUgZ2V0YmxvYiBhbmQgZ2V0Y3J0Ywo+ID4gaW9jdGxzLgo+IAo+IEFGQUlLIFRoZSBnZXRi bG9iIGlvY3RsIGNhbiBiZSBjYWxsZWQgZm9yIGVkaWQgYmxvYiwgZ2FtbWEsIGN0bSBibG9iLCAK PiBldGMuIGFwYXJ0IGZyb20gdGhlIG1vZGUgYmxvYi4KPiBJcyB0aGVyZSBhbnkgd2F5IHRvIGNo ZWNrIGZyb20gYmxvYiBpZCAob3IgYnkgYW55IG90aGVyIG1lYW5zKSwKPiBpZiB0aGUgZGF0YSBp cyBmb3IgdGhlIG1vZGUsIG9yIGVkaWQsIG9yIGdhbW1hIGV0Yy4KCkkgdGhpbmsgd2UnZCBoYXZl IHRvIHNvbWVob3cgbWFyayB0aGUgbW9kZSBibG9icyBhcyBzcGVjaWFsLiBVbnRpbCB3ZQpoYXZl IG1vcmUgbmVlZCBmb3IgY2xlYW5pbmcgdXAgYmxvYnMgYmVmb3JlIHJldHVybmluZyB0aGVtIHRv IHVzZXJzcGFjZQpJIHRoaW5rIGEgc2ltcGxlIGZsYWcgc2hvdWxkIGRvLiBJZiB3ZSBjb21lIHVw IHdpdGggbW9yZSB1c2VzIGxpa2UgdGhpcwp0aGVuIGl0IG1pZ2h0IG1ha2Ugc2Vuc2UgdG8gaW50 cm9kdWNlIHNvbWUga2luZCBvZiBvcHRpb25hbCBmaWx0ZXIKZnVuY3Rpb24gZm9yIGJsb2JzLgoK PiAKPiBJZiB3ZSBjYW4gY2hlY2sgdGhhdCwgSSBjYW4gbWFrZSBzdXJlIHRoYXQgYXNwZWN0LXJh dGlvIGZsYWdzIGFyZSB0YWtlbiAKPiBjYXJlIG9mLCBpZiB0aGUgYmxvYiBpcyBmb3IgbW9kZSwK PiBhbmQgdGhlIGFzcGVjdCByYXRpbyBpcyBub3Qgc3VwcG9ydGVkLgo+IAo+ID4KPiA+IEFuZCBm b3IgY2hlY2tpbmcgdGhlIHVzZXIgaW5wdXQgSSB0aGluayB3ZSBzaG91bGQgcHJvYmFibHkganVz dAo+ID4gc3RpY2sgdGhhdCBpbnRvIGRybV9tb2RlX2NvbnZlcnRfdW1vZGUoKS4gTG9va3MgbGlr ZSB3ZSBuZXZlciBjYWxsCj4gPiB0aGF0IGZyb20gYW55d2hlcmUgYnV0IHRoZSBhdG9taWMvc2V0 cHJvcCBhbmQgc2V0Y3J0YyBwYXRocyB3aXRoCj4gPiBhIG5vbi1OVUxMIGFyZ3VtZW50Lgo+ID4K PiA+IEkgKnRoaW5rKiB0aG9zZSB0aHJlZSBwbGFjZXMgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8g Y292ZXIgZXZlcnl0aGluZy4KPiBBZ3JlZWQuIEluZmFjdCBJIHRyaWVkIHRvIGRvIHRoYXQgZmly c3QsIGJ1dCB0aGUgb25seSBwcm9ibGVtIHdlIGhhdmUgCj4gaGVyZSwgaXMgdGhhdCwgdGhlIGZp bGVfcHJpdgo+IHdoaWNoIGhhcyB0aGUgYXNwZWN0IHJhdGlvIGNhcGFiaWxpdHkgaW5mb3JtYXRp b24gaXMgbm90IHN1cHBsaWVkIHRvIHRoZSAKPiBkcm1fbW9kZV9jb252ZXJ0X3Vtb2RlKCkKPiBv ciB0aGUgZnVuY3Rpb25zIGNhbGxpbmcsIGRybV9tb2RlX2NvbnZlcl91bW9kZSgpLiBBdCBiZXN0 IHdlIGhhdmUgCj4gZHJtX2NydGNfc3RhdGUuCgpTaW1wbHkgcGFzc2luZyB0aGUgZmlsZV9wcml2 IGRvd24gd291bGQgc2VlbSBsaWtlIHRoZSBtb3N0IG9idmlvdXMKc29sdXRpb24uCgo+IAo+IEkg aGF2ZSBhZGRlZCBhbiBhc3BlY3QgcmF0aW8gYWxsb3dlZCBmbGFnICBpbiBkcm1fY3J0Y19zdGF0 ZS0+c3RhdGUgc28gCj4gdGhhdCBpdHMgYXZhaWxhYmxlIGluIHRoZQo+IGZ1bmN0aW9ucyBjYWxs aW5nIGRybV9tb2RlX2NvbnZlcnRfdW1vZGUuCj4gCj4gSSBhbSBvcGVuIHRvIHN1Z2dlc3Rpb24g dG8gYXZvaWQgYWRkaW5nIGEgbmV3IGZsYWcgaW4gZHJtX2F0b21pY19zdGF0ZSwgCj4gaWYgdGhl cmUgaXMgYSBiZXR0ZXIKPiB3YXkgdG8gbGV0IHRoZSBkcm1fbW9kZV9jb252ZXJ0X3Vtb2RlKCAp IGtub3cgdGhhdCB1c2VyIHN1cHBvcnRzIGFzcGVjdCAKPiByYXRpbyBjYXBhYmlsaXR5Lgo+ID4K PiA+PiAgIAkJc3RhdGUtPm1vZGVfYmxvYiA9Cj4gPj4gICAJCQlkcm1fcHJvcGVydHlfY3JlYXRl X2Jsb2Ioc3RhdGUtPmNydGMtPmRldiwKPiA+PiAgIAkJICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgc2l6ZW9mKHVtb2RlKSwKPiA+PiBAQCAtMzQ5LDEwICszODEsMTEgQEAgaW50IGRy bV9hdG9taWNfc2V0X21vZGVfZm9yX2NydGMoc3RydWN0IGRybV9jcnRjX3N0YXRlICpzdGF0ZSwK PiA+PiAgIAkJaWYgKElTX0VSUihzdGF0ZS0+bW9kZV9ibG9iKSkKPiA+PiAgIAkJCXJldHVybiBQ VFJfRVJSKHN0YXRlLT5tb2RlX2Jsb2IpOwo+ID4+ICAgCj4gPj4gLQkJZHJtX21vZGVfY29weSgm c3RhdGUtPm1vZGUsIG1vZGUpOwo+ID4+ICsJCWRybV9tb2RlX2NvcHkoJnN0YXRlLT5tb2RlLCBh cl9tb2RlKTsKPiA+PiAgIAkJc3RhdGUtPmVuYWJsZSA9IHRydWU7Cj4gPj4gICAJCURSTV9ERUJV R19BVE9NSUMoIlNldCBbTU9ERTolc10gZm9yIENSVEMgc3RhdGUgJXBcbiIsCj4gPj4gLQkJCQkg bW9kZS0+bmFtZSwgc3RhdGUpOwo+ID4+ICsJCQkJIGFyX21vZGUtPm5hbWUsIHN0YXRlKTsKPiA+ PiArCQlkcm1fbW9kZV9kZXN0cm95KHN0YXRlLT5jcnRjLT5kZXYsIGFyX21vZGUpOwo+ID4+ICAg CX0gZWxzZSB7Cj4gPj4gICAJCW1lbXNldCgmc3RhdGUtPm1vZGUsIDAsIHNpemVvZihzdGF0ZS0+ bW9kZSkpOwo+ID4+ICAgCQlzdGF0ZS0+ZW5hYmxlID0gZmFsc2U7Cj4gPj4gQEAgLTQzNiw2ICs0 NjksMjUgQEAgZHJtX2F0b21pY19yZXBsYWNlX3Byb3BlcnR5X2Jsb2JfZnJvbV9pZChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LAo+ID4+ICAgfQo+ID4+ICAgCj4gPj4gICAvKioKPiA+PiArICogZHJt X2F0b21pY19hbGxvd19hc3BlY3RfcmF0aW9fZm9yX3Vtb2RlCj4gPj4gKyAqIEBzdGF0ZTogdGhl IGNydGMgc3RhdGUKPiA+PiArICogQHVtb2RlOiB1c2Vyc3BhY2UgbW9kZSwgd2hvc2UgYXNwZWN0 IHJhdGlvIGZsYWcgYml0cyBhcmUgdG8gYmUgdXBkYXRlZC4KPiA+PiArICoKPiA+PiArICogQWxs b3cgdGhlIGFzcGVjdCByYXRpbyBpbmZvIGluIHRoZSB1c2Vyc3BhY2UgbW9kZSBvbmx5IGlmIGFz cGVjdCByYXRpbyBpcwo+ID4+ICsgKiBzdXBwb3J0ZWQuCj4gPj4gKyAqLwo+ID4+ICt2b2lkCj4g Pj4gK2RybV9hdG9taWNfYWxsb3dfYXNwZWN0X3JhdGlvX2Zvcl91bW9kZShzdHJ1Y3QgZHJtX2Ny dGNfc3RhdGUgKnN0YXRlLAo+ID4+ICsJCQkJCXN0cnVjdCBkcm1fbW9kZV9tb2RlaW5mbyAqdW1v ZGUpCj4gPj4gK3sKPiA+PiArCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICphdG9taWNfc3RhdGUg PSBzdGF0ZS0+c3RhdGU7Cj4gPj4gKwo+ID4+ICsJLyogUmVzZXQgdGhlIGFzcGVjdCByYXRpbyBm bGFncyBpZiBhc3BlY3QgcmF0aW8gaXMgbm90IHN1cHBvcnRlZCAqLwo+ID4+ICsJaWYgKGF0b21p Y19zdGF0ZSAmJiAhYXRvbWljX3N0YXRlLT5hbGxvd19hc3BlY3RfcmF0aW8pCj4gPj4gKwkJdW1v ZGUtPmZsYWdzICY9ICh+RFJNX01PREVfRkxBR19QSUNfQVJfTUFTSyk7Cj4gPj4gK30KPiA+PiAr Cj4gPj4gKy8qKgo+ID4+ICAgICogZHJtX2F0b21pY19jcnRjX3NldF9wcm9wZXJ0eSAtIHNldCBw cm9wZXJ0eSBvbiBDUlRDCj4gPj4gICAgKiBAY3J0YzogdGhlIGRybSBDUlRDIHRvIHNldCBhIHBy b3BlcnR5IG9uCj4gPj4gICAgKiBAc3RhdGU6IHRoZSBzdGF0ZSBvYmplY3QgdG8gdXBkYXRlIHdp dGggdGhlIG5ldyBwcm9wZXJ0eSB2YWx1ZQo+ID4+IEBAIC00NjQsNiArNTE2LDkgQEAgaW50IGRy bV9hdG9taWNfY3J0Y19zZXRfcHJvcGVydHkoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ID4+ICAg CWVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+cHJvcF9tb2RlX2lkKSB7Cj4gPj4gICAJCXN0 cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqbW9kZSA9Cj4gPj4gICAJCQlkcm1fcHJvcGVydHlfbG9v a3VwX2Jsb2IoZGV2LCB2YWwpOwo+ID4+ICsJCWRybV9hdG9taWNfYWxsb3dfYXNwZWN0X3JhdGlv X2Zvcl91bW9kZShzdGF0ZSwKPiA+PiArCQkJCQkoc3RydWN0IGRybV9tb2RlX21vZGVpbmZvICop Cj4gPj4gKwkJCQkJbW9kZS0+ZGF0YSk7Cj4gPj4gICAJCXJldCA9IGRybV9hdG9taWNfc2V0X21v ZGVfcHJvcF9mb3JfY3J0YyhzdGF0ZSwgbW9kZSk7Cj4gPj4gICAJCWRybV9wcm9wZXJ0eV9ibG9i X3B1dChtb2RlKTsKPiA+PiAgIAkJcmV0dXJuIHJldDsKPiA+PiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2RybV9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwo+ID4+IGlu ZGV4IGYwNTU2ZTYuLmEyZDM0ZmEgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2Ry bV9jcnRjLmMKPiA+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwo+ID4+IEBAIC00 MjUsNiArNDI1LDEzIEBAIGludCBkcm1fbW9kZV9nZXRjcnRjKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCj4gPj4gICAJZHJtX21vZGVzZXRfbG9jaygmY3J0Yy0+bXV0ZXgsIE5VTEwpOwo+ID4+ICAg CWlmIChjcnRjLT5zdGF0ZSkgewo+ID4+ICAgCQlpZiAoY3J0Yy0+c3RhdGUtPmVuYWJsZSkgewo+ ID4+ICsJCQkvKgo+ID4+ICsJCQkgKiBJZiB0aGUgYXNwZWN0LXJhdGlvIGlzIG5vdCByZXF1aXJl ZCBieSB0aGUsCj4gPj4gKwkJCSAqIHVzZXJzcGFjZSwgZG8gbm90IHNldCB0aGUgYXNwZWN0LXJh dGlvIGZsYWdzLgo+ID4+ICsJCQkgKi8KPiA+PiArCQkJaWYgKCFmaWxlX3ByaXYtPmFzcGVjdF9y YXRpb19hbGxvd2VkKQo+ID4+ICsJCQkJY3J0Yy0+c3RhdGUtPm1vZGUucGljdHVyZV9hc3BlY3Rf cmF0aW8gPQo+ID4+ICsJCQkJCUhETUlfUElDVFVSRV9BU1BFQ1RfTk9ORTsKPiA+IFRoZXNlIHdv dWxkIHN0aWxsIGNsb2JiZXIgdGhlIGN1cnJlbnQgY3J0YyBzdGF0ZS4gU28gZGVmaW5pdGVseSBk b24ndAo+ID4gd2FudCB0byBkbyB0aGlzLgo+IEFscmlnaHQsIHNvIGFsdGVybmF0aXZlIHdheSBv ZiBkb2luZyB0aGlzIHdpbGwgYmU6Cj4gQXZvaWQgY2hhbmdpbmcgdGhlIGNydGMtPnN0YXRlLT5t b2RlLnBpY3R1cmVfYXNwZWN0X3JhdGlvIGkuZSBrZXJuZWwgCj4gbW9kZSBzdHJ1Y3R1cmUsCj4g YnV0IHNldCB0aGUgYXNwZWN0IHJhdGlvIGZsYWdzIGluIHRoZSB1c2VybW9kZSB0byBub25lLCBh ZnRlciBjYWxsaW5nIHRoZQo+IGRybV9tb2RlX2NvbnZlcnRfdG9fdW1vZGUoKS4KPiAKPiBXaWxs IHRha2UgY2FyZSBvZiB0aGlzIGluIHRoZSBuZXh0IHBhdGNoc2V0Lgo+IAo+ID4KPiA+PiAgIAkJ CWRybV9tb2RlX2NvbnZlcnRfdG9fdW1vZGUoJmNydGNfcmVzcC0+bW9kZSwgJmNydGMtPnN0YXRl LT5tb2RlKTsKPiA+PiAgIAkJCWNydGNfcmVzcC0+bW9kZV92YWxpZCA9IDE7Cj4gPj4gICAKPiA+ PiBAQCAtNDM1LDYgKzQ0MiwxMyBAQCBpbnQgZHJtX21vZGVfZ2V0Y3J0YyhzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAo+ID4+ICAgCQljcnRjX3Jlc3AtPnggPSBjcnRjLT54Owo+ID4+ICAgCQljcnRj X3Jlc3AtPnkgPSBjcnRjLT55Owo+ID4+ICAgCQlpZiAoY3J0Yy0+ZW5hYmxlZCkgewo+ID4+ICsJ CQkvKgo+ID4+ICsJCQkgKiBJZiB0aGUgYXNwZWN0LXJhdGlvIGlzIG5vdCByZXF1aXJlZCBieSB0 aGUsCj4gPj4gKwkJCSAqIHVzZXJzcGFjZSwgZG8gbm90IHNldCB0aGUgYXNwZWN0LXJhdGlvIGZs YWdzLgo+ID4+ICsJCQkgKi8KPiA+PiArCQkJaWYgKCFmaWxlX3ByaXYtPmFzcGVjdF9yYXRpb19h bGxvd2VkKQo+ID4+ICsJCQkJY3J0Yy0+bW9kZS5waWN0dXJlX2FzcGVjdF9yYXRpbyA9Cj4gPj4g KwkJCQkJSERNSV9QSUNUVVJFX0FTUEVDVF9OT05FOwo+ID4+ICAgCQkJZHJtX21vZGVfY29udmVy dF90b191bW9kZSgmY3J0Y19yZXNwLT5tb2RlLCAmY3J0Yy0+bW9kZSk7Cj4gPj4gICAJCQljcnRj X3Jlc3AtPm1vZGVfdmFsaWQgPSAxOwo+ID4+ICAgCj4gPj4gQEAgLTYxMCw2ICs2MjQsMTEgQEAg aW50IGRybV9tb2RlX3NldGNydGMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwK PiA+PiAgIAkJCWdvdG8gb3V0Owo+ID4+ICAgCQl9Cj4gPj4gICAKPiA+PiArCQkvKiBJZiB0aGUg dXNlciBkb2VzIG5vdCBhc2sgZm9yIGFzcGVjdCByYXRpbywgcmVzZXQgdGhlIGFzcGVjdAo+ID4+ ICsJCSAqIHJhdGlvIGJpdHMgaW4gdGhlIHVzZXJtb2RlLgo+ID4+ICsJCSAqLwo+ID4+ICsJCWlm ICghZmlsZV9wcml2LT5hc3BlY3RfcmF0aW9fYWxsb3dlZCkKPiA+PiArCQkJY3J0Y19yZXEtPm1v ZGUuZmxhZ3MgJj0gKH5EUk1fTU9ERV9GTEFHX1BJQ19BUl9NQVNLKTsKPiA+PiAgIAkJcmV0ID0g ZHJtX21vZGVfY29udmVydF91bW9kZShtb2RlLCAmY3J0Y19yZXEtPm1vZGUpOwo+ID4+ICAgCQlp ZiAocmV0KSB7Cj4gPj4gICAJCQlEUk1fREVCVUdfS01TKCJJbnZhbGlkIG1vZGVcbiIpOwo+ID4+ IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fYXRvbWljLmggYi9pbmNsdWRlL2RybS9kcm1f YXRvbWljLmgKPiA+PiBpbmRleCAxYzI3NTI2Li4xMzBkYWQ5IDEwMDY0NAo+ID4+IC0tLSBhL2lu Y2x1ZGUvZHJtL2RybV9hdG9taWMuaAo+ID4+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9hdG9taWMu aAo+ID4+IEBAIC0yMzcsNiArMjM3LDcgQEAgc3RydWN0IF9fZHJtX3ByaXZhdGVfb2Jqc19zdGF0 ZSB7Cj4gPj4gICAgKiBAcmVmOiBjb3VudCBvZiBhbGwgcmVmZXJlbmNlcyB0byB0aGlzIHN0YXRl ICh3aWxsIG5vdCBiZSBmcmVlZCB1bnRpbCB6ZXJvKQo+ID4+ICAgICogQGRldjogcGFyZW50IERS TSBkZXZpY2UKPiA+PiAgICAqIEBhbGxvd19tb2Rlc2V0OiBhbGxvdyBmdWxsIG1vZGVzZXQKPiA+ PiArICogQGFsbG93X2FzcGVjdF9yYXRpbzogYWxsb3cgdGhlIGFzcGVjdCByYXRpbyBpbmZvIHRv IGJlIHBhc3NlcyB0byB1c2VyCj4gPj4gICAgKiBAbGVnYWN5X2N1cnNvcl91cGRhdGU6IGhpbnQg dG8gZW5mb3JjZSBsZWdhY3kgY3Vyc29yIElPQ1RMIHNlbWFudGljcwo+ID4+ICAgICogQGFzeW5j X3VwZGF0ZTogaGludCBmb3IgYXN5bmNocm9ub3VzIHBsYW5lIHVwZGF0ZQo+ID4+ICAgICogQHBs YW5lczogcG9pbnRlciB0byBhcnJheSBvZiBzdHJ1Y3R1cmVzIHdpdGggcGVyLXBsYW5lIGRhdGEK PiA+PiBAQCAtMjU2LDYgKzI1Nyw3IEBAIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlIHsKPiA+PiAg IAo+ID4+ICAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXY7Cj4gPj4gICAJYm9vbCBhbGxvd19tb2Rl c2V0IDogMTsKPiA+PiArCWJvb2wgYWxsb3dfYXNwZWN0X3JhdGlvIDogMTsKPiA+PiAgIAlib29s IGxlZ2FjeV9jdXJzb3JfdXBkYXRlIDogMTsKPiA+PiAgIAlib29sIGFzeW5jX3VwZGF0ZSA6IDE7 Cj4gPj4gICAJc3RydWN0IF9fZHJtX3BsYW5lc19zdGF0ZSAqcGxhbmVzOwo+ID4+IC0tIAo+ID4+ IDIuNy40Cj4gPj4KPiA+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwo+ID4+IGRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKPiA+PiBkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCj4gPj4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9kcmktZGV2ZWwKPiAKCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBt YWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=