From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: [PATCH] drm: Squelch DEBUG_ATOMIC message for pointer manipulations Date: Mon, 21 Aug 2017 10:36:48 +0200 Message-ID: References: <20170821083147.27146-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170821083147.27146-1-chris@chris-wilson.co.uk> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Chris Wilson , dri-devel@lists.freedesktop.org Cc: Daniel Vetter , intel-gfx@list.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T3AgMjEtMDgtMTcgb20gMTA6MzEgc2NocmVlZiBDaHJpcyBXaWxzb246Cj4gVGhlc2UgbWVzc2Fn ZXMgZmxvb2QgdGhlIGRlYnVnIGxvZ3MgY29udmV5aW5nIHZlcnkgbGl0dGxlIGluZm9ybWF0aW9u Cj4gZXhjZXB0IHRoYXQgdGhlIHNhbWUgYWN0aW9ucyBhcyBwZXJmb3JtZWQgb24gdGhlIGxhc3Qg YXRvbWljIG1vZGVzZXQgYXJlCj4gYmVpbmcgcmVwZWF0ZWQgb24gYSBkaWZmZXJlbnQgcG9pbnRl ci4gVGhhdCBvdXIgaWRlbnRpZmllciBpcyBhIHBvaW50ZXIKPiBpcyBhbiBpbmRpY2F0b3IgdGhh dCBpcyBub3QgaW50ZXJlc3RpbmcgZW5vdWdoIHRvIGJlIHRyYWNrZWQgYnkgYSBodW1hbiA7KQo+ IEFuIGFsdGVybmF0aXZlIHdvdWxkIGJlIHRvIGxlYXZlIHRoZXNlIG1lc3NhZ2VzIGNvbXBpbGVk IGFuZCBnaXZlIHRoZQo+IGludGVyZXN0aW5nIGZhaWx1cmUvc3VjY2VzcyBtZXNzYWdlcyBhIG5l dyBpZGVudGlmaWVyIGxpa2UgS01TIChzaW5jZQo+IHRoZXkgYXJlIGNvbmZpcm1hdGlvbiBtZXNz YWdlcyBzaW1pbGFyIGluIG5hdHVyZSB0byB0aGUgZXhpc3RpbmcgS01TCj4gbWVzc2FnZXMpLCBv ciBtb3ZlIHRoZXNlIGxvdy1sZXZlbCBBVE9NSUMgb3BlcmF0aW9ucyB0byBhIG5ldyBpZCB0aGF0 IHdlCj4gY2FuIGFsd2F5cyBpZ25vcmUuCj4KPiBBIGRlYnVnIG1lc3NhZ2UgdGhhdCBzdW1tYXJp emVkIHRoZSBhY3Rpb24gYWJvdXQgdG8gYmUgdGFrZW4gd291bGQgYmUKPiB1c2VmdWwuIEFzIGl0 IHN0YW5kcyB0aGUgc2lnbmFsOm5vaXNlIG9mIGEgZHJtLmRlYnVnPTB4MWUgZG1lc2cgaXMKPiB2 ZXJnaW5nIG9uIHRoZSB1c2VsZXNzLiBXZSBuZWVkIHRvIGN1cmIgdGhlIG92ZXJ1c2Ugb2YgRFJN X0RFQlVHX0FUT01JQwo+IG9yIHN0b3AgaW5jbHVkaW5nIGl0IGluIHRoZSByZWNvbW1lbmRlZCBk ZWJ1ZyBmbGFncy4KPgo+IFNpZ25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMt d2lsc29uLmNvLnVrPgo+IENjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNo Pgo+IENjOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwu Y29tPgpJJ20gYWxsIGZvciBzaWxlbmNpbmcsIHRvbyBtdWNoIG5vaXNlIHRoZXJlLiA6KQoKUmV2 aWV3ZWQtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRl bC5jb20+CgpXaXRoIHRoZSBub3RlIHRoYXQgeW91IHNob3VsZCBzZWUgd2hhdCBkYW5pZWwgdGhp bmtzIGFzIHdlbGwuCgpXZSBzaG91bGQgcHJvYmFibHkgYWRkIHNvbWV0aGluZyB0byBkdW1wIHRo ZSBzdGF0ZSBhdCBzb21lIHBvaW50IGp1c3QgYmVmb3JlIGF0b21pYyBjb21taXQsIGJ1dCBJJ20g ZmluZSB3aXRoIHRoaXMuCgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jIHwg NzYgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgMSBmaWxl IGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDM4IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0 b21pYy5jCj4gaW5kZXggMmZkMzgzZDcyNTNhLi5iOTc5NmE3N2RkN2QgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1f YXRvbWljLmMKPiBAQCAtMzQsNiArMzQsMTIgQEAKPiAgCj4gICNpbmNsdWRlICJkcm1fY3J0Y19p bnRlcm5hbC5oIgo+ICAKPiArI2lmIDAKPiArI2RlZmluZSBEQkcoLi4uKSBEUk1fREVCVUdfQVRP TUlDKF9fVkFfQVJHU19fKQo+ICsjZWxzZQo+ICsjZGVmaW5lIERCRyguLi4pCj4gKyNlbmRpZgo+ ICsKPiAgdm9pZCBfX2RybV9jcnRjX2NvbW1pdF9mcmVlKHN0cnVjdCBrcmVmICprcmVmKQo+ICB7 Cj4gIAlzdHJ1Y3QgZHJtX2NydGNfY29tbWl0ICpjb21taXQgPQo+IEBAIC04OSw3ICs5NSw3IEBA IGRybV9hdG9taWNfc3RhdGVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJt X2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAo+ICAJc3RhdGUtPmRldiA9IGRldjsKPiAgCj4gLQlE Uk1fREVCVUdfQVRPTUlDKCJBbGxvY2F0ZWQgYXRvbWljIHN0YXRlICVwXG4iLCBzdGF0ZSk7Cj4g KwlEQkcoIkFsbG9jYXRlZCBhdG9taWMgc3RhdGUgJXBcbiIsIHN0YXRlKTsKPiAgCj4gIAlyZXR1 cm4gMDsKPiAgZmFpbDoKPiBAQCAtMTM5LDcgKzE0NSw3IEBAIHZvaWQgZHJtX2F0b21pY19zdGF0 ZV9kZWZhdWx0X2NsZWFyKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKPiAgCXN0cnVj dCBkcm1fbW9kZV9jb25maWcgKmNvbmZpZyA9ICZkZXYtPm1vZGVfY29uZmlnOwo+ICAJaW50IGk7 Cj4gIAo+IC0JRFJNX0RFQlVHX0FUT01JQygiQ2xlYXJpbmcgYXRvbWljIHN0YXRlICVwXG4iLCBz dGF0ZSk7Cj4gKwlEQkcoIkNsZWFyaW5nIGF0b21pYyBzdGF0ZSAlcFxuIiwgc3RhdGUpOwo+ICAK PiAgCWZvciAoaSA9IDA7IGkgPCBzdGF0ZS0+bnVtX2Nvbm5lY3RvcjsgaSsrKSB7Cj4gIAkJc3Ry dWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciA9IHN0YXRlLT5jb25uZWN0b3JzW2ldLnB0cjsK PiBAQCAtMjQyLDcgKzI0OCw3IEBAIHZvaWQgX19kcm1fYXRvbWljX3N0YXRlX2ZyZWUoc3RydWN0 IGtyZWYgKnJlZikKPiAgCj4gIAlkcm1fYXRvbWljX3N0YXRlX2NsZWFyKHN0YXRlKTsKPiAgCj4g LQlEUk1fREVCVUdfQVRPTUlDKCJGcmVlaW5nIGF0b21pYyBzdGF0ZSAlcFxuIiwgc3RhdGUpOwo+ ICsJREJHKCJGcmVlaW5nIGF0b21pYyBzdGF0ZSAlcFxuIiwgc3RhdGUpOwo+ICAKPiAgCWlmIChj b25maWctPmZ1bmNzLT5hdG9taWNfc3RhdGVfZnJlZSkgewo+ICAJCWNvbmZpZy0+ZnVuY3MtPmF0 b21pY19zdGF0ZV9mcmVlKHN0YXRlKTsKPiBAQCAtMjk1LDggKzMwMSw4IEBAIGRybV9hdG9taWNf Z2V0X2NydGNfc3RhdGUoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAo+ICAJc3RhdGUt PmNydGNzW2luZGV4XS5wdHIgPSBjcnRjOwo+ICAJY3J0Y19zdGF0ZS0+c3RhdGUgPSBzdGF0ZTsK PiAgCj4gLQlEUk1fREVCVUdfQVRPTUlDKCJBZGRlZCBbQ1JUQzolZDolc10gJXAgc3RhdGUgdG8g JXBcbiIsCj4gLQkJCSBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lLCBjcnRjX3N0YXRlLCBzdGF0 ZSk7Cj4gKwlEQkcoIkFkZGVkIFtDUlRDOiVkOiVzXSAlcCBzdGF0ZSB0byAlcFxuIiwKPiArCSAg ICBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lLCBjcnRjX3N0YXRlLCBzdGF0ZSk7Cj4gIAo+ICAJ cmV0dXJuIGNydGNfc3RhdGU7Cj4gIH0KPiBAQCAtMzUzLDEzICszNTksMTEgQEAgaW50IGRybV9h dG9taWNfc2V0X21vZGVfZm9yX2NydGMoc3RydWN0IGRybV9jcnRjX3N0YXRlICpzdGF0ZSwKPiAg Cj4gIAkJZHJtX21vZGVfY29weSgmc3RhdGUtPm1vZGUsIG1vZGUpOwo+ICAJCXN0YXRlLT5lbmFi bGUgPSB0cnVlOwo+IC0JCURSTV9ERUJVR19BVE9NSUMoIlNldCBbTU9ERTolc10gZm9yIENSVEMg c3RhdGUgJXBcbiIsCj4gLQkJCQkgbW9kZS0+bmFtZSwgc3RhdGUpOwo+ICsJCURCRygiU2V0IFtN T0RFOiVzXSBmb3IgQ1JUQyBzdGF0ZSAlcFxuIiwgbW9kZS0+bmFtZSwgc3RhdGUpOwo+ICAJfSBl bHNlIHsKPiAgCQltZW1zZXQoJnN0YXRlLT5tb2RlLCAwLCBzaXplb2Yoc3RhdGUtPm1vZGUpKTsK PiAgCQlzdGF0ZS0+ZW5hYmxlID0gZmFsc2U7Cj4gLQkJRFJNX0RFQlVHX0FUT01JQygiU2V0IFtO T01PREVdIGZvciBDUlRDIHN0YXRlICVwXG4iLAo+IC0JCQkJIHN0YXRlKTsKPiArCQlEQkcoIlNl dCBbTk9NT0RFXSBmb3IgQ1JUQyBzdGF0ZSAlcFxuIiwgc3RhdGUpOwo+ICAJfQo+ICAKPiAgCXJl dHVybiAwOwo+IEBAIC0zOTksMTIgKzQwMywxMSBAQCBpbnQgZHJtX2F0b21pY19zZXRfbW9kZV9w cm9wX2Zvcl9jcnRjKHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUsCj4gIAo+ICAJCXN0YXRl LT5tb2RlX2Jsb2IgPSBkcm1fcHJvcGVydHlfYmxvYl9nZXQoYmxvYik7Cj4gIAkJc3RhdGUtPmVu YWJsZSA9IHRydWU7Cj4gLQkJRFJNX0RFQlVHX0FUT01JQygiU2V0IFtNT0RFOiVzXSBmb3IgQ1JU QyBzdGF0ZSAlcFxuIiwKPiAtCQkJCSBzdGF0ZS0+bW9kZS5uYW1lLCBzdGF0ZSk7Cj4gKwkJREJH KCJTZXQgW01PREU6JXNdIGZvciBDUlRDIHN0YXRlICVwXG4iLAo+ICsJCSAgICBzdGF0ZS0+bW9k ZS5uYW1lLCBzdGF0ZSk7Cj4gIAl9IGVsc2Ugewo+ICAJCXN0YXRlLT5lbmFibGUgPSBmYWxzZTsK PiAtCQlEUk1fREVCVUdfQVRPTUlDKCJTZXQgW05PTU9ERV0gZm9yIENSVEMgc3RhdGUgJXBcbiIs Cj4gLQkJCQkgc3RhdGUpOwo+ICsJCURCRygiU2V0IFtOT01PREVdIGZvciBDUlRDIHN0YXRlICVw XG4iLCBzdGF0ZSk7Cj4gIAl9Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gQEAgLTY4Miw4ICs2ODUsOCBA QCBkcm1fYXRvbWljX2dldF9wbGFuZV9zdGF0ZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3Rh dGUsCj4gIAlzdGF0ZS0+cGxhbmVzW2luZGV4XS5uZXdfc3RhdGUgPSBwbGFuZV9zdGF0ZTsKPiAg CXBsYW5lX3N0YXRlLT5zdGF0ZSA9IHN0YXRlOwo+ICAKPiAtCURSTV9ERUJVR19BVE9NSUMoIkFk ZGVkIFtQTEFORTolZDolc10gJXAgc3RhdGUgdG8gJXBcbiIsCj4gLQkJCSBwbGFuZS0+YmFzZS5p ZCwgcGxhbmUtPm5hbWUsIHBsYW5lX3N0YXRlLCBzdGF0ZSk7Cj4gKwlEQkcoIkFkZGVkIFtQTEFO RTolZDolc10gJXAgc3RhdGUgdG8gJXBcbiIsCj4gKwkgICAgcGxhbmUtPmJhc2UuaWQsIHBsYW5l LT5uYW1lLCBwbGFuZV9zdGF0ZSwgc3RhdGUpOwo+ICAKPiAgCWlmIChwbGFuZV9zdGF0ZS0+Y3J0 Yykgewo+ICAJCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKPiBAQCAtMTA0NSw4 ICsxMDQ4LDggQEAgZHJtX2F0b21pY19nZXRfcHJpdmF0ZV9vYmpfc3RhdGUoc3RydWN0IGRybV9h dG9taWNfc3RhdGUgKnN0YXRlLAo+ICAKPiAgCXN0YXRlLT5udW1fcHJpdmF0ZV9vYmpzID0gbnVt X29ianM7Cj4gIAo+IC0JRFJNX0RFQlVHX0FUT01JQygiQWRkZWQgbmV3IHByaXZhdGUgb2JqZWN0 ICVwIHN0YXRlICVwIHRvICVwXG4iLAo+IC0JCQkgb2JqLCBvYmpfc3RhdGUsIHN0YXRlKTsKPiAr CURCRygiQWRkZWQgbmV3IHByaXZhdGUgb2JqZWN0ICVwIHN0YXRlICVwIHRvICVwXG4iLAo+ICsJ ICAgIG9iaiwgb2JqX3N0YXRlLCBzdGF0ZSk7Cj4gIAo+ICAJcmV0dXJuIG9ial9zdGF0ZTsKPiAg fQo+IEBAIC0xMTEyLDkgKzExMTUsOSBAQCBkcm1fYXRvbWljX2dldF9jb25uZWN0b3Jfc3RhdGUo c3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAo+ICAJc3RhdGUtPmNvbm5lY3RvcnNbaW5k ZXhdLnB0ciA9IGNvbm5lY3RvcjsKPiAgCWNvbm5lY3Rvcl9zdGF0ZS0+c3RhdGUgPSBzdGF0ZTsK PiAgCj4gLQlEUk1fREVCVUdfQVRPTUlDKCJBZGRlZCBbQ09OTkVDVE9SOiVkOiVzXSAlcCBzdGF0 ZSB0byAlcFxuIiwKPiAtCQkJIGNvbm5lY3Rvci0+YmFzZS5pZCwgY29ubmVjdG9yLT5uYW1lLAo+ IC0JCQkgY29ubmVjdG9yX3N0YXRlLCBzdGF0ZSk7Cj4gKwlEQkcoIkFkZGVkIFtDT05ORUNUT1I6 JWQ6JXNdICVwIHN0YXRlIHRvICVwXG4iLAo+ICsJICAgIGNvbm5lY3Rvci0+YmFzZS5pZCwgY29u bmVjdG9yLT5uYW1lLAo+ICsJICAgIGNvbm5lY3Rvcl9zdGF0ZSwgc3RhdGUpOwo+ICAKPiAgCWlm IChjb25uZWN0b3Jfc3RhdGUtPmNydGMpIHsKPiAgCQlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNy dGNfc3RhdGU7Cj4gQEAgLTEzNjgsMTEgKzEzNzEsMTAgQEAgZHJtX2F0b21pY19zZXRfY3J0Y19m b3JfcGxhbmUoc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUsCj4gIAl9Cj4gIAo+ ICAJaWYgKGNydGMpCj4gLQkJRFJNX0RFQlVHX0FUT01JQygiTGluayBwbGFuZSBzdGF0ZSAlcCB0 byBbQ1JUQzolZDolc11cbiIsCj4gLQkJCQkgcGxhbmVfc3RhdGUsIGNydGMtPmJhc2UuaWQsIGNy dGMtPm5hbWUpOwo+ICsJCURCRygiTGluayBwbGFuZSBzdGF0ZSAlcCB0byBbQ1JUQzolZDolc11c biIsCj4gKwkJICAgIHBsYW5lX3N0YXRlLCBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lKTsKPiAg CWVsc2UKPiAtCQlEUk1fREVCVUdfQVRPTUlDKCJMaW5rIHBsYW5lIHN0YXRlICVwIHRvIFtOT0NS VENdXG4iLAo+IC0JCQkJIHBsYW5lX3N0YXRlKTsKPiArCQlEQkcoIkxpbmsgcGxhbmUgc3RhdGUg JXAgdG8gW05PQ1JUQ11cbiIsIHBsYW5lX3N0YXRlKTsKPiAgCj4gIAlyZXR1cm4gMDsKPiAgfQo+ IEBAIC0xMzkzLDExICsxMzk1LDEwIEBAIGRybV9hdG9taWNfc2V0X2ZiX2Zvcl9wbGFuZShzdHJ1 Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZSwKPiAgCQkJICAgIHN0cnVjdCBkcm1fZnJh bWVidWZmZXIgKmZiKQo+ICB7Cj4gIAlpZiAoZmIpCj4gLQkJRFJNX0RFQlVHX0FUT01JQygiU2V0 IFtGQjolZF0gZm9yIHBsYW5lIHN0YXRlICVwXG4iLAo+IC0JCQkJIGZiLT5iYXNlLmlkLCBwbGFu ZV9zdGF0ZSk7Cj4gKwkJREJHKCJTZXQgW0ZCOiVkXSBmb3IgcGxhbmUgc3RhdGUgJXBcbiIsCj4g KwkJICAgIGZiLT5iYXNlLmlkLCBwbGFuZV9zdGF0ZSk7Cj4gIAllbHNlCj4gLQkJRFJNX0RFQlVH X0FUT01JQygiU2V0IFtOT0ZCXSBmb3IgcGxhbmUgc3RhdGUgJXBcbiIsCj4gLQkJCQkgcGxhbmVf c3RhdGUpOwo+ICsJCURCRygiU2V0IFtOT0ZCXSBmb3IgcGxhbmUgc3RhdGUgJXBcbiIsIHBsYW5l X3N0YXRlKTsKPiAgCj4gIAlkcm1fZnJhbWVidWZmZXJfYXNzaWduKCZwbGFuZV9zdGF0ZS0+ZmIs IGZiKTsKPiAgfQo+IEBAIC0xNDc3LDExICsxNDc4LDEwIEBAIGRybV9hdG9taWNfc2V0X2NydGNf Zm9yX2Nvbm5lY3RvcihzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZSwKPiAg CQlkcm1fY29ubmVjdG9yX2dldChjb25uX3N0YXRlLT5jb25uZWN0b3IpOwo+ICAJCWNvbm5fc3Rh dGUtPmNydGMgPSBjcnRjOwo+ICAKPiAtCQlEUk1fREVCVUdfQVRPTUlDKCJMaW5rIGNvbm5lY3Rv ciBzdGF0ZSAlcCB0byBbQ1JUQzolZDolc11cbiIsCj4gLQkJCQkgY29ubl9zdGF0ZSwgY3J0Yy0+ YmFzZS5pZCwgY3J0Yy0+bmFtZSk7Cj4gKwkJREJHKCJMaW5rIGNvbm5lY3RvciBzdGF0ZSAlcCB0 byBbQ1JUQzolZDolc11cbiIsCj4gKwkJICAgIGNvbm5fc3RhdGUsIGNydGMtPmJhc2UuaWQsIGNy dGMtPm5hbWUpOwo+ICAJfSBlbHNlIHsKPiAtCQlEUk1fREVCVUdfQVRPTUlDKCJMaW5rIGNvbm5l Y3RvciBzdGF0ZSAlcCB0byBbTk9DUlRDXVxuIiwKPiAtCQkJCSBjb25uX3N0YXRlKTsKPiArCQlE QkcoIkxpbmsgY29ubmVjdG9yIHN0YXRlICVwIHRvIFtOT0NSVENdXG4iLCBjb25uX3N0YXRlKTsK PiAgCX0KPiAgCj4gIAlyZXR1cm4gMDsKPiBAQCAtMTUyNCw4ICsxNTI0LDggQEAgZHJtX2F0b21p Y19hZGRfYWZmZWN0ZWRfY29ubmVjdG9ycyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUs Cj4gIAlpZiAocmV0KQo+ICAJCXJldHVybiByZXQ7Cj4gIAo+IC0JRFJNX0RFQlVHX0FUT01JQygi QWRkaW5nIGFsbCBjdXJyZW50IGNvbm5lY3RvcnMgZm9yIFtDUlRDOiVkOiVzXSB0byAlcFxuIiwK PiAtCQkJIGNydGMtPmJhc2UuaWQsIGNydGMtPm5hbWUsIHN0YXRlKTsKPiArCURCRygiQWRkaW5n IGFsbCBjdXJyZW50IGNvbm5lY3RvcnMgZm9yIFtDUlRDOiVkOiVzXSB0byAlcFxuIiwKPiArCSAg ICBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lLCBzdGF0ZSk7Cj4gIAo+ICAJLyoKPiAgCSAqIENo YW5nZWQgY29ubmVjdG9ycyBhcmUgYWxyZWFkeSBpbiBAc3RhdGUsIHNvIG9ubHkgbmVlZCB0byBs b29rCj4gQEAgLTE2MDgsNyArMTYwOCw3IEBAIGludCBkcm1fYXRvbWljX2NoZWNrX29ubHkoc3Ry dWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICAJc3RydWN0IGRybV9jcnRjX3N0YXRlICpj cnRjX3N0YXRlOwo+ICAJaW50IGksIHJldCA9IDA7Cj4gIAo+IC0JRFJNX0RFQlVHX0FUT01JQygi Y2hlY2tpbmcgJXBcbiIsIHN0YXRlKTsKPiArCURCRygiY2hlY2tpbmcgJXBcbiIsIHN0YXRlKTsK PiAgCj4gIAlmb3JfZWFjaF9uZXdfcGxhbmVfaW5fc3RhdGUoc3RhdGUsIHBsYW5lLCBwbGFuZV9z dGF0ZSwgaSkgewo+ICAJCXJldCA9IGRybV9hdG9taWNfcGxhbmVfY2hlY2socGxhbmUsIHBsYW5l X3N0YXRlKTsKPiBAQCAtMTY3MSw3ICsxNjcxLDcgQEAgaW50IGRybV9hdG9taWNfY29tbWl0KHN0 cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKPiAgCWlmIChyZXQpCj4gIAkJcmV0dXJuIHJl dDsKPiAgCj4gLQlEUk1fREVCVUdfQVRPTUlDKCJjb21taXR0aW5nICVwXG4iLCBzdGF0ZSk7Cj4g KwlEQkcoImNvbW1pdHRpbmcgJXBcbiIsIHN0YXRlKTsKPiAgCj4gIAlyZXR1cm4gY29uZmlnLT5m dW5jcy0+YXRvbWljX2NvbW1pdChzdGF0ZS0+ZGV2LCBzdGF0ZSwgZmFsc2UpOwo+ICB9Cj4gQEAg LTE3MDAsNyArMTcwMCw3IEBAIGludCBkcm1fYXRvbWljX25vbmJsb2NraW5nX2NvbW1pdChzdHJ1 Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAlpZiAocmV0KQo+ICAJCXJldHVybiByZXQ7 Cj4gIAo+IC0JRFJNX0RFQlVHX0FUT01JQygiY29tbWl0dGluZyAlcCBub25ibG9ja2luZ1xuIiwg c3RhdGUpOwo+ICsJREJHKCJjb21taXR0aW5nICVwIG5vbmJsb2NraW5nXG4iLCBzdGF0ZSk7Cj4g IAo+ICAJcmV0dXJuIGNvbmZpZy0+ZnVuY3MtPmF0b21pY19jb21taXQoc3RhdGUtPmRldiwgc3Rh dGUsIHRydWUpOwo+ICB9Cj4gQEAgLTE3MTcsNyArMTcxNyw3IEBAIHN0YXRpYyB2b2lkIGRybV9h dG9taWNfcHJpbnRfc3RhdGUoY29uc3Qgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ ICAJc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5lY3Rvcl9zdGF0ZTsKPiAgCWludCBp Owo+ICAKPiAtCURSTV9ERUJVR19BVE9NSUMoImNoZWNraW5nICVwXG4iLCBzdGF0ZSk7Cj4gKwlE QkcoImNoZWNraW5nICVwXG4iLCBzdGF0ZSk7Cj4gIAo+ICAJZm9yX2VhY2hfbmV3X3BsYW5lX2lu X3N0YXRlKHN0YXRlLCBwbGFuZSwgcGxhbmVfc3RhdGUsIGkpCj4gIAkJZHJtX2F0b21pY19wbGFu ZV9wcmludF9zdGF0ZSgmcCwgcGxhbmVfc3RhdGUpOwoKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVs QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=