From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 11/18] drm/i915: Return the mask of enabled infoframes from ->inforame_enabled() Date: Mon, 24 Sep 2018 17:51:16 +0200 Message-ID: <20180924155116.GX11082@phenom.ffwll.local> References: <20180920185145.1912-1-ville.syrjala@linux.intel.com> <20180920185145.1912-12-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by gabe.freedesktop.org (Postfix) with ESMTPS id 97CC888004 for ; Mon, 24 Sep 2018 15:51:20 +0000 (UTC) Received: by mail-ed1-x52e.google.com with SMTP id g26-v6so3577354edp.0 for ; Mon, 24 Sep 2018 08:51:20 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20180920185145.1912-12-ville.syrjala@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: Ville Syrjala Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBTZXAgMjAsIDIwMTggYXQgMDk6NTE6MzhQTSArMDMwMCwgVmlsbGUgU3lyamFsYSB3 cm90ZToKPiBGcm9tOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwu Y29tPgo+IAo+IFdlIHdhbnQgdG8gc3RhcnQgdHJhY2tpbmcgd2hpY2ggaW5mb2ZyYW1lcyBhcmUg ZW5hYmxlZCwgc28gbGV0J3MgcmVwbGFjZQo+IHRoZSBib29sZWFuIGZsYWcgd2l0aCBhIGJpdG1h c2suCj4gCj4gV2UnbGwgYWJzdHJhY3QgdGhlIGJpdG1hc2sgc28gdGhhdCBpdCdzIG5vdCBwbGF0 Zm9ybSBkZXBlbmRlbnQuIFRoYXQKPiB3aWxsIGFsbG93IHVzIHRvIGV4YW1pbmUgdGhlIGJpdG1h c2sgbGF0ZXIgaW4gcGxhdGZvcm0gaW5kZXBlbmRlbnQgY29kZS4KPiAKPiBTaWduZWQtb2ZmLWJ5 OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+IC0tLQo+ ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyAgfCAgMiArLQo+ICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgfCAgNCArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9oZG1pLmMgfCA4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0K PiAgMyBmaWxlcyBjaGFuZ2VkLCA2OCBpbnNlcnRpb25zKCspLCAyNSBkZWxldGlvbnMoLSkKPiAK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+IGluZGV4IDA4NmUzZjk0MDU4Ni4uMDk4YTBlNGVk ZjJhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiBAQCAtMzM5MCw3ICszMzkwLDcg QEAgdm9pZCBpbnRlbF9kZGlfZ2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rl ciwKPiAgCQlwaXBlX2NvbmZpZy0+aGFzX2hkbWlfc2luayA9IHRydWU7Cj4gIAkJaW50ZWxfZGln X3BvcnQgPSBlbmNfdG9fZGlnX3BvcnQoJmVuY29kZXItPmJhc2UpOwo+ICAKPiAtCQlpZiAoaW50 ZWxfZGlnX3BvcnQtPmluZm9mcmFtZV9lbmFibGVkKGVuY29kZXIsIHBpcGVfY29uZmlnKSkKPiAr CQlpZiAoaW50ZWxfaGRtaV9pbmZvZnJhbWVzX2VuYWJsZWQoZW5jb2RlciwgcGlwZV9jb25maWcp KQo+ICAJCQlwaXBlX2NvbmZpZy0+aGFzX2luZm9mcmFtZSA9IHRydWU7Cj4gIAo+ICAJCWlmICgo dGVtcCAmIFRSQU5TX0RESV9IRE1JX1NDUkFNQkxJTkdfTUFTSykgPT0KPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaAo+IGluZGV4IGUwZjNhNzlmYzc1ZS4uNjgxNWM2OWFhYzJmIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBAQCAtMTE4MSw3ICsxMTgxLDcgQEAgc3RydWN0IGludGVs X2RpZ2l0YWxfcG9ydCB7Cj4gIAkJCSAgICAgICBib29sIGVuYWJsZSwKPiAgCQkJICAgICAgIGNv bnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAo+ICAJCQkgICAgICAgY29u c3Qgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpOwo+IC0JYm9vbCAoKmlu Zm9mcmFtZV9lbmFibGVkKShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiArCXUzMiAo KmluZm9mcmFtZXNfZW5hYmxlZCkoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJ CQkgIGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZyk7Cj4gIH07Cj4g IAo+IEBAIC0xODU2LDYgKzE4NTYsOCBAQCBib29sIGludGVsX2hkbWlfaGFuZGxlX3Npbmtfc2Ny YW1ibGluZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQkJCSAgICAgICBib29s IHNjcmFtYmxpbmcpOwo+ICB2b2lkIGludGVsX2RwX2R1YWxfbW9kZV9zZXRfdG1kc19vdXRwdXQo c3RydWN0IGludGVsX2hkbWkgKmhkbWksIGJvb2wgZW5hYmxlKTsKPiAgdm9pZCBpbnRlbF9pbmZv ZnJhbWVfaW5pdChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCk7Cj4g K3UzMiBpbnRlbF9oZG1pX2luZm9mcmFtZXNfZW5hYmxlZChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAq ZW5jb2RlciwKPiArCQkJCSAgY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3Rh dGUpOwo+ICAKPiAgCj4gIC8qIGludGVsX2x2ZHMuYyAqLwo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9o ZG1pLmMKPiBpbmRleCBjM2MyYTYzOGQwNjIuLmE4ZmNkZGIxOTlhZSAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9oZG1pLmMKPiBAQCAtMTAwLDEwICsxMDAsMTQgQEAgc3RhdGljIHUzMiBnNHhf aW5mb2ZyYW1lX2luZGV4KHVuc2lnbmVkIGludCB0eXBlKQo+ICBzdGF0aWMgdTMyIGc0eF9pbmZv ZnJhbWVfZW5hYmxlKHVuc2lnbmVkIGludCB0eXBlKQo+ICB7Cj4gIAlzd2l0Y2ggKHR5cGUpIHsK PiArCWNhc2UgSERNSV9QQUNLRVRfVFlQRV9OVUxMOgo+ICsJCXJldHVybiBWSURFT19ESVBfRU5B QkxFOyAvKiBzbGlnaHQgbGllICovCgpOb3QgZXhhY3RseSBzdXJlIHdoeSB3ZSdyZSB0cmFja2lu ZyB0aGlzIG9uZSBoZXJlLCBidXQgbm90IGZvciBoc3cuClNob3VsZG4ndCB3ZSBpbmNsdWRlIHRo YXQgb25lIGlmIHRoZSBEREkgcG9ydCBpcyBpbiBoZG1pIG1vZGU/IFdvdWxkIGJlCm1vcmUgY29u c2lzdGVudCBJIHRoaW5rLgoKQXNpZGUgZnJvbSB0aGF0IGxndG0sIGhhcyBteQoKUmV2aWV3ZWQt Ynk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+CgpvbmNlIHdlIGZpZ3Vy ZWQgdGhlIFRZUEVfTlVMTCB0aGluZyBvdXQuCi1EYW5pZWwKCj4gIAljYXNlIEhETUlfUEFDS0VU X1RZUEVfR0VORVJBTF9DT05UUk9MOgo+ICAJCXJldHVybiBWSURFT19ESVBfRU5BQkxFX0dDUDsK PiAgCWNhc2UgSERNSV9QQUNLRVRfVFlQRV9HQU1VVF9NRVRBREFUQToKPiAgCQlyZXR1cm4gVklE RU9fRElQX0VOQUJMRV9HQU1VVDsKPiArCWNhc2UgRFBfU0RQX1ZTQzoKPiArCQlyZXR1cm4gMDsK PiAgCWNhc2UgSERNSV9JTkZPRlJBTUVfVFlQRV9BVkk6Cj4gIAkJcmV0dXJuIFZJREVPX0RJUF9F TkFCTEVfQVZJOwo+ICAJY2FzZSBIRE1JX0lORk9GUkFNRV9UWVBFX1NQRDoKPiBAQCAtMTE5LDYg KzEyMyw4IEBAIHN0YXRpYyB1MzIgZzR4X2luZm9mcmFtZV9lbmFibGUodW5zaWduZWQgaW50IHR5 cGUpCj4gIHN0YXRpYyB1MzIgaHN3X2luZm9mcmFtZV9lbmFibGUodW5zaWduZWQgaW50IHR5cGUp Cj4gIHsKPiAgCXN3aXRjaCAodHlwZSkgewo+ICsJY2FzZSBIRE1JX1BBQ0tFVF9UWVBFX05VTEw6 Cj4gKwkJcmV0dXJuIDA7Cj4gIAljYXNlIEhETUlfUEFDS0VUX1RZUEVfR0VORVJBTF9DT05UUk9M Ogo+ICAJCXJldHVybiBWSURFT19ESVBfRU5BQkxFX0dDUF9IU1c7Cj4gIAljYXNlIEhETUlfUEFD S0VUX1RZUEVfR0FNVVRfTUVUQURBVEE6Cj4gQEAgLTE5NywxOSArMjAzLDE5IEBAIHN0YXRpYyB2 b2lkIGc0eF93cml0ZV9pbmZvZnJhbWUoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4g IAlQT1NUSU5HX1JFQUQoVklERU9fRElQX0NUTCk7Cj4gIH0KPiAgCj4gLXN0YXRpYyBib29sIGc0 eF9pbmZvZnJhbWVfZW5hYmxlZChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiArc3Rh dGljIHUzMiBnNHhfaW5mb2ZyYW1lc19lbmFibGVkKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNv ZGVyLAo+ICAJCQkJICBjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcp Cj4gIHsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5j b2Rlci0+YmFzZS5kZXYpOwo+ICAJdTMyIHZhbCA9IEk5MTVfUkVBRChWSURFT19ESVBfQ1RMKTsK PiAgCj4gIAlpZiAoKHZhbCAmIFZJREVPX0RJUF9FTkFCTEUpID09IDApCj4gLQkJcmV0dXJuIGZh bHNlOwo+ICsJCXJldHVybiAwOwo+ICAKPiAgCWlmICgodmFsICYgVklERU9fRElQX1BPUlRfTUFT SykgIT0gVklERU9fRElQX1BPUlQoZW5jb2Rlci0+cG9ydCkpCj4gLQkJcmV0dXJuIGZhbHNlOwo+ ICsJCXJldHVybiAwOwo+ICAKPiAtCXJldHVybiB2YWwgJiAoVklERU9fRElQX0VOQUJMRV9BVkkg fAo+ICsJcmV0dXJuIHZhbCAmIChWSURFT19ESVBfRU5BQkxFIHwgVklERU9fRElQX0VOQUJMRV9B VkkgfAo+ICAJCSAgICAgIFZJREVPX0RJUF9FTkFCTEVfVkVORE9SIHwgVklERU9fRElQX0VOQUJM RV9TUEQpOwo+ICB9Cj4gIAo+IEBAIC0yNTIsNyArMjU4LDcgQEAgc3RhdGljIHZvaWQgaWJ4X3dy aXRlX2luZm9mcmFtZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCVBPU1RJTkdf UkVBRChyZWcpOwo+ICB9Cj4gIAo+IC1zdGF0aWMgYm9vbCBpYnhfaW5mb2ZyYW1lX2VuYWJsZWQo c3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gK3N0YXRpYyB1MzIgaWJ4X2luZm9mcmFt ZXNfZW5hYmxlZChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQkJCSAgY29uc3Qg c3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnKQo+ICB7Cj4gIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGVuY29kZXItPmJhc2UuZGV2KTsKPiBA QCAtMjYxLDEyICsyNjcsMTIgQEAgc3RhdGljIGJvb2wgaWJ4X2luZm9mcmFtZV9lbmFibGVkKHN0 cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJdTMyIHZhbCA9IEk5MTVfUkVBRChyZWcp Owo+ICAKPiAgCWlmICgodmFsICYgVklERU9fRElQX0VOQUJMRSkgPT0gMCkKPiAtCQlyZXR1cm4g ZmFsc2U7Cj4gKwkJcmV0dXJuIDA7Cj4gIAo+ICAJaWYgKCh2YWwgJiBWSURFT19ESVBfUE9SVF9N QVNLKSAhPSBWSURFT19ESVBfUE9SVChlbmNvZGVyLT5wb3J0KSkKPiAtCQlyZXR1cm4gZmFsc2U7 Cj4gKwkJcmV0dXJuIDA7Cj4gIAo+IC0JcmV0dXJuIHZhbCAmIChWSURFT19ESVBfRU5BQkxFX0FW SSB8Cj4gKwlyZXR1cm4gdmFsICYgKFZJREVPX0RJUF9FTkFCTEUgfCBWSURFT19ESVBfRU5BQkxF X0FWSSB8Cj4gIAkJICAgICAgVklERU9fRElQX0VOQUJMRV9WRU5ET1IgfCBWSURFT19ESVBfRU5B QkxFX0dBTVVUIHwKPiAgCQkgICAgICBWSURFT19ESVBfRU5BQkxFX1NQRCB8IFZJREVPX0RJUF9F TkFCTEVfR0NQKTsKPiAgfQo+IEBAIC0zMTMsNyArMzE5LDcgQEAgc3RhdGljIHZvaWQgY3B0X3dy aXRlX2luZm9mcmFtZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCVBPU1RJTkdf UkVBRChyZWcpOwo+ICB9Cj4gIAo+IC1zdGF0aWMgYm9vbCBjcHRfaW5mb2ZyYW1lX2VuYWJsZWQo c3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gK3N0YXRpYyB1MzIgY3B0X2luZm9mcmFt ZXNfZW5hYmxlZChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQkJCSAgY29uc3Qg c3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnKQo+ICB7Cj4gIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGVuY29kZXItPmJhc2UuZGV2KTsKPiBA QCAtMzIxLDkgKzMyNyw5IEBAIHN0YXRpYyBib29sIGNwdF9pbmZvZnJhbWVfZW5hYmxlZChzdHJ1 Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCXUzMiB2YWwgPSBJOTE1X1JFQUQoVFZJREVP X0RJUF9DVEwocGlwZSkpOwo+ICAKPiAgCWlmICgodmFsICYgVklERU9fRElQX0VOQUJMRSkgPT0g MCkKPiAtCQlyZXR1cm4gZmFsc2U7Cj4gKwkJcmV0dXJuIDA7Cj4gIAo+IC0JcmV0dXJuIHZhbCAm IChWSURFT19ESVBfRU5BQkxFX0FWSSB8Cj4gKwlyZXR1cm4gdmFsICYgKFZJREVPX0RJUF9FTkFC TEUgfCBWSURFT19ESVBfRU5BQkxFX0FWSSB8Cj4gIAkJICAgICAgVklERU9fRElQX0VOQUJMRV9W RU5ET1IgfCBWSURFT19ESVBfRU5BQkxFX0dBTVVUIHwKPiAgCQkgICAgICBWSURFT19ESVBfRU5B QkxFX1NQRCB8IFZJREVPX0RJUF9FTkFCTEVfR0NQKTsKPiAgfQo+IEBAIC0zNjcsNyArMzczLDcg QEAgc3RhdGljIHZvaWQgdmx2X3dyaXRlX2luZm9mcmFtZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAq ZW5jb2RlciwKPiAgCVBPU1RJTkdfUkVBRChyZWcpOwo+ICB9Cj4gIAo+IC1zdGF0aWMgYm9vbCB2 bHZfaW5mb2ZyYW1lX2VuYWJsZWQoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gK3N0 YXRpYyB1MzIgdmx2X2luZm9mcmFtZXNfZW5hYmxlZChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5j b2RlciwKPiAgCQkJCSAgY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmln KQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGVu Y29kZXItPmJhc2UuZGV2KTsKPiBAQCAtMzc1LDEyICszODEsMTIgQEAgc3RhdGljIGJvb2wgdmx2 X2luZm9mcmFtZV9lbmFibGVkKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJdTMy IHZhbCA9IEk5MTVfUkVBRChWTFZfVFZJREVPX0RJUF9DVEwocGlwZSkpOwo+ICAKPiAgCWlmICgo dmFsICYgVklERU9fRElQX0VOQUJMRSkgPT0gMCkKPiAtCQlyZXR1cm4gZmFsc2U7Cj4gKwkJcmV0 dXJuIDA7Cj4gIAo+ICAJaWYgKCh2YWwgJiBWSURFT19ESVBfUE9SVF9NQVNLKSAhPSBWSURFT19E SVBfUE9SVChlbmNvZGVyLT5wb3J0KSkKPiAtCQlyZXR1cm4gZmFsc2U7Cj4gKwkJcmV0dXJuIDA7 Cj4gIAo+IC0JcmV0dXJuIHZhbCAmIChWSURFT19ESVBfRU5BQkxFX0FWSSB8Cj4gKwlyZXR1cm4g dmFsICYgKFZJREVPX0RJUF9FTkFCTEUgfCBWSURFT19ESVBfRU5BQkxFX0FWSSB8Cj4gIAkJICAg ICAgVklERU9fRElQX0VOQUJMRV9WRU5ET1IgfCBWSURFT19ESVBfRU5BQkxFX0dBTVVUIHwKPiAg CQkgICAgICBWSURFT19ESVBfRU5BQkxFX1NQRCB8IFZJREVPX0RJUF9FTkFCTEVfR0NQKTsKPiAg fQo+IEBAIC00MTksNyArNDI1LDcgQEAgc3RhdGljIHZvaWQgaHN3X3dyaXRlX2luZm9mcmFtZShz dHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCVBPU1RJTkdfUkVBRChjdGxfcmVnKTsK PiAgfQo+ICAKPiAtc3RhdGljIGJvb2wgaHN3X2luZm9mcmFtZV9lbmFibGVkKHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyLAo+ICtzdGF0aWMgdTMyIGhzd19pbmZvZnJhbWVzX2VuYWJsZWQo c3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJCQkgIGNvbnN0IHN0cnVjdCBpbnRl bF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKPiAgewo+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2ID0gdG9faTkxNShlbmNvZGVyLT5iYXNlLmRldik7Cj4gQEAgLTQzMCw2ICs0 MzYsNDIgQEAgc3RhdGljIGJvb2wgaHN3X2luZm9mcmFtZV9lbmFibGVkKHN0cnVjdCBpbnRlbF9l bmNvZGVyICplbmNvZGVyLAo+ICAJCSAgICAgIFZJREVPX0RJUF9FTkFCTEVfR01QX0hTVyB8IFZJ REVPX0RJUF9FTkFCTEVfU1BEX0hTVyk7Cj4gIH0KPiAgCj4gK3N0YXRpYyBjb25zdCB1OCBpbmZv ZnJhbWVfdHlwZV90b19pZHhbXSA9IHsKPiArCUhETUlfUEFDS0VUX1RZUEVfTlVMTCwKPiArCUhE TUlfUEFDS0VUX1RZUEVfR0VORVJBTF9DT05UUk9MLAo+ICsJSERNSV9QQUNLRVRfVFlQRV9HQU1V VF9NRVRBREFUQSwKPiArCURQX1NEUF9WU0MsCj4gKwlIRE1JX0lORk9GUkFNRV9UWVBFX0FWSSwK PiArCUhETUlfSU5GT0ZSQU1FX1RZUEVfU1BELAo+ICsJSERNSV9JTkZPRlJBTUVfVFlQRV9WRU5E T1IsCj4gK307Cj4gKwo+ICt1MzIgaW50ZWxfaGRtaV9pbmZvZnJhbWVzX2VuYWJsZWQoc3RydWN0 IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gKwkJCQkgIGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjcnRjX3N0YXRlKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSB0b19pOTE1KGVuY29kZXItPmJhc2UuZGV2KTsKPiArCXN0cnVjdCBpbnRlbF9kaWdp dGFsX3BvcnQgKmRpZ19wb3J0ID0gZW5jX3RvX2RpZ19wb3J0KCZlbmNvZGVyLT5iYXNlKTsKPiAr CXUzMiB2YWwsIHJldCA9IDA7Cj4gKwlpbnQgaTsKPiArCj4gKwl2YWwgPSBkaWdfcG9ydC0+aW5m b2ZyYW1lc19lbmFibGVkKGVuY29kZXIsIGNydGNfc3RhdGUpOwo+ICsKPiArCS8qIG1hcCBmcm9t IGhhcmR3YXJlIGJpdHMgdG8gZGlwIGlkeCAqLwo+ICsJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJ WkUoaW5mb2ZyYW1lX3R5cGVfdG9faWR4KTsgaSsrKSB7Cj4gKwkJdW5zaWduZWQgaW50IHR5cGUg PSBpbmZvZnJhbWVfdHlwZV90b19pZHhbaV07Cj4gKwo+ICsJCWlmIChIQVNfRERJKGRldl9wcml2 KSkgewo+ICsJCQlpZiAodmFsICYgaHN3X2luZm9mcmFtZV9lbmFibGUodHlwZSkpCj4gKwkJCQly ZXQgfD0gQklUKGkpOwo+ICsJCX0gZWxzZSB7Cj4gKwkJCWlmICh2YWwgJiBnNHhfaW5mb2ZyYW1l X2VuYWJsZSh0eXBlKSkKPiArCQkJCXJldCB8PSBCSVQoaSk7Cj4gKwkJfQo+ICsJfQo+ICsKPiAr CXJldHVybiByZXQ7Cj4gK30KPiArCj4gIC8qCj4gICAqIFRoZSBkYXRhIHdlIHdyaXRlIHRvIHRo ZSBESVAgZGF0YSBidWZmZXIgcmVnaXN0ZXJzIGlzIDEgYnl0ZSBiaWdnZXIgdGhhbiB0aGUKPiAg ICogSERNSSBpbmZvZnJhbWUgc2l6ZSBiZWNhdXNlIG9mIGFuIEVDQy9yZXNlcnZlZCBieXRlIGF0 IHBvc2l0aW9uIDMgKHN0YXJ0aW5nCj4gQEAgLTEyMDAsNyArMTI0Miw2IEBAIHN0YXRpYyB2b2lk IGludGVsX2hkbWlfZ2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAg CQkJCSAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnKQo+ICB7Cj4gIAlzdHJ1 Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9IGVuY190b19pbnRlbF9oZG1pKCZlbmNvZGVyLT5i YXNlKTsKPiAtCXN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0ID0gaGRt aV90b19kaWdfcG9ydChpbnRlbF9oZG1pKTsKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBl bmNvZGVyLT5iYXNlLmRldjsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9 IHRvX2k5MTUoZGV2KTsKPiAgCXUzMiB0bXAsIGZsYWdzID0gMDsKPiBAQCAtMTIyMyw3ICsxMjY0 LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfaGRtaV9nZXRfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNv ZGVyICplbmNvZGVyLAo+ICAJaWYgKHRtcCAmIEhETUlfTU9ERV9TRUxFQ1RfSERNSSkKPiAgCQlw aXBlX2NvbmZpZy0+aGFzX2hkbWlfc2luayA9IHRydWU7Cj4gIAo+IC0JaWYgKGludGVsX2RpZ19w b3J0LT5pbmZvZnJhbWVfZW5hYmxlZChlbmNvZGVyLCBwaXBlX2NvbmZpZykpCj4gKwlpZiAoaW50 ZWxfaGRtaV9pbmZvZnJhbWVzX2VuYWJsZWQoZW5jb2RlciwgcGlwZV9jb25maWcpKQo+ICAJCXBp cGVfY29uZmlnLT5oYXNfaW5mb2ZyYW1lID0gdHJ1ZTsKPiAgCj4gIAlpZiAodG1wICYgU0RWT19B VURJT19FTkFCTEUpCj4gQEAgLTIzMjUsMjMgKzIzNjYsMjMgQEAgdm9pZCBpbnRlbF9pbmZvZnJh bWVfaW5pdChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCkKPiAgCWlm IChJU19WQUxMRVlWSUVXKGRldl9wcml2KSB8fCBJU19DSEVSUllWSUVXKGRldl9wcml2KSkgewo+ ICAJCWludGVsX2RpZ19wb3J0LT53cml0ZV9pbmZvZnJhbWUgPSB2bHZfd3JpdGVfaW5mb2ZyYW1l Owo+ICAJCWludGVsX2RpZ19wb3J0LT5zZXRfaW5mb2ZyYW1lcyA9IHZsdl9zZXRfaW5mb2ZyYW1l czsKPiAtCQlpbnRlbF9kaWdfcG9ydC0+aW5mb2ZyYW1lX2VuYWJsZWQgPSB2bHZfaW5mb2ZyYW1l X2VuYWJsZWQ7Cj4gKwkJaW50ZWxfZGlnX3BvcnQtPmluZm9mcmFtZXNfZW5hYmxlZCA9IHZsdl9p bmZvZnJhbWVzX2VuYWJsZWQ7Cj4gIAl9IGVsc2UgaWYgKElTX0c0WChkZXZfcHJpdikpIHsKPiAg CQlpbnRlbF9kaWdfcG9ydC0+d3JpdGVfaW5mb2ZyYW1lID0gZzR4X3dyaXRlX2luZm9mcmFtZTsK PiAgCQlpbnRlbF9kaWdfcG9ydC0+c2V0X2luZm9mcmFtZXMgPSBnNHhfc2V0X2luZm9mcmFtZXM7 Cj4gLQkJaW50ZWxfZGlnX3BvcnQtPmluZm9mcmFtZV9lbmFibGVkID0gZzR4X2luZm9mcmFtZV9l bmFibGVkOwo+ICsJCWludGVsX2RpZ19wb3J0LT5pbmZvZnJhbWVzX2VuYWJsZWQgPSBnNHhfaW5m b2ZyYW1lc19lbmFibGVkOwo+ICAJfSBlbHNlIGlmIChIQVNfRERJKGRldl9wcml2KSkgewo+ICAJ CWludGVsX2RpZ19wb3J0LT53cml0ZV9pbmZvZnJhbWUgPSBoc3dfd3JpdGVfaW5mb2ZyYW1lOwo+ ICAJCWludGVsX2RpZ19wb3J0LT5zZXRfaW5mb2ZyYW1lcyA9IGhzd19zZXRfaW5mb2ZyYW1lczsK PiAtCQlpbnRlbF9kaWdfcG9ydC0+aW5mb2ZyYW1lX2VuYWJsZWQgPSBoc3dfaW5mb2ZyYW1lX2Vu YWJsZWQ7Cj4gKwkJaW50ZWxfZGlnX3BvcnQtPmluZm9mcmFtZXNfZW5hYmxlZCA9IGhzd19pbmZv ZnJhbWVzX2VuYWJsZWQ7Cj4gIAl9IGVsc2UgaWYgKEhBU19QQ0hfSUJYKGRldl9wcml2KSkgewo+ ICAJCWludGVsX2RpZ19wb3J0LT53cml0ZV9pbmZvZnJhbWUgPSBpYnhfd3JpdGVfaW5mb2ZyYW1l Owo+ICAJCWludGVsX2RpZ19wb3J0LT5zZXRfaW5mb2ZyYW1lcyA9IGlieF9zZXRfaW5mb2ZyYW1l czsKPiAtCQlpbnRlbF9kaWdfcG9ydC0+aW5mb2ZyYW1lX2VuYWJsZWQgPSBpYnhfaW5mb2ZyYW1l X2VuYWJsZWQ7Cj4gKwkJaW50ZWxfZGlnX3BvcnQtPmluZm9mcmFtZXNfZW5hYmxlZCA9IGlieF9p bmZvZnJhbWVzX2VuYWJsZWQ7Cj4gIAl9IGVsc2Ugewo+ICAJCWludGVsX2RpZ19wb3J0LT53cml0 ZV9pbmZvZnJhbWUgPSBjcHRfd3JpdGVfaW5mb2ZyYW1lOwo+ICAJCWludGVsX2RpZ19wb3J0LT5z ZXRfaW5mb2ZyYW1lcyA9IGNwdF9zZXRfaW5mb2ZyYW1lczsKPiAtCQlpbnRlbF9kaWdfcG9ydC0+ aW5mb2ZyYW1lX2VuYWJsZWQgPSBjcHRfaW5mb2ZyYW1lX2VuYWJsZWQ7Cj4gKwkJaW50ZWxfZGln X3BvcnQtPmluZm9mcmFtZXNfZW5hYmxlZCA9IGNwdF9pbmZvZnJhbWVzX2VuYWJsZWQ7Cj4gIAl9 Cj4gIH0KPiAgCj4gLS0gCj4gMi4xNi40Cj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2FyZSBFbmdp bmVlciwgSW50ZWwgQ29ycG9yYXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==