From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 1/5] drm/i915: Move all the DP compliance data to a separate struct Date: Fri, 09 Dec 2016 12:00:10 +0200 Message-ID: <87pol1v2vp.fsf@intel.com> References: <1481250200-30621-1-git-send-email-manasi.d.navare@intel.com> <1481250200-30621-2-git-send-email-manasi.d.navare@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1481250200-30621-2-git-send-email-manasi.d.navare@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Manasi Navare , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Cc: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCAwOSBEZWMgMjAxNiwgTWFuYXNpIE5hdmFyZSA8bWFuYXNpLmQubmF2YXJlQGludGVs LmNvbT4gd3JvdGU6Cj4gVGhpcyBwYXRjaCBkb2VzIG5vdCBjaGFuZ2UgYW55dGhpbmcgZnVuY3Rp b25hbGx5LCBqdXN0IGNsZWFucyB1cAo+IHRoZSBEUCBjb21wbGlhbmNlIHJlbGF0ZWQgdmFyaWFi bGVzIGFuZCBzdG9yZXMgdGhlbSBhbGwgdG9nZXRoZXIKPiBpbiBhIHNlcGFyYXRlIHN0cnVjdCBp bnRlbF9kcF9jb21wbGlhbmNlLiBUaGVyZSBpcyBhbm90aGVyIHN0cnVjdAo+IGludGVsX2RwX2Nv bXBsaWFuY2VfZGF0YSB0byBzdG9yZSBhbGwgdGhlIHRlc3QgZGF0YS4gVGhpcyBtYWtlcyBpdCBl YXN5IHRvCj4gcmVzZXQgdGhlIGNvbXBsaWFuY2UgdmFyaWFibGVzIHRocm91Z2ggYSBtZW1zZXQg aW5zdGVhZCBvZgo+IGluZGl2aWR1YWwgcmVzZXR0aW5nLgo+Cj4gU2lnbmVkLW9mZi1ieTogTWFu YXNpIE5hdmFyZSA8bWFuYXNpLmQubmF2YXJlQGludGVsLmNvbT4KPiBDYzogSmFuaSBOaWt1bGEg PGphbmkubmlrdWxhQGxpbnV4LmludGVsLmNvbT4KPiBDYzogRGFuaWVsIFZldHRlciA8ZGFuaWVs LnZldHRlckBmZndsLmNoPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVn ZnMuYyB8IDEzICsrKysrKysrLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAu YyAgICAgfCAyNCArKysrKysrKysrLS0tLS0tLS0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmggICAgfCAxNCArKysrKysrKysrKy0tLQo+ICAzIGZpbGVzIGNoYW5nZWQs IDI5IGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kZWJ1Z2ZzLmMKPiBpbmRleCBhNzQ2MTMwLi5iMmZmNTMyIDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kZWJ1Z2ZzLmMKPiBAQCAtNDQ2Myw5ICs0NDYzLDkgQEAgc3RhdGljIHNzaXplX3Qg aTkxNV9kaXNwbGF5cG9ydF90ZXN0X2FjdGl2ZV93cml0ZShzdHJ1Y3QgZmlsZSAqZmlsZSwKPiAg CQkJICogdGVzdGluZyBjb2RlLCBvbmx5IGFjY2VwdCBhbiBhY3R1YWwgdmFsdWUgb2YgMSBoZXJl Cj4gIAkJCSAqLwo+ICAJCQlpZiAodmFsID09IDEpCj4gLQkJCQlpbnRlbF9kcC0+Y29tcGxpYW5j ZV90ZXN0X2FjdGl2ZSA9IDE7Cj4gKwkJCQlpbnRlbF9kcC0+Y29tcGxpYW5jZS50ZXN0X2FjdGl2 ZSA9IDE7Cj4gIAkJCWVsc2UKPiAtCQkJCWludGVsX2RwLT5jb21wbGlhbmNlX3Rlc3RfYWN0aXZl ID0gMDsKPiArCQkJCWludGVsX2RwLT5jb21wbGlhbmNlLnRlc3RfYWN0aXZlID0gMDsKPiAgCQl9 Cj4gIAl9Cj4gIG91dDoKPiBAQCAtNDQ5Miw3ICs0NDkyLDcgQEAgc3RhdGljIGludCBpOTE1X2Rp c3BsYXlwb3J0X3Rlc3RfYWN0aXZlX3Nob3coc3RydWN0IHNlcV9maWxlICptLCB2b2lkICpkYXRh KQo+ICAJCWlmIChjb25uZWN0b3ItPnN0YXR1cyA9PSBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5lY3Rl ZCAmJgo+ICAJCSAgICBjb25uZWN0b3ItPmVuY29kZXIgIT0gTlVMTCkgewo+ICAJCQlpbnRlbF9k cCA9IGVuY190b19pbnRlbF9kcChjb25uZWN0b3ItPmVuY29kZXIpOwo+IC0JCQlpZiAoaW50ZWxf ZHAtPmNvbXBsaWFuY2VfdGVzdF9hY3RpdmUpCj4gKwkJCWlmIChpbnRlbF9kcC0+Y29tcGxpYW5j ZS50ZXN0X2FjdGl2ZSkKPiAgCQkJCXNlcV9wdXRzKG0sICIxIik7Cj4gIAkJCWVsc2UKPiAgCQkJ CXNlcV9wdXRzKG0sICIwIik7Cj4gQEAgLTQ1MzYsNyArNDUzNiwxMCBAQCBzdGF0aWMgaW50IGk5 MTVfZGlzcGxheXBvcnRfdGVzdF9kYXRhX3Nob3coc3RydWN0IHNlcV9maWxlICptLCB2b2lkICpk YXRhKQo+ICAJCWlmIChjb25uZWN0b3ItPnN0YXR1cyA9PSBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5l Y3RlZCAmJgo+ICAJCSAgICBjb25uZWN0b3ItPmVuY29kZXIgIT0gTlVMTCkgewo+ICAJCQlpbnRl bF9kcCA9IGVuY190b19pbnRlbF9kcChjb25uZWN0b3ItPmVuY29kZXIpOwo+IC0JCQlzZXFfcHJp bnRmKG0sICIlbHgiLCBpbnRlbF9kcC0+Y29tcGxpYW5jZV90ZXN0X2RhdGEpOwo+ICsJCQlpZiAo aW50ZWxfZHAtPmNvbXBsaWFuY2UudGVzdF90eXBlID09Cj4gKwkJCSAgICBEUF9URVNUX0xJTktf RURJRF9SRUFEKQo+ICsJCQkJc2VxX3ByaW50ZihtLCAiJWx4IiwKPiArCQkJCQkgICBpbnRlbF9k cC0+Y29tcGxpYW5jZS50ZXN0X2RhdGEuZWRpZCk7CgpUaGUgY29tbWl0IG1lc3NhZ2Ugc2F5cyBu byBmdW5jdGlvbmFsIGNoYW5nZXMsIGJ1dCB0aGlzIGlzIG9uZS4gUHJvYmFibHkKYmV0dGVyIHRv IG1ha2UgdGhpcyBjaGFuZ2Ugc2VwYXJhdGVseS4KCldpdGggdGhhdCBmaXhlZCwKClJldmlld2Vk LWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgoKCj4gIAkJfSBlbHNlCj4g IAkJCXNlcV9wdXRzKG0sICIwIik7Cj4gIAl9Cj4gQEAgLTQ1NzUsNyArNDU3OCw3IEBAIHN0YXRp YyBpbnQgaTkxNV9kaXNwbGF5cG9ydF90ZXN0X3R5cGVfc2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0s IHZvaWQgKmRhdGEpCj4gIAkJaWYgKGNvbm5lY3Rvci0+c3RhdHVzID09IGNvbm5lY3Rvcl9zdGF0 dXNfY29ubmVjdGVkICYmCj4gIAkJICAgIGNvbm5lY3Rvci0+ZW5jb2RlciAhPSBOVUxMKSB7Cj4g IAkJCWludGVsX2RwID0gZW5jX3RvX2ludGVsX2RwKGNvbm5lY3Rvci0+ZW5jb2Rlcik7Cj4gLQkJ CXNlcV9wcmludGYobSwgIiUwMmx4IiwgaW50ZWxfZHAtPmNvbXBsaWFuY2VfdGVzdF90eXBlKTsK PiArCQkJc2VxX3ByaW50ZihtLCAiJTAybHgiLCBpbnRlbF9kcC0+Y29tcGxpYW5jZS50ZXN0X3R5 cGUpOwo+ICAJCX0gZWxzZQo+ICAJCQlzZXFfcHV0cyhtLCAiMCIpOwo+ICAJfQo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHAuYwo+IGluZGV4IGRiNzViYjkuLmMxZTEwN2MgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2RwLmMKPiBAQCAtMzgzNCw3ICszODM0LDcgQEAgc3RhdGljIHVpbnQ4X3QgaW50ZWxf ZHBfYXV0b3Rlc3RfZWRpZChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICAJCQlEUk1fREVC VUdfS01TKCJFRElEIHJlYWQgaGFkICVkIE5BQ0tzLCAlZCBERUZFUnNcbiIsCj4gIAkJCQkgICAg ICBpbnRlbF9kcC0+YXV4LmkyY19uYWNrX2NvdW50LAo+ICAJCQkJICAgICAgaW50ZWxfZHAtPmF1 eC5pMmNfZGVmZXJfY291bnQpOwo+IC0JCWludGVsX2RwLT5jb21wbGlhbmNlX3Rlc3RfZGF0YSA9 IElOVEVMX0RQX1JFU09MVVRJT05fRkFJTFNBRkU7Cj4gKwkJaW50ZWxfZHAtPmNvbXBsaWFuY2Uu dGVzdF9kYXRhLmVkaWQgPSBJTlRFTF9EUF9SRVNPTFVUSU9OX0ZBSUxTQUZFOwo+ICAJfSBlbHNl IHsKPiAgCQlzdHJ1Y3QgZWRpZCAqYmxvY2sgPSBpbnRlbF9jb25uZWN0b3ItPmRldGVjdF9lZGlk Owo+ICAKPiBAQCAtMzg1MCwxMSArMzg1MCwxMSBAQCBzdGF0aWMgdWludDhfdCBpbnRlbF9kcF9h dXRvdGVzdF9lZGlkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gIAkJCURSTV9ERUJVR19L TVMoIkZhaWxlZCB0byB3cml0ZSBFRElEIGNoZWNrc3VtXG4iKTsKPiAgCj4gIAkJdGVzdF9yZXN1 bHQgPSBEUF9URVNUX0FDSyB8IERQX1RFU1RfRURJRF9DSEVDS1NVTV9XUklURTsKPiAtCQlpbnRl bF9kcC0+Y29tcGxpYW5jZV90ZXN0X2RhdGEgPSBJTlRFTF9EUF9SRVNPTFVUSU9OX1NUQU5EQVJE Owo+ICsJCWludGVsX2RwLT5jb21wbGlhbmNlLnRlc3RfZGF0YS5lZGlkID0gSU5URUxfRFBfUkVT T0xVVElPTl9TVEFOREFSRDsKPiAgCX0KPiAgCj4gIAkvKiBTZXQgdGVzdCBhY3RpdmUgZmxhZyBo ZXJlIHNvIHVzZXJzcGFjZSBkb2Vzbid0IGludGVycnVwdCB0aGluZ3MgKi8KPiAtCWludGVsX2Rw LT5jb21wbGlhbmNlX3Rlc3RfYWN0aXZlID0gMTsKPiArCWludGVsX2RwLT5jb21wbGlhbmNlLnRl c3RfYWN0aXZlID0gMTsKPiAgCj4gIAlyZXR1cm4gdGVzdF9yZXN1bHQ7Cj4gIH0KPiBAQCAtMzg4 MCwyMiArMzg4MCwyMiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kcF9oYW5kbGVfdGVzdF9yZXF1ZXN0 KHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gIAlzd2l0Y2ggKHJ4ZGF0YSkgewo+ICAJY2Fz ZSBEUF9URVNUX0xJTktfVFJBSU5JTkc6Cj4gIAkJRFJNX0RFQlVHX0tNUygiTElOS19UUkFJTklO RyB0ZXN0IHJlcXVlc3RlZFxuIik7Cj4gLQkJaW50ZWxfZHAtPmNvbXBsaWFuY2VfdGVzdF90eXBl ID0gRFBfVEVTVF9MSU5LX1RSQUlOSU5HOwo+ICsJCWludGVsX2RwLT5jb21wbGlhbmNlLnRlc3Rf dHlwZSA9IERQX1RFU1RfTElOS19UUkFJTklORzsKPiAgCQlyZXNwb25zZSA9IGludGVsX2RwX2F1 dG90ZXN0X2xpbmtfdHJhaW5pbmcoaW50ZWxfZHApOwo+ICAJCWJyZWFrOwo+ICAJY2FzZSBEUF9U RVNUX0xJTktfVklERU9fUEFUVEVSTjoKPiAgCQlEUk1fREVCVUdfS01TKCJURVNUX1BBVFRFUk4g dGVzdCByZXF1ZXN0ZWRcbiIpOwo+IC0JCWludGVsX2RwLT5jb21wbGlhbmNlX3Rlc3RfdHlwZSA9 IERQX1RFU1RfTElOS19WSURFT19QQVRURVJOOwo+ICsJCWludGVsX2RwLT5jb21wbGlhbmNlLnRl c3RfdHlwZSA9IERQX1RFU1RfTElOS19WSURFT19QQVRURVJOOwo+ICAJCXJlc3BvbnNlID0gaW50 ZWxfZHBfYXV0b3Rlc3RfdmlkZW9fcGF0dGVybihpbnRlbF9kcCk7Cj4gIAkJYnJlYWs7Cj4gIAlj YXNlIERQX1RFU1RfTElOS19FRElEX1JFQUQ6Cj4gIAkJRFJNX0RFQlVHX0tNUygiRURJRCB0ZXN0 IHJlcXVlc3RlZFxuIik7Cj4gLQkJaW50ZWxfZHAtPmNvbXBsaWFuY2VfdGVzdF90eXBlID0gRFBf VEVTVF9MSU5LX0VESURfUkVBRDsKPiArCQlpbnRlbF9kcC0+Y29tcGxpYW5jZS50ZXN0X3R5cGUg PSBEUF9URVNUX0xJTktfRURJRF9SRUFEOwo+ICAJCXJlc3BvbnNlID0gaW50ZWxfZHBfYXV0b3Rl c3RfZWRpZChpbnRlbF9kcCk7Cj4gIAkJYnJlYWs7Cj4gIAljYXNlIERQX1RFU1RfTElOS19QSFlf VEVTVF9QQVRURVJOOgo+ICAJCURSTV9ERUJVR19LTVMoIlBIWV9QQVRURVJOIHRlc3QgcmVxdWVz dGVkXG4iKTsKPiAtCQlpbnRlbF9kcC0+Y29tcGxpYW5jZV90ZXN0X3R5cGUgPSBEUF9URVNUX0xJ TktfUEhZX1RFU1RfUEFUVEVSTjsKPiArCQlpbnRlbF9kcC0+Y29tcGxpYW5jZS50ZXN0X3R5cGUg PSBEUF9URVNUX0xJTktfUEhZX1RFU1RfUEFUVEVSTjsKPiAgCQlyZXNwb25zZSA9IGludGVsX2Rw X2F1dG90ZXN0X3BoeV9wYXR0ZXJuKGludGVsX2RwKTsKPiAgCQlicmVhazsKPiAgCWRlZmF1bHQ6 Cj4gQEAgLTQwMTksNyArNDAxOSw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2RwX2hhbmRsZV90ZXN0 X3JlcXVlc3Qoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiAgCQlyZXR1cm47Cj4gIAo+ICAJ LyogaWYgbGluayB0cmFpbmluZyBpcyByZXF1ZXN0ZWQgd2Ugc2hvdWxkIHBlcmZvcm0gaXQgYWx3 YXlzICovCj4gLQlpZiAoKGludGVsX2RwLT5jb21wbGlhbmNlX3Rlc3RfdHlwZSA9PSBEUF9URVNU X0xJTktfVFJBSU5JTkcpIHx8Cj4gKwlpZiAoKGludGVsX2RwLT5jb21wbGlhbmNlLnRlc3RfdHlw ZSA9PSBEUF9URVNUX0xJTktfVFJBSU5JTkcpIHx8Cj4gIAkgICAgKCFkcm1fZHBfY2hhbm5lbF9l cV9vayhsaW5rX3N0YXR1cywgaW50ZWxfZHAtPmxhbmVfY291bnQpKSkgewo+ICAJCURSTV9ERUJV R19LTVMoIiVzOiBjaGFubmVsIEVRIG5vdCBvaywgcmV0cmFpbmluZ1xuIiwKPiAgCQkJICAgICAg aW50ZWxfZW5jb2Rlci0+YmFzZS5uYW1lKTsKPiBAQCAtNDA1Myw5ICs0MDUzLDcgQEAgc3RhdGlj IHZvaWQgaW50ZWxfZHBfaGFuZGxlX3Rlc3RfcmVxdWVzdChzdHJ1Y3QgaW50ZWxfZHAgKmludGVs X2RwKQo+ICAJICogQ2xlYXJpbmcgY29tcGxpYW5jZSB0ZXN0IHZhcmlhYmxlcyB0byBhbGxvdyBj YXB0dXJpbmcKPiAgCSAqIG9mIHZhbHVlcyBmb3IgbmV4dCBhdXRvbWF0ZWQgdGVzdCByZXF1ZXN0 Lgo+ICAJICovCj4gLQlpbnRlbF9kcC0+Y29tcGxpYW5jZV90ZXN0X2FjdGl2ZSA9IDA7Cj4gLQlp bnRlbF9kcC0+Y29tcGxpYW5jZV90ZXN0X3R5cGUgPSAwOwo+IC0JaW50ZWxfZHAtPmNvbXBsaWFu Y2VfdGVzdF9kYXRhID0gMDsKPiArCW1lbXNldCgmaW50ZWxfZHAtPmNvbXBsaWFuY2UsIDAsIHNp emVvZihpbnRlbF9kcC0+Y29tcGxpYW5jZSkpOwo+ICAKPiAgCS8qCj4gIAkgKiBOb3cgcmVhZCB0 aGUgRFBDRCB0byBzZWUgaWYgaXQncyBhY3R1YWxseSBydW5uaW5nCj4gQEAgLTQzNzIsOSArNDM3 MCw3IEBAIHN0YXRpYyBib29sIGludGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0ZWQoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJCXN0YXR1cyA9IGNvbm5lY3Rvcl9zdGF0dXNf ZGlzY29ubmVjdGVkOwo+ICAKPiAgCWlmIChzdGF0dXMgPT0gY29ubmVjdG9yX3N0YXR1c19kaXNj b25uZWN0ZWQpIHsKPiAtCQlpbnRlbF9kcC0+Y29tcGxpYW5jZV90ZXN0X2FjdGl2ZSA9IDA7Cj4g LQkJaW50ZWxfZHAtPmNvbXBsaWFuY2VfdGVzdF90eXBlID0gMDsKPiAtCQlpbnRlbF9kcC0+Y29t cGxpYW5jZV90ZXN0X2RhdGEgPSAwOwo+ICsJCW1lbXNldCgmaW50ZWxfZHAtPmNvbXBsaWFuY2Us IDAsIHNpemVvZihpbnRlbF9kcC0+Y29tcGxpYW5jZSkpOwo+ICAKPiAgCQlpZiAoaW50ZWxfZHAt PmlzX21zdCkgewo+ICAJCQlEUk1fREVCVUdfS01TKCJNU1QgZGV2aWNlIG1heSBoYXZlIGRpc2Fw cGVhcmVkICVkIHZzICVkXG4iLAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gaW5kZXggOGY0 ZGRjYS4uZjhjNzA0NiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTg4NCw2 ICs4ODQsMTYgQEAgc3RydWN0IGludGVsX2RwX2Rlc2Mgewo+ICAJdTggc3dfbWlub3JfcmV2Owo+ ICB9IF9fcGFja2VkOwo+ICAKPiArc3RydWN0IGludGVsX2RwX2NvbXBsaWFuY2VfZGF0YSB7Cj4g Kwl1bnNpZ25lZCBsb25nIGVkaWQ7Cj4gK307Cj4gKwo+ICtzdHJ1Y3QgaW50ZWxfZHBfY29tcGxp YW5jZSB7Cj4gKwl1bnNpZ25lZCBsb25nIHRlc3RfdHlwZTsKPiArCXN0cnVjdCBpbnRlbF9kcF9j b21wbGlhbmNlX2RhdGEgdGVzdF9kYXRhOwo+ICsJYm9vbCB0ZXN0X2FjdGl2ZTsKPiArfTsKPiAr Cj4gIHN0cnVjdCBpbnRlbF9kcCB7Cj4gIAlpOTE1X3JlZ190IG91dHB1dF9yZWc7Cj4gIAlpOTE1 X3JlZ190IGF1eF9jaF9jdGxfcmVnOwo+IEBAIC05NTksOSArOTY5LDcgQEAgc3RydWN0IGludGVs X2RwIHsKPiAgCXZvaWQgKCpwcmVwYXJlX2xpbmtfcmV0cmFpbikoc3RydWN0IGludGVsX2RwICpp bnRlbF9kcCk7Cj4gIAo+ICAJLyogRGlzcGxheXBvcnQgY29tcGxpYW5jZSB0ZXN0aW5nICovCj4g LQl1bnNpZ25lZCBsb25nIGNvbXBsaWFuY2VfdGVzdF90eXBlOwo+IC0JdW5zaWduZWQgbG9uZyBj b21wbGlhbmNlX3Rlc3RfZGF0YTsKPiAtCWJvb2wgY29tcGxpYW5jZV90ZXN0X2FjdGl2ZTsKPiAr CXN0cnVjdCBpbnRlbF9kcF9jb21wbGlhbmNlIGNvbXBsaWFuY2U7Cj4gIH07Cj4gIAo+ICBzdHJ1 Y3QgaW50ZWxfbHNwY29uIHsKCi0tIApKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgVGVj aG5vbG9neSBDZW50ZXIKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwt Z2Z4Cg==