From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: Re: [PATCH 6/6] drm/i915/tgl: Add Clear Color supoort for TGL Render Decompression Date: Tue, 17 Sep 2019 14:52:45 -0700 Message-ID: <20190917215245.GB28384@mdroper-desk1.amr.corp.intel.com> References: <20190917121155.13197-1-radhakrishna.sripada@intel.com> <20190917121155.13197-7-radhakrishna.sripada@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 37DFF6ED84 for ; Tue, 17 Sep 2019 21:52:45 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190917121155.13197-7-radhakrishna.sripada@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Radhakrishna Sripada Cc: nanley.g.chery@intel.com, intel-gfx@lists.freedesktop.org, dhinakaran.pandiyan@intel.com, ville.syrjala@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBTZXAgMTcsIDIwMTkgYXQgMDU6MTE6NTVBTSAtMDcwMCwgUmFkaGFrcmlzaG5hIFNy aXBhZGEgd3JvdGU6Cj4gUmVuZGVyIERlY29tcHJlc3Npb24gaXMgc3VwcG9ydGVkIHdpdGggWS1U aWxlZCBtYWluIHN1cmZhY2UuIFRoZSBDQ1MgaXMKPiBsaW5lYXIgYW5kIGhhcyA0IGJpdHMgb2Yg ZGF0YSBmb3IgZWFjaCBtYWluIHN1cmZhY2UgY2FjaGUgbGluZSBwYWlyLCBhCj4gcmF0aW8gb2Yg MToyNTYuIEFkZGl0aW9uYWwgQ2xlYXIgQ29sb3IgaW5mb3JtYXRpb24gaXMgcGFzc2VkIGZyb20g dGhlCj4gdXNlci1zcGFjZSB0aHJvdWdoIGFuIG9mZnNldCBpbiB0aGUgR0VNIEJPLiBBZGQgYSBu ZXcgbW9kaWZpZXIgdG8gaWRlbnRpZnkKPiBhbmQgcGFyc2UgbmV3IENsZWFyIENvbG9yIGluZm9y bWF0aW9uIGFuZCBleHRlbmQgR2VuMTIgcmVuZGVyIGRlY29tcHJlc3Npb24KPiBmdW5jdGlvbmFs aXR5IHRvIHRoZSBuZXdseSBhZGRlZCBtb2RpZmllci4KPiAKPiBDYzogRGhpbmFrYXJhbiBQYW5k aXlhbiA8ZGhpbmFrYXJhbi5wYW5kaXlhbkBpbnRlbC5jb20+Cj4gQ2M6IFZpbGxlIFN5cmphbGEg PHZpbGxlLnN5cmphbGFAaW50ZWwuY29tPgo+IENjOiBTaGFzaGFuayBTaGFybWEgPHNoYXNoYW5r LnNoYXJtYUBpbnRlbC5jb20+Cj4gQ2M6IFJhZmFlbCBBbnRvZ25vbGxpIDxyYWZhZWwuYW50b2du b2xsaUBpbnRlbC5jb20+Cj4gQ2M6IE1hdHQgUm9wZXIgPG1hdHRoZXcuZC5yb3BlckBpbnRlbC5j b20+Cj4gQ2M6IE5hbmxleSBHIENoZXJ5IDxuYW5sZXkuZy5jaGVyeUBpbnRlbC5jb20+Cj4gU2ln bmVkLW9mZi1ieTogUmFkaGFrcmlzaG5hIFNyaXBhZGEgPHJhZGhha3Jpc2huYS5zcmlwYWRhQGlu dGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNw bGF5LmMgIHwgNDcgKysrKysrKysrKysrKysrKystLQo+ICAuLi4vZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5X3R5cGVzLmggICAgfCAgMyArKwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9k aXNwbGF5L2ludGVsX3Nwcml0ZS5jICAgfCAxMCArKystCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcmVnLmggICAgICAgICAgICAgICB8IDEzICsrKysrCj4gIDQgZmlsZXMgY2hhbmdlZCwg NjkgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+IGluZGV4IDJkYTcyMWE2YWJhYi4uNzI1Yjk3 MjRkYTQ5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf ZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNw bGF5LmMKPiBAQCAtMTkxMyw2ICsxOTEzLDcgQEAgaW50ZWxfdGlsZV93aWR0aF9ieXRlcyhjb25z dCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwgaW50IGNvbG9yX3BsYW5lKQo+ICAJCS8qIGZh bGwgdGhyb3VnaCAqLwo+ICAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19D Q1M6Cj4gIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX01DX0NDUzoKPiArCWNh c2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0NDOgo+ICAJCWlmIChjb2xv cl9wbGFuZSA9PSAxKQo+ICAJCQlyZXR1cm4gY3BwOwo+ICAJCS8qIGZhbGwgdGhyb3VnaCAqLwo+ IEBAIC0yMDUxLDYgKzIwNTIsNyBAQCBzdGF0aWMgdW5zaWduZWQgaW50IGludGVsX3N1cmZfYWxp Z25tZW50KGNvbnN0IHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAo+ICAJCXJldHVybiAwOwo+ ICAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1M6Cj4gIAljYXNlIEk5 MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX01DX0NDUzoKPiArCWNhc2UgSTkxNV9GT1JNQVRf TU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0NDOgo+ICAJCXJldHVybiA0ICogNCAqIDEwMjQ7Cj4g IAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUzoKPiAgCWNhc2UgSTkxNV9GT1JNQVRf TU9EX1lmX1RJTEVEX0NDUzoKPiBAQCAtMjI1Niw2ICsyMjU4LDcgQEAgc3RhdGljIGJvb2wgaXNf c3VyZmFjZV9saW5lYXIodTY0IG1vZGlmaWVyLCBpbnQgY29sb3JfcGxhbmUpCj4gIAkJcmV0dXJu IHRydWU7Cj4gIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUzoKPiAg CWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfTUNfQ0NTOgo+ICsJY2FzZSBJOTE1 X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0M6Cj4gIAkJcmV0dXJuIGNvbG9yX3Bs YW5lID09IDE7Cj4gIAlkZWZhdWx0Ogo+ICAJCXJldHVybiBmYWxzZTsKPiBAQCAtMjQ0OCw2ICsy NDUxLDcgQEAgc3RhdGljIHVuc2lnbmVkIGludCBpbnRlbF9mYl9tb2RpZmllcl90b190aWxpbmco dTY0IGZiX21vZGlmaWVyKQo+ICAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9DQ1M6Cj4g IAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUzoKPiAgCWNhc2UgSTkx NV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfTUNfQ0NTOgo+ICsJY2FzZSBJOTE1X0ZPUk1BVF9N T0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0M6Cj4gIAkJcmV0dXJuIEk5MTVfVElMSU5HX1k7Cj4g IAlkZWZhdWx0Ogo+ICAJCXJldHVybiBJOTE1X1RJTElOR19OT05FOwo+IEBAIC0yNDk3LDYgKzI1 MDEsMjEgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0X2luZm8gZ2VuMTJfY2NzX2Zv cm1hdHNbXSA9IHsKPiAgCSAgLmNwcCA9IHsgNCwgMSwgfSwgLmhzdWIgPSAyLCAudnN1YiA9IDMy LCAuaGFzX2FscGhhID0gdHJ1ZSB9LAo+ICB9Owo+ICAKPiArLyoKPiArICogR2VuLTEyIGNvbXBy ZXNzaW9uIHVzZXMgNCBiaXRzIG9mIENDUyBkYXRhIGZvciBlYWNoIGNhY2hlIGxpbmUgcGFpciBp biB0aGUKPiArICogbWFpbiBzdXJmYWNlLiBBbmQgZWFjaCA2NEIgQ0NTIGNhY2hlIGxpbmUgcmVw cmVzZW50cyBhbiBhcmVhIG9mIDR4MSBZLXRpbGVzCj4gKyAqIGluIHRoZSBtYWluIHN1cmZhY2Uu IFdpdGggNCBieXRlIHBpeGVscyBhbmQgZWFjaCBZLXRpbGUgaGF2aW5nIGRpbWVuc2lvbnMgb2YK PiArICogMzJ4MzIgcGl4ZWxzLCB0aGUgcmF0aW8gdHVybnMgb3V0IHRvIDFCIGluIHRoZSBDQ1Mg Zm9yIGV2ZXJ5IDIgeCAzMiBwaXhlbHMgaW4KPiArICogdGhlIG1haW4gc3VyZmFjZS4gQWRkaXRp b25hbCBzdXJmYWNlIGlzIHVzZWQgdG8gcGFzcyB0aGUgQ2xlYXIgQ29sb3IKPiArICogc3RydWN0 dXJlIGZvciB0aGUgZHJpdmVyIHRvIHByb2dyYW0gdGhlIERFLgo+ICsgKi8KPiArc3RhdGljIGNv bnN0IHN0cnVjdCBkcm1fZm9ybWF0X2luZm8gZ2VuMTJfY2NzX2NjX2Zvcm1hdHNbXSA9IHsKPiAr CXsgLmZvcm1hdCA9IERSTV9GT1JNQVRfWFJHQjg4ODgsIC5kZXB0aCA9IDI0LCAubnVtX3BsYW5l cyA9IDMsIC5jcHAgPSB7IDQsIDEsIDB9LCAuaHN1YiA9IDIsIC52c3ViID0gMzIsIH0sCj4gKwl7 IC5mb3JtYXQgPSBEUk1fRk9STUFUX1hCR1I4ODg4LCAuZGVwdGggPSAyNCwgLm51bV9wbGFuZXMg PSAzLCAuY3BwID0geyA0LCAxLCAwfSwgLmhzdWIgPSAyLCAudnN1YiA9IDMyLCB9LAo+ICsJeyAu Zm9ybWF0ID0gRFJNX0ZPUk1BVF9BUkdCODg4OCwgLmRlcHRoID0gMzIsIC5udW1fcGxhbmVzID0g MywgLmNwcCA9IHsgNCwgMSwgMH0sIC5oc3ViID0gMiwgLnZzdWIgPSAzMiwgfSwKPiArCXsgLmZv cm1hdCA9IERSTV9GT1JNQVRfQUJHUjg4ODgsIC5kZXB0aCA9IDMyLCAubnVtX3BsYW5lcyA9IDMs IC5jcHAgPSB7IDQsIDEsIDB9LCAuaHN1YiA9IDIsIC52c3ViID0gMzIsIH0sCgpJIHRoaW5rIHRo ZXNlIGxhc3QgdHdvIHdlcmUgc3VwcG9zZWQgdG8gaGF2ZSAuaGFzX2FscGhhID0gdHJ1ZT8KCj4g K307Cj4gKwo+ICBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9mb3JtYXRfaW5mbyAqCj4gIGxvb2t1 cF9mb3JtYXRfaW5mbyhjb25zdCBzdHJ1Y3QgZHJtX2Zvcm1hdF9pbmZvIGZvcm1hdHNbXSwKPiAg CQkgICBpbnQgbnVtX2Zvcm1hdHMsIHUzMiBmb3JtYXQpCj4gQEAgLTI1MjUsNiArMjU0NCwxMCBA QCBpbnRlbF9nZXRfZm9ybWF0X2luZm8oY29uc3Qgc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIgKmNt ZCkKPiAgCQlyZXR1cm4gbG9va3VwX2Zvcm1hdF9pbmZvKGdlbjEyX2Njc19mb3JtYXRzLAo+ICAJ CQkJCSAgQVJSQVlfU0laRShnZW4xMl9jY3NfZm9ybWF0cyksCj4gIAkJCQkJICBjbWQtPnBpeGVs X2Zvcm1hdCk7Cj4gKwljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19D QzoKPiArCQlyZXR1cm4gbG9va3VwX2Zvcm1hdF9pbmZvKGdlbjEyX2Njc19mb3JtYXRzLAo+ICsJ CQkJCSAgQVJSQVlfU0laRShnZW4xMl9jY3NfY2NfZm9ybWF0cyksCj4gKwkJCQkJICBjbWQtPnBp eGVsX2Zvcm1hdCk7Cj4gIAlkZWZhdWx0Ogo+ICAJCXJldHVybiBOVUxMOwo+ICAJfQo+IEBAIC0y NTM0LDYgKzI1NTcsNyBAQCBib29sIGlzX2Njc19tb2RpZmllcih1NjQgbW9kaWZpZXIpCj4gIHsK PiAgCXJldHVybiBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19D Q1MgfHwKPiAgCSAgICAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4x Ml9NQ19DQ1MgfHwKPiArCSAgICAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxF RF9HRU4xMl9SQ19DQ1NfQ0MgfHwKPiAgCSAgICAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9N T0RfWV9USUxFRF9DQ1MgfHwKPiAgCSAgICAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0Rf WWZfVElMRURfQ0NTOwo+ICB9Cj4gQEAgLTQxMjAsNiArNDE0NCw5IEBAIHN0YXRpYyB1MzIgc2ts X3BsYW5lX2N0bF90aWxpbmcodTY0IGZiX21vZGlmaWVyKQo+ICAJY2FzZSBJOTE1X0ZPUk1BVF9N T0RfWV9USUxFRF9DQ1M6Cj4gIAkJLyogZmFsbCB0aHJvdWdoICovCj4gIAljYXNlIEk5MTVfRk9S TUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUzoKPiArCQlyZXR1cm4gUExBTkVfQ1RMX1RJTEVE X1kgfCBQTEFORV9DVExfUkVOREVSX0RFQ09NUFJFU1NJT05fRU5BQkxFIHwKPiArCQkJSUNMX1BM QU5FX0NUTF9DTEVBUl9DT0xPUl9ESVNBQkxFOwoKSSB0aGluayB0aGlzIG5lZWRzIHRvIGJlIHNx dWFzaGVkIGJhY2sgaW50byB0aGUgcHJldmlvdXMgcGF0Y2ggdGhhdAphZGRlZCBnZW5lcmFsIGdl bjEyIENDUy4KCgo+ICsJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1Nf Q0M6Cj4gIAkJcmV0dXJuIFBMQU5FX0NUTF9USUxFRF9ZIHwgUExBTkVfQ1RMX1JFTkRFUl9ERUNP TVBSRVNTSU9OX0VOQUJMRTsKPiAgCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJf TUNfQ0NTOgo+ICAJCXJldHVybiBQTEFORV9DVExfVElMRURfWSB8IFBMQU5FX0NUTF9NRURJQV9E RUNPTVBSRVNTSU9OX0VOQUJMRTsKPiBAQCAtOTg5Nyw5ICs5OTI0LDEzIEBAIHNreWxha2VfZ2V0 X2luaXRpYWxfcGxhbmVfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ICAJY2FzZSBQ TEFORV9DVExfVElMRURfWToKPiAgCQlwbGFuZV9jb25maWctPnRpbGluZyA9IEk5MTVfVElMSU5H X1k7Cj4gIAkJaWYgKHZhbCAmIFBMQU5FX0NUTF9SRU5ERVJfREVDT01QUkVTU0lPTl9FTkFCTEUp Cj4gLQkJCWZiLT5tb2RpZmllciA9IElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTIgPwo+IC0JCQkJ STkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTIDoKPiAtCQkJCUk5MTVfRk9STUFU X01PRF9ZX1RJTEVEX0NDUzsKPiArCQkJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTIpCj4g KwkJCQlmYi0+bW9kaWZpZXIgPSB2YWwgJgo+ICsJCQkJCUlDTF9QTEFORV9DVExfQ0xFQVJfQ09M T1JfRElTQUJMRSA/Cj4gKwkJCQkJSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NT IDoKPiArCQkJCQlJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0M7Cj4gKwkJ CWVsc2UKPiArCQkJCWZiLT5tb2RpZmllciA9IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUzsK PiAgCQllbHNlIGlmICh2YWwgJiBQTEFORV9DVExfUkVOREVSX0RFQ09NUFJFU1NJT05fRU5BQkxF KQo+ICAJCQlmYi0+bW9kaWZpZXIgPSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9NQ19D Q1M7Cj4gIAkJZWxzZQo+IEBAIC0xNDMyMiw2ICsxNDM1MywxNSBAQCBzdGF0aWMgaW50IGludGVs X3BsYW5lX3Bpbl9mYihzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRlKQo+ICAK PiAgCXBsYW5lX3N0YXRlLT52bWEgPSB2bWE7Cj4gIAo+ICsJaWYgKGZiLT5tb2RpZmllciA9PSBJ OTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0MpIHsKPiArCQl1MzIgKmNjYWRk ciA9IGttYXBfYXRvbWljKGk5MTVfZ2VtX29iamVjdF9nZXRfcGFnZShpbnRlbF9mYl9vYmooZmIp LAo+ICsJCQkJCQkJCSAgZmItPm9mZnNldHNbMl0gPj4gUEFHRV9TSElGVCkpOwo+ICsKCldpbGwg dGhpcyB3b3JrIG9uIGZyYW1lYnVmZmVycyBpbiBzdG9sZW4gbWVtb3J5PyAgTm90IHRoYXQgaXQn cyBsaWtlbHkgYQpyZWd1bGFyIEJJT1Mgd291bGQgYWN0dWFsbHkgc2V0dXAgY29tcHJlc3NlZCBm cmFtZWJ1ZmZlcnMgdG8gYmVnaW4Kd2l0aC4uLgoKPiArCQlwbGFuZV9zdGF0ZS0+Y2N2YWwgPSAo KHU2NCkqKGNjYWRkciArIENDX1ZBTF9ISUdIRVJfT0ZGU0VUKSA8PCAzMikKPiArCQkJCSAgICAg fCAqKGNjYWRkciArIENDX1ZBTF9MT1dFUl9PRkZTRVQpOwoKSXMgdGhlcmUgbW9yZSBkYXRhIGlu IHRoZSBjbGVhciBjb2xvciBwYWdlIGJlc2lkZXMgdGhlIGNvbG9yIGl0c2VsZj8gIElmCnNvLCBt YXliZSB3ZSBzaG91bGQganVzdCB1c2UgYSBzdHJ1Y3QgdG8gbWFrZSB0aGUgbWVtb3J5IGxheW91 dCBleHBsaWNpdD8KCj4gKwkJa3VubWFwX2F0b21pYyhjY2FkZHIpOwo+ICsJfQo+ICsKPiAgCXJl dHVybiAwOwo+ICB9Cj4gIAo+IEBAIC0xNTcwOSw2ICsxNTc0OSw3IEBAIHN0YXRpYyBpbnQgaW50 ZWxfZnJhbWVidWZmZXJfaW5pdChzdHJ1Y3QgaW50ZWxfZnJhbWVidWZmZXIgKmludGVsX2ZiLAo+ ICAJCSAqIHRpbGUgd2lkdGhzLgo+ICAJCSAqLwo+ICAJCWlmICgoZmItPm1vZGlmaWVyID09IEk5 MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUyB8fAo+ICsJCSAgICAgZmItPm1vZGlm aWVyID09IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQyB8fAo+ICAJCSAg ICAgZmItPm1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX01DX0NDUykg JiYKPiAgCQkgICAgaSA9PSAwKQo+ICAJCQlzdHJpZGVfYWxpZ25tZW50ICo9IDQ7Cj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5o IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmgKPiBp bmRleCBkNWNjNGI4MTBkOWUuLmE4MjY5NWEzZTBiOCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaAo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oCj4gQEAgLTU3OSw2ICs1 NzksOSBAQCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgewo+ICAJdTMyIHNsYXZlOwo+ICAKPiAg CXN0cnVjdCBkcm1faW50ZWxfc3ByaXRlX2NvbG9ya2V5IGNrZXk7Cj4gKwo+ICsJLyogQ2xlYXIg Q29sb3IgVmFsdWUgKi8KPiArCXU2NCBjY3ZhbDsKPiAgfTsKPiAgCj4gIHN0cnVjdCBpbnRlbF9p bml0aWFsX3BsYW5lX2NvbmZpZyB7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfc3ByaXRlLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX3Nwcml0ZS5jCj4gaW5kZXggMTY1NTk4NDk1NWNhLi4zNjcyZThiOWMwYmMgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9zcHJpdGUuYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfc3ByaXRlLmMKPiBAQCAtNTQ5LDYg KzU0OSw3IEBAIHNrbF9wcm9ncmFtX3BsYW5lKHN0cnVjdCBpbnRlbF9wbGFuZSAqcGxhbmUsCj4g IAl1MzIgcGxhbmVfY29sb3JfY3RsID0gMDsKPiAgCXVuc2lnbmVkIGxvbmcgaXJxZmxhZ3M7Cj4g IAl1MzIga2V5bXNrLCBrZXltYXg7Cj4gKwl1NjQgY2N2YWwgPSBwbGFuZV9zdGF0ZS0+Y2N2YWw7 Cj4gIAo+ICAJcGxhbmVfY3RsIHw9IHNrbF9wbGFuZV9jdGxfY3J0YyhjcnRjX3N0YXRlKTsKPiAg Cj4gQEAgLTYwOSw2ICs2MTAsMTAgQEAgc2tsX3Byb2dyYW1fcGxhbmUoc3RydWN0IGludGVsX3Bs YW5lICpwbGFuZSwKPiAgCWlmIChmYi0+Zm9ybWF0LT5pc195dXYgJiYgaWNsX2lzX2hkcl9wbGFu ZShkZXZfcHJpdiwgcGxhbmVfaWQpKQo+ICAJCWljbF9wcm9ncmFtX2lucHV0X2NzYyhwbGFuZSwg Y3J0Y19zdGF0ZSwgcGxhbmVfc3RhdGUpOwo+ICAKPiArCWlmIChmYi0+bW9kaWZpZXIgPT0gSTkx NV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0NDKQo+ICsJCWludGVsX3VuY29yZV93 cml0ZTY0X2Z3KCZkZXZfcHJpdi0+dW5jb3JlLAo+ICsJCQkJCVBMQU5FX0NDX1ZBTChwaXBlLCBw bGFuZV9pZCksIGNjdmFsKTsKPiArCj4gIAlza2xfd3JpdGVfcGxhbmVfd20ocGxhbmUsIGNydGNf c3RhdGUpOwo+ICAKPiAgCUk5MTVfV1JJVEVfRlcoUExBTkVfS0VZVkFMKHBpcGUsIHBsYW5lX2lk KSwga2V5LT5taW5fdmFsdWUpOwo+IEBAIC0xNzM4LDcgKzE3NDMsOCBAQCBzdGF0aWMgaW50IHNr bF9wbGFuZV9jaGVja19mYihjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0 ZSwKPiAgCSAgICAgZmItPm1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUyB8 fAo+ICAJICAgICBmYi0+bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lmX1RJTEVEX0NDUyB8 fAo+ICAJICAgICBmYi0+bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJf UkNfQ0NTIHx8Cj4gLQkgICAgIGZiLT5tb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxF RF9HRU4xMl9NQ19DQ1MpKSB7Cj4gKwkgICAgIGZiLT5tb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9N T0RfWV9USUxFRF9HRU4xMl9NQ19DQ1MgfHwKPiArCSAgICAgZmItPm1vZGlmaWVyID09IEk5MTVf Rk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQykpIHsKPiAgCQlEUk1fREVCVUdfS01T KCJZL1lmIHRpbGluZyBub3Qgc3VwcG9ydGVkIGluIElGLUlEIG1vZGVcbiIpOwo+ICAJCXJldHVy biAtRUlOVkFMOwo+ICAJfQo+IEBAIC0yMTUzLDYgKzIxNTksNyBAQCBzdGF0aWMgY29uc3QgdTY0 IHNrbF9wbGFuZV9mb3JtYXRfbW9kaWZpZXJzX2Njc1tdID0gewo+ICBzdGF0aWMgY29uc3QgdTY0 IGdlbjEyX3BsYW5lX2Zvcm1hdF9tb2RpZmllcnNfY2NzW10gPSB7Cj4gIAlJOTE1X0ZPUk1BVF9N T0RfWV9USUxFRF9HRU4xMl9SQ19DQ1MsCj4gIAlJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4x Ml9NQ19DQ1MsCj4gKwlJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0MsCj4g IAlJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRCwKPiAgCUk5MTVfRk9STUFUX01PRF9YX1RJTEVELAo+ ICAJRFJNX0ZPUk1BVF9NT0RfTElORUFSLAo+IEBAIC0yMzIxLDYgKzIzMjgsNyBAQCBzdGF0aWMg Ym9vbCBnZW4xMl9wbGFuZV9mb3JtYXRfbW9kX3N1cHBvcnRlZChzdHJ1Y3QgZHJtX3BsYW5lICpf cGxhbmUsCj4gIAljYXNlIEk5MTVfRk9STUFUX01PRF9YX1RJTEVEOgo+ICAJY2FzZSBJOTE1X0ZP Uk1BVF9NT0RfWV9USUxFRDoKPiAgCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJf UkNfQ0NTOgo+ICsJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0M6 Cj4gIAkJYnJlYWs7Cj4gIAlkZWZhdWx0Ogo+ICAJCXJldHVybiBmYWxzZTsKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcmVnLmgKPiBpbmRleCAwOTZiZTk1ZWM3ZjkuLjAwYzU5ZWQ4YjExNCAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9yZWcuaAo+IEBAIC02NjgxLDYgKzY2ODEsNyBAQCBlbnVtIHsKPiAgI2Rl ZmluZSAgIFBMQU5FX0NUTF9ZVVY0MjJfVllVWQkJCSgzIDw8IDE2KQo+ICAjZGVmaW5lICAgUExB TkVfQ1RMX1JFTkRFUl9ERUNPTVBSRVNTSU9OX0VOQUJMRQkoMSA8PCAxNSkKPiAgI2RlZmluZSAg IFBMQU5FX0NUTF9UUklDS0xFX0ZFRURfRElTQUJMRQkoMSA8PCAxNCkKPiArI2RlZmluZQkgIElD TF9QTEFORV9DVExfQ0xFQVJfQ09MT1JfRElTQUJMRQkoMSA8PCAxMykKCkxvb2tzIGxpa2UgdGhl IHdoaXRlc3BhY2UgaXMgb2ZmIGhlcmUuCgoKTWF0dAoKPiAgI2RlZmluZSAgIFBMQU5FX0NUTF9Q TEFORV9HQU1NQV9ESVNBQkxFCQkoMSA8PCAxMykgLyogUHJlLUdMSyAqLwo+ICAjZGVmaW5lICAg UExBTkVfQ1RMX1RJTEVEX01BU0sJCQkoMHg3IDw8IDEwKQo+ICAjZGVmaW5lICAgUExBTkVfQ1RM X1RJTEVEX0xJTkVBUgkJKDAgPDwgMTApCj4gQEAgLTY3MjEsNiArNjcyMiw4IEBAIGVudW0gewo+ ICAjZGVmaW5lIF9QTEFORV9LRVlNQVhfMV9BCQkJMHg3MDFhMAo+ICAjZGVmaW5lIF9QTEFORV9L RVlNQVhfMl9BCQkJMHg3MDJhMAo+ICAjZGVmaW5lICBQTEFORV9LRVlNQVhfQUxQSEEoYSkJCQko KGEpIDw8IDI0KQo+ICsjZGVmaW5lIF9QTEFORV9DQ19WQUxfMV9BCQkJMHg3MDFiNAo+ICsjZGVm aW5lIF9QTEFORV9DQ19WQUxfMl9BCQkJMHg3MDJiNAo+ICAjZGVmaW5lIF9QTEFORV9BVVhfRElT VF8xX0EJCQkweDcwMWMwCj4gICNkZWZpbmUgX1BMQU5FX0FVWF9ESVNUXzJfQQkJCTB4NzAyYzAK PiAgI2RlZmluZSBfUExBTkVfQVVYX09GRlNFVF8xX0EJCQkweDcwMWM0Cj4gQEAgLTY3NjAsNiAr Njc2MywxNiBAQCBlbnVtIHsKPiAgI2RlZmluZSBfUExBTkVfTlYxMl9CVUZfQ0ZHXzFfQQkJMHg3 MDI3OAo+ICAjZGVmaW5lIF9QTEFORV9OVjEyX0JVRl9DRkdfMl9BCQkweDcwMzc4Cj4gIAo+ICsj ZGVmaW5lIF9QTEFORV9DQ19WQUxfMV9CCQkJMHg3MTFiNAo+ICsjZGVmaW5lIF9QTEFORV9DQ19W QUxfMl9CCQkJMHg3MTJiNAo+ICsjZGVmaW5lIF9QTEFORV9DQ19WQUxfMShwaXBlKQlfUElQRShw aXBlLCBfUExBTkVfQ0NfVkFMXzFfQSwgX1BMQU5FX0NDX1ZBTF8xX0IpCj4gKyNkZWZpbmUgX1BM QU5FX0NDX1ZBTF8yKHBpcGUpCV9QSVBFKHBpcGUsIF9QTEFORV9DQ19WQUxfMl9BLCBfUExBTkVf Q0NfVkFMXzJfQikKPiArI2RlZmluZSBQTEFORV9DQ19WQUwocGlwZSwgcGxhbmUpCVwKPiArCV9N TUlPX1BMQU5FKHBsYW5lLCBfUExBTkVfQ0NfVkFMXzEocGlwZSksIF9QTEFORV9DQ19WQUxfMihw aXBlKSkKPiArCj4gKyNkZWZpbmUgQ0NfVkFMX0xPV0VSX09GRlNFVAkJNAo+ICsjZGVmaW5lIEND X1ZBTF9ISUdIRVJfT0ZGU0VUCQk1Cj4gKwo+ICAvKiBJbnB1dCBDU0MgUmVnaXN0ZXIgRGVmaW5p dGlvbnMgKi8KPiAgI2RlZmluZSBfUExBTkVfSU5QVVRfQ1NDX1JZX0dZXzFfQQkweDcwMUUwCj4g ICNkZWZpbmUgX1BMQU5FX0lOUFVUX0NTQ19SWV9HWV8yX0EJMHg3MDJFMAo+IC0tIAo+IDIuMjAu MQo+IAoKLS0gCk1hdHQgUm9wZXIKR3JhcGhpY3MgU29mdHdhcmUgRW5naW5lZXIKVlRULU9TR0Mg UGxhdGZvcm0gRW5hYmxlbWVudApJbnRlbCBDb3Jwb3JhdGlvbgooOTE2KSAzNTYtMjc5NQpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=