From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 3/7] drm/i915: s/mode/adjusted_mode/ in functions that really get passed the adjusted_mode Date: Wed, 23 Sep 2015 15:30:23 +0300 Message-ID: <20150923123023.GZ26517@intel.com> References: <1441708851-24646-1-git-send-email-ville.syrjala@linux.intel.com> <1441708851-24646-4-git-send-email-ville.syrjala@linux.intel.com> <1443006738.3303.1.camel@sorvi> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 03C0F6E68D for ; Wed, 23 Sep 2015 05:30:26 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1443006738.3303.1.camel@sorvi> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Mika Kahola Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBTZXAgMjMsIDIwMTUgYXQgMDI6MTI6MThQTSArMDMwMCwgTWlrYSBLYWhvbGEgd3Jv dGU6Cj4gT24gVHVlLCAyMDE1LTA5LTA4IGF0IDEzOjQwICswMzAwLCB2aWxsZS5zeXJqYWxhQGxp bnV4LmludGVsLmNvbSB3cm90ZToKPiA+IEZyb206IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3ly amFsYUBsaW51eC5pbnRlbC5jb20+Cj4gPiAKPiA+IFJlbmFtZSB0aGUgZnVuY3Rpb24gYXJndW1l bnQgdG8gJ2FkanVzdGVkX21vZGUnIHdoZW5ldmVyIHRoZSBmdW5jdGlvbgo+ID4gb25seSBldmVy IGdldHMgcGFzc2VkIHRoZSBhZGp1c3RlZF9tb2RlLgo+ID4gCj4gV2hhdCB3YXMgdGhlIHJlYXNv biB3aHkgd2UgbmVlZCB0byByZW5hbWUgdGhlIGZ1bmN0aW9uIGFyZ3VtZW50PwoKVHdvIHRoaW5n czsgRmlyc3Qgb25lIGJlaW5nIGNsYXJpdHkuIFdoZW4geW91IHNlZSAnbW9kZScgeW91IGNhbid0 IGJlCnN1cmUgd2hhdCBpdCBpcywgJ2FkanVzdGVkX21vZGUnIE9UT0ggaXMgcHJldHR5IGNsZWFy LiBUaGUgc2Vjb25kIHJlYXNvbgp3YXMgdGhhdCBJIGNvdWxkIHRoZW4gdXNlIHNlZCB0byByZXBs YWNlIGFsbCB0aGUgYWRqdXN0ZWRfbW9kZS0+Zm9vCndpdGggYWRqdXN0ZWRfbW9kZS0+Y3J0Y19m b28gKHdoaWNoIHJlc3VsdGVkIGluIHRoZSBuZXh0IHBhdGNoKS4KCj4gCj4gLU1pa2EtCj4gCj4g PiBTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50 ZWwuY29tPgo+ID4gLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAg fCAgMiArLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMgIHwgMTcgKysr KysrKysrLS0tLS0tLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuYyAgICB8 IDE2ICsrKysrKysrLS0tLS0tLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5l bC5jICB8IDM2ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQo+ID4gIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nkdm8uYyAgIHwgIDYgKysrLS0tCj4gPiAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMgfCAgOCArKysrKy0tLQo+ID4gIDYgZmlsZXMgY2hh bmdlZCwgNDQgaW5zZXJ0aW9ucygrKSwgNDEgZGVsZXRpb25zKC0pCj4gPiAKPiA+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaAo+ID4gaW5kZXggNTAzZGZmNS4uNGY0YjUwNCAxMDA2NDQKPiA+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmgKPiA+IEBAIC02NDYsNyArNjQ2LDcgQEAgc3RydWN0IGRybV9pOTE1 X2Rpc3BsYXlfZnVuY3Mgewo+ID4gIAl2b2lkICgqY3J0Y19kaXNhYmxlKShzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMpOwo+ID4gIAl2b2lkICgqYXVkaW9fY29kZWNfZW5hYmxlKShzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLAo+ID4gIAkJCQkgICBzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5j b2RlciwKPiA+IC0JCQkJICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpOwo+ID4gKwkJ CQkgICBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSk7Cj4gPiAg CXZvaWQgKCphdWRpb19jb2RlY19kaXNhYmxlKShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rl cik7Cj4gPiAgCXZvaWQgKCpmZGlfbGlua190cmFpbikoc3RydWN0IGRybV9jcnRjICpjcnRjKTsK PiA+ICAJdm9pZCAoKmluaXRfY2xvY2tfZ2F0aW5nKShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsK PiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdWRpby5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYwo+ID4gaW5kZXggY2Y0ZjVkMS4uY2E5MGJh MyAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMKPiA+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMKPiA+IEBAIC02OSwxNyAr NjksMTggQEAgc3RhdGljIGNvbnN0IHN0cnVjdCB7Cj4gPiAgfTsKPiA+ICAKPiA+ICAvKiBnZXQg QVVEX0NPTkZJR19QSVhFTF9DTE9DS19IRE1JXyogdmFsdWUgZm9yIG1vZGUgKi8KPiA+IC1zdGF0 aWMgdTMyIGF1ZGlvX2NvbmZpZ19oZG1pX3BpeGVsX2Nsb2NrKHN0cnVjdCBkcm1fZGlzcGxheV9t b2RlICptb2RlKQo+ID4gK3N0YXRpYyB1MzIgYXVkaW9fY29uZmlnX2hkbWlfcGl4ZWxfY2xvY2so Y29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21vZGUpCj4gPiAgewo+ID4g IAlpbnQgaTsKPiA+ICAKPiA+ICAJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoaGRtaV9hdWRp b19jbG9jayk7IGkrKykgewo+ID4gLQkJaWYgKG1vZGUtPmNsb2NrID09IGhkbWlfYXVkaW9fY2xv Y2tbaV0uY2xvY2spCj4gPiArCQlpZiAoYWRqdXN0ZWRfbW9kZS0+Y2xvY2sgPT0gaGRtaV9hdWRp b19jbG9ja1tpXS5jbG9jaykKPiA+ICAJCQlicmVhazsKPiA+ICAJfQo+ID4gIAo+ID4gIAlpZiAo aSA9PSBBUlJBWV9TSVpFKGhkbWlfYXVkaW9fY2xvY2spKSB7Cj4gPiAtCQlEUk1fREVCVUdfS01T KCJIRE1JIGF1ZGlvIHBpeGVsIGNsb2NrIHNldHRpbmcgZm9yICVkIG5vdCBmb3VuZCwgZmFsbGlu ZyBiYWNrIHRvIGRlZmF1bHRzXG4iLCBtb2RlLT5jbG9jayk7Cj4gPiArCQlEUk1fREVCVUdfS01T KCJIRE1JIGF1ZGlvIHBpeGVsIGNsb2NrIHNldHRpbmcgZm9yICVkIG5vdCBmb3VuZCwgZmFsbGlu ZyBiYWNrIHRvIGRlZmF1bHRzXG4iLAo+ID4gKwkJCSAgICAgIGFkanVzdGVkX21vZGUtPmNsb2Nr KTsKPiA+ICAJCWkgPSAxOwo+ID4gIAl9Cj4gPiAgCj4gPiBAQCAtMTM4LDcgKzEzOSw3IEBAIHN0 YXRpYyB2b2lkIGc0eF9hdWRpb19jb2RlY19kaXNhYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICpl bmNvZGVyKQo+ID4gIAo+ID4gIHN0YXRpYyB2b2lkIGc0eF9hdWRpb19jb2RlY19lbmFibGUoc3Ry dWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiA+ICAJCQkJICAgc3RydWN0IGludGVsX2Vu Y29kZXIgKmVuY29kZXIsCj4gPiAtCQkJCSAgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2Rl KQo+ID4gKwkJCQkgICBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9k ZSkKPiA+ICB7Cj4gPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGNvbm5l Y3Rvci0+ZGV2LT5kZXZfcHJpdmF0ZTsKPiA+ICAJdWludDhfdCAqZWxkID0gY29ubmVjdG9yLT5l bGQ7Cj4gPiBAQCAtMjAzLDcgKzIwNCw3IEBAIHN0YXRpYyB2b2lkIGhzd19hdWRpb19jb2RlY19k aXNhYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQo+ID4gIAo+ID4gIHN0YXRpYyB2 b2lkIGhzd19hdWRpb19jb2RlY19lbmFibGUoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rv ciwKPiA+ICAJCQkJICAgc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gPiAtCQkJCSAg IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQo+ID4gKwkJCQkgICBjb25zdCBzdHJ1Y3Qg ZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSkKPiA+ICB7Cj4gPiAgCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGNvbm5lY3Rvci0+ZGV2LT5kZXZfcHJpdmF0ZTsKPiA+ ICAJc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGVuY29kZXIt PmJhc2UuY3J0Yyk7Cj4gPiBAQCAtMjUxLDcgKzI1Miw3IEBAIHN0YXRpYyB2b2lkIGhzd19hdWRp b19jb2RlY19lbmFibGUoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiA+ICAJaWYg KGludGVsX3BpcGVfaGFzX3R5cGUoaW50ZWxfY3J0YywgSU5URUxfT1VUUFVUX0RJU1BMQVlQT1JU KSkKPiA+ICAJCXRtcCB8PSBBVURfQ09ORklHX05fVkFMVUVfSU5ERVg7Cj4gPiAgCWVsc2UKPiA+ IC0JCXRtcCB8PSBhdWRpb19jb25maWdfaGRtaV9waXhlbF9jbG9jayhtb2RlKTsKPiA+ICsJCXRt cCB8PSBhdWRpb19jb25maWdfaGRtaV9waXhlbF9jbG9jayhhZGp1c3RlZF9tb2RlKTsKPiA+ICAJ STkxNV9XUklURShIU1dfQVVEX0NGRyhwaXBlKSwgdG1wKTsKPiA+ICB9Cj4gPiAgCj4gPiBAQCAt MzA0LDcgKzMwNSw3IEBAIHN0YXRpYyB2b2lkIGlsa19hdWRpb19jb2RlY19kaXNhYmxlKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQo+ID4gIAo+ID4gIHN0YXRpYyB2b2lkIGlsa19hdWRp b19jb2RlY19lbmFibGUoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiA+ICAJCQkJ ICAgc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gPiAtCQkJCSAgIHN0cnVjdCBkcm1f ZGlzcGxheV9tb2RlICptb2RlKQo+ID4gKwkJCQkgICBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSAqYWRqdXN0ZWRfbW9kZSkKPiA+ICB7Cj4gPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiA9IGNvbm5lY3Rvci0+ZGV2LT5kZXZfcHJpdmF0ZTsKPiA+ICAJc3RydWN0IGlu dGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGVuY29kZXItPmJhc2UuY3J0Yyk7 Cj4gPiBAQCAtMzgxLDcgKzM4Miw3IEBAIHN0YXRpYyB2b2lkIGlsa19hdWRpb19jb2RlY19lbmFi bGUoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiA+ICAJaWYgKGludGVsX3BpcGVf aGFzX3R5cGUoaW50ZWxfY3J0YywgSU5URUxfT1VUUFVUX0RJU1BMQVlQT1JUKSkKPiA+ICAJCXRt cCB8PSBBVURfQ09ORklHX05fVkFMVUVfSU5ERVg7Cj4gPiAgCWVsc2UKPiA+IC0JCXRtcCB8PSBh dWRpb19jb25maWdfaGRtaV9waXhlbF9jbG9jayhtb2RlKTsKPiA+ICsJCXRtcCB8PSBhdWRpb19j b25maWdfaGRtaV9waXhlbF9jbG9jayhhZGp1c3RlZF9tb2RlKTsKPiA+ICAJSTkxNV9XUklURShh dWRfY29uZmlnLCB0bXApOwo+ID4gIH0KPiA+ICAKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kc2kuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5j Cj4gPiBpbmRleCAwYzI2YmE1Li41NWFmMGM1IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHNpLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2RzaS5jCj4gPiBAQCAtNjk4LDcgKzY5OCw3IEBAIHN0YXRpYyB1MTYgdHhieXRlY2xraHModTE2 IHBpeGVscywgaW50IGJwcCwgaW50IGxhbmVfY291bnQsCj4gPiAgfQo+ID4gIAo+ID4gIHN0YXRp YyB2b2lkIHNldF9kc2lfdGltaW5ncyhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4gPiAt CQkJICAgIGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQo+ID4gKwkJCSAgICBj b25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSkKPiA+ICB7Cj4gPiAg CXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBlbmNvZGVyLT5kZXY7Cj4gPiAgCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gPiBAQCAtNzEwLDEw ICs3MTAsMTAgQEAgc3RhdGljIHZvaWQgc2V0X2RzaV90aW1pbmdzKHN0cnVjdCBkcm1fZW5jb2Rl ciAqZW5jb2RlciwKPiA+ICAKPiA+ICAJdTE2IGhhY3RpdmUsIGhmcCwgaHN5bmMsIGhicCwgdmZw LCB2c3luYywgdmJwOwo+ID4gIAo+ID4gLQloYWN0aXZlID0gbW9kZS0+aGRpc3BsYXk7Cj4gPiAt CWhmcCA9IG1vZGUtPmhzeW5jX3N0YXJ0IC0gbW9kZS0+aGRpc3BsYXk7Cj4gPiAtCWhzeW5jID0g bW9kZS0+aHN5bmNfZW5kIC0gbW9kZS0+aHN5bmNfc3RhcnQ7Cj4gPiAtCWhicCA9IG1vZGUtPmh0 b3RhbCAtIG1vZGUtPmhzeW5jX2VuZDsKPiA+ICsJaGFjdGl2ZSA9IGFkanVzdGVkX21vZGUtPmhk aXNwbGF5Owo+ID4gKwloZnAgPSBhZGp1c3RlZF9tb2RlLT5oc3luY19zdGFydCAtIGFkanVzdGVk X21vZGUtPmhkaXNwbGF5Owo+ID4gKwloc3luYyA9IGFkanVzdGVkX21vZGUtPmhzeW5jX2VuZCAt IGFkanVzdGVkX21vZGUtPmhzeW5jX3N0YXJ0Owo+ID4gKwloYnAgPSBhZGp1c3RlZF9tb2RlLT5o dG90YWwgLSBhZGp1c3RlZF9tb2RlLT5oc3luY19lbmQ7Cj4gPiAgCj4gPiAgCWlmIChpbnRlbF9k c2ktPmR1YWxfbGluaykgewo+ID4gIAkJaGFjdGl2ZSAvPSAyOwo+ID4gQEAgLTcyNCw5ICs3MjQs OSBAQCBzdGF0aWMgdm9pZCBzZXRfZHNpX3RpbWluZ3Moc3RydWN0IGRybV9lbmNvZGVyICplbmNv ZGVyLAo+ID4gIAkJaGJwIC89IDI7Cj4gPiAgCX0KPiA+ICAKPiA+IC0JdmZwID0gbW9kZS0+dnN5 bmNfc3RhcnQgLSBtb2RlLT52ZGlzcGxheTsKPiA+IC0JdnN5bmMgPSBtb2RlLT52c3luY19lbmQg LSBtb2RlLT52c3luY19zdGFydDsKPiA+IC0JdmJwID0gbW9kZS0+dnRvdGFsIC0gbW9kZS0+dnN5 bmNfZW5kOwo+ID4gKwl2ZnAgPSBhZGp1c3RlZF9tb2RlLT52c3luY19zdGFydCAtIGFkanVzdGVk X21vZGUtPnZkaXNwbGF5Owo+ID4gKwl2c3luYyA9IGFkanVzdGVkX21vZGUtPnZzeW5jX2VuZCAt IGFkanVzdGVkX21vZGUtPnZzeW5jX3N0YXJ0Owo+ID4gKwl2YnAgPSBhZGp1c3RlZF9tb2RlLT52 dG90YWwgLSBhZGp1c3RlZF9tb2RlLT52c3luY19lbmQ7Cj4gPiAgCj4gPiAgCS8qIGhvcml6b250 YWwgdmFsdWVzIGFyZSBpbiB0ZXJtcyBvZiBoaWdoIHNwZWVkIGJ5dGUgY2xvY2sgKi8KPiA+ICAJ aGFjdGl2ZSA9IHR4Ynl0ZWNsa2hzKGhhY3RpdmUsIGJwcCwgbGFuZV9jb3VudCwKPiA+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5lbC5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfcGFuZWwuYwo+ID4gaW5kZXggMjAzNDQzOGEuLmQwNzFiZWQgMTAwNjQ0 Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5lbC5jCj4gPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5lbC5jCj4gPiBAQCAtMTcyLDQ2ICsxNzIsNDYg QEAgZG9uZToKPiA+ICB9Cj4gPiAgCj4gPiAgc3RhdGljIHZvaWQKPiA+IC1jZW50cmVfaG9yaXpv bnRhbGx5KHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlLAo+ID4gK2NlbnRyZV9ob3Jpem9u dGFsbHkoc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21vZGUsCj4gPiAgCQkgICAg aW50IHdpZHRoKQo+ID4gIHsKPiA+ICAJdTMyIGJvcmRlciwgc3luY19wb3MsIGJsYW5rX3dpZHRo LCBzeW5jX3dpZHRoOwo+ID4gIAo+ID4gIAkvKiBrZWVwIHRoZSBoc3luYyBhbmQgaGJsYW5rIHdp ZHRocyBjb25zdGFudCAqLwo+ID4gLQlzeW5jX3dpZHRoID0gbW9kZS0+Y3J0Y19oc3luY19lbmQg LSBtb2RlLT5jcnRjX2hzeW5jX3N0YXJ0Owo+ID4gLQlibGFua193aWR0aCA9IG1vZGUtPmNydGNf aGJsYW5rX2VuZCAtIG1vZGUtPmNydGNfaGJsYW5rX3N0YXJ0Owo+ID4gKwlzeW5jX3dpZHRoID0g YWRqdXN0ZWRfbW9kZS0+Y3J0Y19oc3luY19lbmQgLSBhZGp1c3RlZF9tb2RlLT5jcnRjX2hzeW5j X3N0YXJ0Owo+ID4gKwlibGFua193aWR0aCA9IGFkanVzdGVkX21vZGUtPmNydGNfaGJsYW5rX2Vu ZCAtIGFkanVzdGVkX21vZGUtPmNydGNfaGJsYW5rX3N0YXJ0Owo+ID4gIAlzeW5jX3BvcyA9IChi bGFua193aWR0aCAtIHN5bmNfd2lkdGggKyAxKSAvIDI7Cj4gPiAgCj4gPiAtCWJvcmRlciA9ICht b2RlLT5oZGlzcGxheSAtIHdpZHRoICsgMSkgLyAyOwo+ID4gKwlib3JkZXIgPSAoYWRqdXN0ZWRf bW9kZS0+aGRpc3BsYXkgLSB3aWR0aCArIDEpIC8gMjsKPiA+ICAJYm9yZGVyICs9IGJvcmRlciAm IDE7IC8qIG1ha2UgdGhlIGJvcmRlciBldmVuICovCj4gPiAgCj4gPiAtCW1vZGUtPmNydGNfaGRp c3BsYXkgPSB3aWR0aDsKPiA+IC0JbW9kZS0+Y3J0Y19oYmxhbmtfc3RhcnQgPSB3aWR0aCArIGJv cmRlcjsKPiA+IC0JbW9kZS0+Y3J0Y19oYmxhbmtfZW5kID0gbW9kZS0+Y3J0Y19oYmxhbmtfc3Rh cnQgKyBibGFua193aWR0aDsKPiA+ICsJYWRqdXN0ZWRfbW9kZS0+Y3J0Y19oZGlzcGxheSA9IHdp ZHRoOwo+ID4gKwlhZGp1c3RlZF9tb2RlLT5jcnRjX2hibGFua19zdGFydCA9IHdpZHRoICsgYm9y ZGVyOwo+ID4gKwlhZGp1c3RlZF9tb2RlLT5jcnRjX2hibGFua19lbmQgPSBhZGp1c3RlZF9tb2Rl LT5jcnRjX2hibGFua19zdGFydCArIGJsYW5rX3dpZHRoOwo+ID4gIAo+ID4gLQltb2RlLT5jcnRj X2hzeW5jX3N0YXJ0ID0gbW9kZS0+Y3J0Y19oYmxhbmtfc3RhcnQgKyBzeW5jX3BvczsKPiA+IC0J bW9kZS0+Y3J0Y19oc3luY19lbmQgPSBtb2RlLT5jcnRjX2hzeW5jX3N0YXJ0ICsgc3luY193aWR0 aDsKPiA+ICsJYWRqdXN0ZWRfbW9kZS0+Y3J0Y19oc3luY19zdGFydCA9IGFkanVzdGVkX21vZGUt PmNydGNfaGJsYW5rX3N0YXJ0ICsgc3luY19wb3M7Cj4gPiArCWFkanVzdGVkX21vZGUtPmNydGNf aHN5bmNfZW5kID0gYWRqdXN0ZWRfbW9kZS0+Y3J0Y19oc3luY19zdGFydCArIHN5bmNfd2lkdGg7 Cj4gPiAgfQo+ID4gIAo+ID4gIHN0YXRpYyB2b2lkCj4gPiAtY2VudHJlX3ZlcnRpY2FsbHkoc3Ry dWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUsCj4gPiArY2VudHJlX3ZlcnRpY2FsbHkoc3RydWN0 IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21vZGUsCj4gPiAgCQkgIGludCBoZWlnaHQpCj4g PiAgewo+ID4gIAl1MzIgYm9yZGVyLCBzeW5jX3BvcywgYmxhbmtfd2lkdGgsIHN5bmNfd2lkdGg7 Cj4gPiAgCj4gPiAgCS8qIGtlZXAgdGhlIHZzeW5jIGFuZCB2Ymxhbmsgd2lkdGhzIGNvbnN0YW50 ICovCj4gPiAtCXN5bmNfd2lkdGggPSBtb2RlLT5jcnRjX3ZzeW5jX2VuZCAtIG1vZGUtPmNydGNf dnN5bmNfc3RhcnQ7Cj4gPiAtCWJsYW5rX3dpZHRoID0gbW9kZS0+Y3J0Y192YmxhbmtfZW5kIC0g bW9kZS0+Y3J0Y192Ymxhbmtfc3RhcnQ7Cj4gPiArCXN5bmNfd2lkdGggPSBhZGp1c3RlZF9tb2Rl LT5jcnRjX3ZzeW5jX2VuZCAtIGFkanVzdGVkX21vZGUtPmNydGNfdnN5bmNfc3RhcnQ7Cj4gPiAr CWJsYW5rX3dpZHRoID0gYWRqdXN0ZWRfbW9kZS0+Y3J0Y192YmxhbmtfZW5kIC0gYWRqdXN0ZWRf bW9kZS0+Y3J0Y192Ymxhbmtfc3RhcnQ7Cj4gPiAgCXN5bmNfcG9zID0gKGJsYW5rX3dpZHRoIC0g c3luY193aWR0aCArIDEpIC8gMjsKPiA+ICAKPiA+IC0JYm9yZGVyID0gKG1vZGUtPnZkaXNwbGF5 IC0gaGVpZ2h0ICsgMSkgLyAyOwo+ID4gKwlib3JkZXIgPSAoYWRqdXN0ZWRfbW9kZS0+dmRpc3Bs YXkgLSBoZWlnaHQgKyAxKSAvIDI7Cj4gPiAgCj4gPiAtCW1vZGUtPmNydGNfdmRpc3BsYXkgPSBo ZWlnaHQ7Cj4gPiAtCW1vZGUtPmNydGNfdmJsYW5rX3N0YXJ0ID0gaGVpZ2h0ICsgYm9yZGVyOwo+ ID4gLQltb2RlLT5jcnRjX3ZibGFua19lbmQgPSBtb2RlLT5jcnRjX3ZibGFua19zdGFydCArIGJs YW5rX3dpZHRoOwo+ID4gKwlhZGp1c3RlZF9tb2RlLT5jcnRjX3ZkaXNwbGF5ID0gaGVpZ2h0Owo+ ID4gKwlhZGp1c3RlZF9tb2RlLT5jcnRjX3ZibGFua19zdGFydCA9IGhlaWdodCArIGJvcmRlcjsK PiA+ICsJYWRqdXN0ZWRfbW9kZS0+Y3J0Y192YmxhbmtfZW5kID0gYWRqdXN0ZWRfbW9kZS0+Y3J0 Y192Ymxhbmtfc3RhcnQgKyBibGFua193aWR0aDsKPiA+ICAKPiA+IC0JbW9kZS0+Y3J0Y192c3lu Y19zdGFydCA9IG1vZGUtPmNydGNfdmJsYW5rX3N0YXJ0ICsgc3luY19wb3M7Cj4gPiAtCW1vZGUt PmNydGNfdnN5bmNfZW5kID0gbW9kZS0+Y3J0Y192c3luY19zdGFydCArIHN5bmNfd2lkdGg7Cj4g PiArCWFkanVzdGVkX21vZGUtPmNydGNfdnN5bmNfc3RhcnQgPSBhZGp1c3RlZF9tb2RlLT5jcnRj X3ZibGFua19zdGFydCArIHN5bmNfcG9zOwo+ID4gKwlhZGp1c3RlZF9tb2RlLT5jcnRjX3ZzeW5j X2VuZCA9IGFkanVzdGVkX21vZGUtPmNydGNfdnN5bmNfc3RhcnQgKyBzeW5jX3dpZHRoOwo+ID4g IH0KPiA+ICAKPiA+ICBzdGF0aWMgaW5saW5lIHUzMiBwYW5lbF9maXR0ZXJfc2NhbGluZyh1MzIg c291cmNlLCB1MzIgdGFyZ2V0KQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3Nkdm8uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nkdm8uYwo+ID4gaW5k ZXggM2E3MGMyZi4uODFlOTMyNSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3Nkdm8uYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5j Cj4gPiBAQCAtNjAzLDExICs2MDMsMTEgQEAgbG9nX2ZhaWw6Cj4gPiAgCXJldHVybiBmYWxzZTsK PiA+ICB9Cj4gPiAgCj4gPiAtc3RhdGljIGludCBpbnRlbF9zZHZvX2dldF9waXhlbF9tdWx0aXBs aWVyKHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQo+ID4gK3N0YXRpYyBpbnQgaW50ZWxf c2R2b19nZXRfcGl4ZWxfbXVsdGlwbGllcihjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAq YWRqdXN0ZWRfbW9kZSkKPiA+ICB7Cj4gPiAtCWlmIChtb2RlLT5jbG9jayA+PSAxMDAwMDApCj4g PiArCWlmIChhZGp1c3RlZF9tb2RlLT5jbG9jayA+PSAxMDAwMDApCj4gPiAgCQlyZXR1cm4gMTsK PiA+IC0JZWxzZSBpZiAobW9kZS0+Y2xvY2sgPj0gNTAwMDApCj4gPiArCWVsc2UgaWYgKGFkanVz dGVkX21vZGUtPmNsb2NrID49IDUwMDAwKQo+ID4gIAkJcmV0dXJuIDI7Cj4gPiAgCWVsc2UKPiA+ ICAJCXJldHVybiA0Owo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3Nwcml0ZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKPiA+IGluZGV4 IGE1ZTU5OWIuLjIzOWFmYTggMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9zcHJpdGUuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRl LmMKPiA+IEBAIC01MywxMyArNTMsMTUgQEAgZm9ybWF0X2lzX3l1dih1aW50MzJfdCBmb3JtYXQp Cj4gPiAgCX0KPiA+ICB9Cj4gPiAgCj4gPiAtc3RhdGljIGludCB1c2Vjc190b19zY2FubGluZXMo Y29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUsIGludCB1c2VjcykKPiA+ICtzdGF0 aWMgaW50IHVzZWNzX3RvX3NjYW5saW5lcyhjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAq YWRqdXN0ZWRfbW9kZSwKPiA+ICsJCQkgICAgICBpbnQgdXNlY3MpCj4gPiAgewo+ID4gIAkvKiBw YXJhbm9pYSAqLwo+ID4gLQlpZiAoIW1vZGUtPmNydGNfaHRvdGFsKQo+ID4gKwlpZiAoIWFkanVz dGVkX21vZGUtPmNydGNfaHRvdGFsKQo+ID4gIAkJcmV0dXJuIDE7Cj4gPiAgCj4gPiAtCXJldHVy biBESVZfUk9VTkRfVVAodXNlY3MgKiBtb2RlLT5jcnRjX2Nsb2NrLCAxMDAwICogbW9kZS0+Y3J0 Y19odG90YWwpOwo+ID4gKwlyZXR1cm4gRElWX1JPVU5EX1VQKHVzZWNzICogYWRqdXN0ZWRfbW9k ZS0+Y3J0Y19jbG9jaywKPiA+ICsJCQkgICAgMTAwMCAqIGFkanVzdGVkX21vZGUtPmNydGNfaHRv dGFsKTsKPiA+ICB9Cj4gPiAgCj4gPiAgLyoqCj4gCgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVs IE9UQwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRl bC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=