From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Deucher Subject: Re: [PATCH 1/2] drm/amdgpu: add custom power policy support in sysfs Date: Tue, 16 Jan 2018 10:58:55 -0500 Message-ID: References: <1516103404-24914-1-git-send-email-Rex.Zhu@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1516103404-24914-1-git-send-email-Rex.Zhu-5C7GfCeVMHo@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: Rex Zhu Cc: amd-gfx list T24gVHVlLCBKYW4gMTYsIDIwMTggYXQgNjo1MCBBTSwgUmV4IFpodSA8UmV4LlpodUBhbWQuY29t PiB3cm90ZToKPiB3aGVuIGNhdCBwcF9wb3dlcl9wcm9maWxlX21vZGUgb24gVmVnYTEwCj4gTlVN ICAgICAgICBNT0RFX05BTUUgQlVTWV9TRVRfUE9JTlQgRlBTIFVTRV9STENfQlVTWSBNSU5fQUNU SVZFX0xFVkVMCj4gICAwIDNEX0ZVTExfU0NSRUVOIDogICAgICAgICAgICAgNzAgIDYwICAgICAg ICAgIDEgICAgICAgICAgICAgIDMKPiAgIDEgICBQT1dFUl9TQVZJTkcgOiAgICAgICAgICAgICA5 MCAgNjAgICAgICAgICAgMCAgICAgICAgICAgICAgMAo+ICAgMiAgICAgICAgICBWSURFTyo6ICAg ICAgICAgICAgIDcwICA2MCAgICAgICAgICAwICAgICAgICAgICAgICAwCj4gICAzICAgICAgICAg ICAgIFZSIDogICAgICAgICAgICAgNzAgIDkwICAgICAgICAgIDAgICAgICAgICAgICAgIDAKPiAg IDQgICAgICAgQ09NUFVURVIgOiAgICAgICAgICAgICAzMCAgNjAgICAgICAgICAgMCAgICAgICAg ICAgICAgNgo+ICAgNSAgICAgICAgIENVU1RPTSA6ICAgICAgICAgICAgICAwICAgMCAgICAgICAg ICAwICAgICAgICAgICAgICAwCj4KPiB0aGUgcmVzdWx0IHNob3cgYWxsIHRoZSBwcm9maWxlIG1v ZGUgd2UgY2FuIHN1cHBvcnQgYW5kIGN1c3RvbSBtb2RlLgo+IHVzZXIgY2FuIGVjaG8gdGhlIG51 bSgwLTQpIHRvIHBwX3Bvd2VyX3Byb2ZpbGVfbW9kZSB0byBzZWxlY3QgdGhlIHByb2ZpbGUKPiBt b2RlIG9yIGNhbiBlY2hvICI1IHZhbHVlIHZhbHVlIHZhbHVlIHZhbHVlIiB0byBlbnRlciBDVVNU T00gbW9kZS4KPiB0aGUgZm91ciBwYXJhbWV0ZXIgaXMgc2V0X3BvaW50L0ZQUy9VU0VSX1JMQ19C VVNZL01JTl9BQ1RJVkVfTEVWRUwuCj4KPiBDaGFuZ2UtSWQ6IEk3MjYzNDY0NmE5YTE3OWNjZDU3 ZjE3NWI0YzBiM2Y0NWU1MzhhMDNmCj4gU2lnbmVkLW9mZi1ieTogUmV4IFpodSA8UmV4LlpodUBh bWQuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZHBtLmgg ICAgICAgIHwgIDggKysrCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5j ICAgICAgICAgfCA4MSArKysrKysrKysrKysrKysrKysrKysrKysrLQo+ICBkcml2ZXJzL2dwdS9k cm0vYW1kL2luY2x1ZGUva2dkX3BwX2ludGVyZmFjZS5oIHwgMTEgKysrLQo+ICAzIGZpbGVzIGNo YW5nZWQsIDk4IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2RwbS5oIGIvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvYW1kZ3B1X2RwbS5oCj4gaW5kZXggOGE4ZDA5ZGQuLjk4NmYxZDUgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2RwbS5oCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2RwbS5oCj4gQEAgLTM2Niw2ICszNjYs MTQgQEAgZW51bSBhbWRncHVfcGNpZV9nZW4gewo+ICAgICAgICAgICAgICAgICAgICAgICAgIChh ZGV2KS0+cG93ZXJwbGF5LnBwX2hhbmRsZSwgdmlydHVhbF9hZGRyX2xvdywgXAo+ICAgICAgICAg ICAgICAgICAgICAgICAgIHZpcnR1YWxfYWRkcl9oaSwgbWNfYWRkcl9sb3csIG1jX2FkZHJfaGks IHNpemUpCj4KPiArI2RlZmluZSBhbWRncHVfZHBtX2dldF9wb3dlcl9wcm9maWxlX21vZGUoYWRl diwgYnVmKSBcCj4gKyAgICAgICAgICAgICAgICgoYWRldiktPnBvd2VycGxheS5wcF9mdW5jcy0+ Z2V0X3Bvd2VyX3Byb2ZpbGVfbW9kZShcCj4gKyAgICAgICAgICAgICAgICAgICAgICAgKGFkZXYp LT5wb3dlcnBsYXkucHBfaGFuZGxlLCBidWYpKQo+ICsKPiArI2RlZmluZSBhbWRncHVfZHBtX3Nl dF9wb3dlcl9wcm9maWxlX21vZGUoYWRldiwgcGFyYW1ldGVyLCBzaXplKSBcCj4gKyAgICAgICAg ICAgICAgICgoYWRldiktPnBvd2VycGxheS5wcF9mdW5jcy0+c2V0X3Bvd2VyX3Byb2ZpbGVfbW9k ZShcCj4gKyAgICAgICAgICAgICAgICAgICAgICAgKGFkZXYpLT5wb3dlcnBsYXkucHBfaGFuZGxl LCBwYXJhbWV0ZXIsIHNpemUpKQo+ICsKPiAgc3RydWN0IGFtZGdwdV9kcG0gewo+ICAgICAgICAg c3RydWN0IGFtZGdwdV9wcyAgICAgICAgKnBzOwo+ICAgICAgICAgLyogbnVtYmVyIG9mIHZhbGlk IHBvd2VyIHN0YXRlcyAqLwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHVfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5jCj4g aW5kZXggZTVlZTdjZi4uNjYyZWRjYSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfcG0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2Ft ZGdwdV9wbS5jCj4gQEAgLTU4NCw2ICs1ODQsNzMgQEAgc3RhdGljIHNzaXplX3QgYW1kZ3B1X3Nl dF9wcF9tY2xrX29kKHN0cnVjdCBkZXZpY2UgKmRldiwKPiAgICAgICAgIHJldHVybiBjb3VudDsK PiAgfQo+Cj4gK3N0YXRpYyBzc2l6ZV90IGFtZGdwdV9nZXRfcHBfcG93ZXJfcHJvZmlsZV9tb2Rl KHN0cnVjdCBkZXZpY2UgKmRldiwKPiArICAgICAgICAgICAgICAgc3RydWN0IGRldmljZV9hdHRy aWJ1dGUgKmF0dHIsCj4gKyAgICAgICAgICAgICAgIGNoYXIgKmJ1ZikKPiArewo+ICsgICAgICAg c3RydWN0IGRybV9kZXZpY2UgKmRkZXYgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPiArICAgICAg IHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2ID0gZGRldi0+ZGV2X3ByaXZhdGU7Cj4gKwo+ICsg ICAgICAgaWYgKGFkZXYtPnBvd2VycGxheS5wcF9mdW5jcy0+Z2V0X3Bvd2VyX3Byb2ZpbGVfbW9k ZSkKPiArICAgICAgICAgICAgICAgcmV0dXJuIGFtZGdwdV9kcG1fZ2V0X3Bvd2VyX3Byb2ZpbGVf bW9kZShhZGV2LCBidWYpOwo+ICsKPiArICAgICAgIHJldHVybiBzbnByaW50ZihidWYsIFBBR0Vf U0laRSwgIlxuIik7Cj4gK30KPiArCj4gKwo+ICtzdGF0aWMgc3NpemVfdCBhbWRncHVfc2V0X3Bw X3Bvd2VyX3Byb2ZpbGVfbW9kZShzdHJ1Y3QgZGV2aWNlICpkZXYsCj4gKyAgICAgICAgICAgICAg IHN0cnVjdCBkZXZpY2VfYXR0cmlidXRlICphdHRyLAo+ICsgICAgICAgICAgICAgICBjb25zdCBj aGFyICpidWYsCj4gKyAgICAgICAgICAgICAgIHNpemVfdCBjb3VudCkKPiArewo+ICsgICAgICAg aW50IHJldCA9IDB4ZmY7Cj4gKyAgICAgICBzdHJ1Y3QgZHJtX2RldmljZSAqZGRldiA9IGRldl9n ZXRfZHJ2ZGF0YShkZXYpOwo+ICsgICAgICAgc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSBk ZGV2LT5kZXZfcHJpdmF0ZTsKPiArICAgICAgIHVpbnQzMl90IHBhcmFtZXRlcl9zaXplID0gMDsK PiArICAgICAgIGxvbmcgcGFyYW1ldGVyWzY0XTsKPiArICAgICAgIGNoYXIgKnN1Yl9zdHIsIGJ1 Zl9jcHlbMTI4XTsKPiArICAgICAgIGNoYXIgKnRtcF9zdHI7Cj4gKyAgICAgICB1aW50MzJfdCBp ID0gMDsKPiArICAgICAgIGNoYXIgdG1wWzJdOwo+ICsgICAgICAgbG9uZyBpbnQgcHJvZmlsZV9t b2RlID0gMDsKPiArICAgICAgIGNvbnN0IGNoYXIgZGVsaW1pdGVyWzNdID0geycgJywgJ1xuJywg J1wwJ307Cj4gKwo+ICsgICAgICAgdG1wWzBdID0gKihidWYpOwo+ICsgICAgICAgdG1wWzFdID0g J1wwJzsKPiArICAgICAgIHJldCA9IGtzdHJ0b2wodG1wLCAwLCAmcHJvZmlsZV9tb2RlKTsKPiAr ICAgICAgIGlmIChyZXQpCj4gKyAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKPiArCj4gKyAgICAg ICBpZiAocHJvZmlsZV9tb2RlID09IFBQX1NNQ19QT1dFUl9QUk9GSUxFX0NVU1RPTSkgewo+ICsg ICAgICAgICAgICAgICBpZiAoY291bnQgPCAyIHx8IGNvdW50ID4gMTI3KQo+ICsgICAgICAgICAg ICAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOwo+ICsgICAgICAgICAgICAgICB3aGlsZSAoaXNz cGFjZSgqKytidWYpKQo+ICsgICAgICAgICAgICAgICAgICAgICAgIGkrKzsKPiArICAgICAgICAg ICAgICAgbWVtY3B5KGJ1Zl9jcHksIGJ1ZiwgY291bnQtaSk7Cj4gKyAgICAgICAgICAgICAgIHRt cF9zdHIgPSBidWZfY3B5Owo+ICsgICAgICAgICAgICAgICB3aGlsZSAodG1wX3N0clswXSkgewo+ ICsgICAgICAgICAgICAgICAgICAgICAgIHN1Yl9zdHIgPSBzdHJzZXAoJnRtcF9zdHIsIGRlbGlt aXRlcik7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgcmV0ID0ga3N0cnRvbChzdWJfc3RyLCAw LCAmcGFyYW1ldGVyW3BhcmFtZXRlcl9zaXplXSk7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAg aWYgKHJldCkgewo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY291bnQgPSAtRUlO VkFMOwo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsOwo+ICsgICAg ICAgICAgICAgICAgICAgICAgIH0KPiArICAgICAgICAgICAgICAgICAgICAgICBwcl9pbmZvKCJ2 YWx1ZSBpcyAlbGQgXG4iLCBwYXJhbWV0ZXJbcGFyYW1ldGVyX3NpemVdKTsKPiArICAgICAgICAg ICAgICAgICAgICAgICBwYXJhbWV0ZXJfc2l6ZSsrOwo+ICsgICAgICAgICAgICAgICAgICAgICAg IHdoaWxlIChpc3NwYWNlKCp0bXBfc3RyKSkKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHRtcF9zdHIrKzsKPiArICAgICAgICAgICAgICAgfQo+ICsgICAgICAgfQo+ICsgICAgICAg cGFyYW1ldGVyW3BhcmFtZXRlcl9zaXplXSA9IHByb2ZpbGVfbW9kZTsKPiArICAgICAgIGlmIChh ZGV2LT5wb3dlcnBsYXkucHBfZnVuY3MtPnNldF9wb3dlcl9wcm9maWxlX21vZGUpCj4gKyAgICAg ICAgICAgICAgIHJldCA9IGFtZGdwdV9kcG1fc2V0X3Bvd2VyX3Byb2ZpbGVfbW9kZShhZGV2LCBw YXJhbWV0ZXIsIHBhcmFtZXRlcl9zaXplKTsKPiArCj4gKyAgICAgICBpZiAoIXJldCkKPiArICAg ICAgICAgICAgICAgcmV0dXJuIGNvdW50Owo+ICtmYWlsOgo+ICsgICAgICAgcmV0dXJuIC1FSU5W QUw7Cj4gK30KPiArCj4gIHN0YXRpYyBzc2l6ZV90IGFtZGdwdV9nZXRfcHBfcG93ZXJfcHJvZmls ZShzdHJ1Y3QgZGV2aWNlICpkZXYsCj4gICAgICAgICAgICAgICAgIGNoYXIgKmJ1Ziwgc3RydWN0 IGFtZF9wcF9wcm9maWxlICpxdWVyeSkKPiAgewo+IEBAIC03NzIsNyArODM5LDkgQEAgc3RhdGlj IERFVklDRV9BVFRSKHBwX2dmeF9wb3dlcl9wcm9maWxlLCBTX0lSVUdPIHwgU19JV1VTUiwKPiAg c3RhdGljIERFVklDRV9BVFRSKHBwX2NvbXB1dGVfcG93ZXJfcHJvZmlsZSwgU19JUlVHTyB8IFNf SVdVU1IsCj4gICAgICAgICAgICAgICAgIGFtZGdwdV9nZXRfcHBfY29tcHV0ZV9wb3dlcl9wcm9m aWxlLAo+ICAgICAgICAgICAgICAgICBhbWRncHVfc2V0X3BwX2NvbXB1dGVfcG93ZXJfcHJvZmls ZSk7Cj4gLQo+ICtzdGF0aWMgREVWSUNFX0FUVFIocHBfcG93ZXJfcHJvZmlsZV9tb2RlLCBTX0lS VUdPIHwgU19JV1VTUiwKPiArICAgICAgICAgICAgICAgYW1kZ3B1X2dldF9wcF9wb3dlcl9wcm9m aWxlX21vZGUsCj4gKyAgICAgICAgICAgICAgIGFtZGdwdV9zZXRfcHBfcG93ZXJfcHJvZmlsZV9t b2RlKTsKPiAgc3RhdGljIHNzaXplX3QgYW1kZ3B1X2h3bW9uX3Nob3dfdGVtcChzdHJ1Y3QgZGV2 aWNlICpkZXYsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qg ZGV2aWNlX2F0dHJpYnV0ZSAqYXR0ciwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNoYXIgKmJ1ZikKPiBAQCAtMTQwNSw2ICsxNDc0LDE0IEBAIGludCBhbWRncHVfcG1f c3lzZnNfaW5pdChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKPiAgICAgICAgICAgICAgICAg cmV0dXJuIHJldDsKPiAgICAgICAgIH0KPgo+ICsgICAgICAgcmV0ID0gZGV2aWNlX2NyZWF0ZV9m aWxlKGFkZXYtPmRldiwKPiArICAgICAgICAgICAgICAgICAgICAgICAmZGV2X2F0dHJfcHBfcG93 ZXJfcHJvZmlsZV9tb2RlKTsKPiArICAgICAgIGlmIChyZXQpIHsKPiArICAgICAgICAgICAgICAg RFJNX0VSUk9SKCJmYWlsZWQgdG8gY3JlYXRlIGRldmljZSBmaWxlICIKPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJwcF9wb3dlcl9wcm9maWxlX21vZGVcbiIpOwo+ICsgICAgICAg ICAgICAgICByZXR1cm4gcmV0Owo+ICsgICAgICAgfQo+ICsKPiAgICAgICAgIHJldCA9IGFtZGdw dV9kZWJ1Z2ZzX3BtX2luaXQoYWRldik7Cj4gICAgICAgICBpZiAocmV0KSB7Cj4gICAgICAgICAg ICAgICAgIERSTV9FUlJPUigiRmFpbGVkIHRvIHJlZ2lzdGVyIGRlYnVnZnMgZmlsZSBmb3IgZHBt IVxuIik7Cj4gQEAgLTE0NDAsNiArMTUxNyw4IEBAIHZvaWQgYW1kZ3B1X3BtX3N5c2ZzX2Zpbmko c3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCj4gICAgICAgICAgICAgICAgICAgICAgICAgJmRl dl9hdHRyX3BwX2dmeF9wb3dlcl9wcm9maWxlKTsKPiAgICAgICAgIGRldmljZV9yZW1vdmVfZmls ZShhZGV2LT5kZXYsCj4gICAgICAgICAgICAgICAgICAgICAgICAgJmRldl9hdHRyX3BwX2NvbXB1 dGVfcG93ZXJfcHJvZmlsZSk7Cj4gKyAgICAgICBkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2 LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICZkZXZfYXR0cl9wcF9wb3dlcl9wcm9maWxlX21v ZGUpOwo+ICB9Cj4KPiAgdm9pZCBhbWRncHVfcG1fY29tcHV0ZV9jbG9ja3Moc3RydWN0IGFtZGdw dV9kZXZpY2UgKmFkZXYpCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvaW5jbHVk ZS9rZ2RfcHBfaW50ZXJmYWNlLmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2luY2x1ZGUva2dkX3Bw X2ludGVyZmFjZS5oCj4gaW5kZXggMGY4OWQyYTguLmE4MjNjMDMgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2FtZC9pbmNsdWRlL2tnZF9wcF9pbnRlcmZhY2UuaAo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvaW5jbHVkZS9rZ2RfcHBfaW50ZXJmYWNlLmgKPiBAQCAtMTQwLDcgKzE0 MCwxNCBAQCBzdHJ1Y3QgYW1kX3BwX2luaXQgewo+ICAgICAgICAgdWludDMyX3QgZmVhdHVyZV9t YXNrOwo+ICB9Owo+Cj4gLQo+ICtlbnVtIFBQX1NNQ19QT1dFUl9QUk9GSUxFIHsKCldlIHByb2Jh Ymx5IHdhbnQgdG8gYWRkIGE6ClBQX1NNQ19QT1dFUl9QUk9GSUxFX0FVVE8KYXMgd2VsbC4gIHRo YXQgd2F5IHdoZW4gYXV0byBpcyBzZWxlY3RlZCwgdGhlIGRyaXZlciBjYW4gc2VsZWN0IHRoZQpw cm9maWxlIGR5bmFtaWNhbGx5IGJhc2VkIG9uIGNvbmRpdGlvbnMgaW4gdGhlIGRyaXZlci4gIFNl bGVjdGluZwphbnl0aGluZyBlbHNlIHdpbGwgZm9yY2UgdGhhdCBwcm9maWxlLiAgV2l0aCB0aGF0 IGZpeGVkOgpSZXZpZXdlZC1ieTogQWxleCBEZXVjaGVyIDxhbGV4YW5kZXIuZGV1Y2hlckBhbWQu Y29tPgoKCj4gKyAgICAgICBQUF9TTUNfUE9XRVJfUFJPRklMRV9GVUxMU0NSRUVOM0QgPSAweDAs Cj4gKyAgICAgICBQUF9TTUNfUE9XRVJfUFJPRklMRV9QT1dFUlNBVklORyAgPSAweDEsCj4gKyAg ICAgICBQUF9TTUNfUE9XRVJfUFJPRklMRV9WSURFTyAgICAgICAgPSAweDIsCj4gKyAgICAgICBQ UF9TTUNfUE9XRVJfUFJPRklMRV9WUiAgICAgICAgICAgPSAweDMsCj4gKyAgICAgICBQUF9TTUNf UE9XRVJfUFJPRklMRV9DT01QVVRFICAgICAgPSAweDQsCj4gKyAgICAgICBQUF9TTUNfUE9XRVJf UFJPRklMRV9DVVNUT00gICAgICAgPSAweDUsCj4gK307Cj4KPiAgZW51bSB7Cj4gICAgICAgICBQ UF9HUk9VUF9VTktOT1dOID0gMCwKPiBAQCAtMjg5LDYgKzI5Niw4IEBAIHN0cnVjdCBhbWRfcG1f ZnVuY3Mgewo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBwX2Rpc3Bs YXlfY2xvY2tfcmVxdWVzdCAqY2xvY2spOwo+ICAgICAgICAgaW50ICgqZ2V0X2Rpc3BsYXlfbW9k ZV92YWxpZGF0aW9uX2Nsb2Nrcykodm9pZCAqaGFuZGxlLAo+ICAgICAgICAgICAgICAgICBzdHJ1 Y3QgYW1kX3BwX3NpbXBsZV9jbG9ja19pbmZvICpjbG9ja3MpOwo+ICsgICAgICAgaW50ICgqZ2V0 X3Bvd2VyX3Byb2ZpbGVfbW9kZSkodm9pZCAqaGFuZGxlLCBjaGFyICpidWYpOwo+ICsgICAgICAg aW50ICgqc2V0X3Bvd2VyX3Byb2ZpbGVfbW9kZSkodm9pZCAqaGFuZGxlLCBsb25nICppbnB1dCwg dWludDMyX3Qgc2l6ZSk7Cj4gIH07Cj4KPiAgI2VuZGlmCj4gLS0KPiAxLjkuMQo+Cj4gX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBhbWQtZ2Z4IG1haWxp bmcgbGlzdAo+IGFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=