From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Zhang, Jerry (Junwei)" Subject: Re: [PATCH 1/6] drm/amdgpu: correctly sign extend 48bit addresses v3 Date: Fri, 31 Aug 2018 09:51:36 +0800 Message-ID: <5B889F28.8020202@amd.com> References: <20180830121414.3397-1-christian.koenig@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180830121414.3397-1-christian.koenig-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: =?UTF-8?B?Q2hyaXN0aWFuIEvDtm5pZw==?= , amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org UGF0Y2ggMX41IGFyZQoKUmV2aWV3ZWQtYnk6IEp1bndlaSBaaGFuZyA8SmVycnkuWmhhbmdAYW1k LmNvbT4KClBhdGNoIDYgaXMKCkFja2VkLWJ5OiBKdW53ZWkgWmhhbmcgPEplcnJ5LlpoYW5nQGFt ZC5jb20+CgoKQlRXLCBbUEFUQ0ggNC82XSBkcm0vYW1kZ3B1OiBtYW51YWxseSBtYXAgdGhlIHNo YWRvdyBCT3MgYWdhaW4KCndpdGggdGhpcyBwYXRjaCwgdGhlIHVzZXIgY2Fubm90IGNyZWF0ZSBh IHNoYWRvdyBibyB3aXRoIGdhcnQgYWRkcmVzcy4KYW55d2F5LCBJIGNhbm5vdCBpbWFnZSB0aGF0 IHVzZSBjYXNlIGVpdGhlci4KClJlZ2FyZHMsCkplcnJ5CgpPbiAwOC8zMC8yMDE4IDA4OjE0IFBN LCBDaHJpc3RpYW4gS8O2bmlnIHdyb3RlOgo+IENvcnJlY3Qgc2lnbiBleHRlbmQgdGhlIEdNQyBh ZGRyZXNzZXMgdG8gNDhiaXQuCj4KPiB2Mjogc2lnbiBleHRlbmRpbmcgdHVybmVkIG91dCBlYXNp ZXIgdGhhbiB0aG91Z2h0Lgo+IHYzOiBjbGVhbiB1cCB0aGUgZGVmaW5lcyBhbmQgbW92ZSB0aGVt IGludG8gYW1kZ3B1X2dtYy5oIGFzIHdlbGwKPgo+IFNpZ25lZC1vZmYtYnk6IENocmlzdGlhbiBL w7ZuaWcgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNvbT4KPiAtLS0KPiAgIGRyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2FtZGdwdV9hbWRrZmQuYyB8ICAyICstCj4gICBkcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9hbWRncHVfY3MuYyAgICAgfCAgMiArLQo+ICAgZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1X2dlbS5jICAgIHwgMTAgKysrKy0tLS0tCj4gICBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfZ21jLmggICAgfCAyNiArKysrKysrKysrKysrKysrKysrKysr Cj4gICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfa21zLmMgICAgfCAgOCArKyst LS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfb2JqZWN0LmMgfCAgMiAr LQo+ICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZpcnQuYyAgIHwgIDYgKyst LS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5jICAgICB8ICA3ICsr Ky0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmggICAgIHwgMTMg LS0tLS0tLS0tLS0KPiAgIDkgZmlsZXMgY2hhbmdlZCwgNDQgaW5zZXJ0aW9ucygrKSwgMzIgZGVs ZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X2FtZGtmZC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZC5j Cj4gaW5kZXggOGM2NTJlY2M0ZjlhLi5iYzVjY2ZjYTY4YzUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZC5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZC5jCj4gQEAgLTEzNSw3ICsxMzUsNyBAQCB2b2lk IGFtZGdwdV9hbWRrZmRfZGV2aWNlX2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCj4g ICAJCQkubnVtX3F1ZXVlX3Blcl9waXBlID0gYWRldi0+Z2Z4Lm1lYy5udW1fcXVldWVfcGVyX3Bp cGUsCj4gICAJCQkuZ3B1dm1fc2l6ZSA9IG1pbihhZGV2LT52bV9tYW5hZ2VyLm1heF9wZm4KPiAg IAkJCQkJICA8PCBBTURHUFVfR1BVX1BBR0VfU0hJRlQsCj4gLQkJCQkJICBBTURHUFVfVkFfSE9M RV9TVEFSVCksCj4gKwkJCQkJICBBTURHUFVfR01DX0hPTEVfU1RBUlQpLAo+ICAgCQkJLmRybV9y ZW5kZXJfbWlub3IgPSBhZGV2LT5kZGV2LT5yZW5kZXItPmluZGV4Cj4gICAJCX07Cj4KPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMgYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYwo+IGluZGV4IGRkNzM0OTcwZTE2Ny4uZWYy YmZjMDRiNDFjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV9jcy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMKPiBA QCAtODM1LDcgKzgzNSw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2NzX3ZtX2hhbmRsaW5nKHN0cnVj dCBhbWRncHVfY3NfcGFyc2VyICpwKQo+ICAgCQkJaWYgKGNodW5rLT5jaHVua19pZCAhPSBBTURH UFVfQ0hVTktfSURfSUIpCj4gICAJCQkJY29udGludWU7Cj4KPiAtCQkJdmFfc3RhcnQgPSBjaHVu a19pYi0+dmFfc3RhcnQgJiBBTURHUFVfVkFfSE9MRV9NQVNLOwo+ICsJCQl2YV9zdGFydCA9IGNo dW5rX2liLT52YV9zdGFydCAmIEFNREdQVV9HTUNfSE9MRV9NQVNLOwo+ICAgCQkJciA9IGFtZGdw dV9jc19maW5kX21hcHBpbmcocCwgdmFfc3RhcnQsICZhb2JqLCAmbSk7Cj4gICAJCQlpZiAocikg ewo+ICAgCQkJCURSTV9FUlJPUigiSUIgdmFfc3RhcnQgaXMgaW52YWxpZFxuIik7Cj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9nZW0uYyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9nZW0uYwo+IGluZGV4IDcxNzkyZDgyMGFlMC4uZDMw YTA4Mzg4NTFiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV9nZW0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9nZW0uYwo+ IEBAIC01NzIsMTYgKzU3MiwxNiBAQCBpbnQgYW1kZ3B1X2dlbV92YV9pb2N0bChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+ICAgCQlyZXR1cm4gLUVJTlZBTDsKPiAgIAl9Cj4K PiAtCWlmIChhcmdzLT52YV9hZGRyZXNzID49IEFNREdQVV9WQV9IT0xFX1NUQVJUICYmCj4gLQkg ICAgYXJncy0+dmFfYWRkcmVzcyA8IEFNREdQVV9WQV9IT0xFX0VORCkgewo+ICsJaWYgKGFyZ3Mt PnZhX2FkZHJlc3MgPj0gQU1ER1BVX0dNQ19IT0xFX1NUQVJUICYmCj4gKwkgICAgYXJncy0+dmFf YWRkcmVzcyA8IEFNREdQVV9HTUNfSE9MRV9FTkQpIHsKPiAgIAkJZGV2X2RiZygmZGV2LT5wZGV2 LT5kZXYsCj4gICAJCQkidmFfYWRkcmVzcyAweCVMWCBpcyBpbiBWQSBob2xlIDB4JUxYLTB4JUxY XG4iLAo+IC0JCQlhcmdzLT52YV9hZGRyZXNzLCBBTURHUFVfVkFfSE9MRV9TVEFSVCwKPiAtCQkJ QU1ER1BVX1ZBX0hPTEVfRU5EKTsKPiArCQkJYXJncy0+dmFfYWRkcmVzcywgQU1ER1BVX0dNQ19I T0xFX1NUQVJULAo+ICsJCQlBTURHUFVfR01DX0hPTEVfRU5EKTsKPiAgIAkJcmV0dXJuIC1FSU5W QUw7Cj4gICAJfQo+Cj4gLQlhcmdzLT52YV9hZGRyZXNzICY9IEFNREdQVV9WQV9IT0xFX01BU0s7 Cj4gKwlhcmdzLT52YV9hZGRyZXNzICY9IEFNREdQVV9HTUNfSE9MRV9NQVNLOwo+Cj4gICAJaWYg KChhcmdzLT5mbGFncyAmIH52YWxpZF9mbGFncykgJiYgKGFyZ3MtPmZsYWdzICYgfnBydF9mbGFn cykpIHsKPiAgIAkJZGV2X2RiZygmZGV2LT5wZGV2LT5kZXYsICJpbnZhbGlkIGZsYWdzIGNvbWJp bmF0aW9uIDB4JTA4WFxuIiwKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvYW1kZ3B1X2dtYy5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2dtYy5o Cj4gaW5kZXggNzJmY2M5MzM4ZjVlLi40ODcxNWRkNTgwOGEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2dtYy5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvYW1kZ3B1X2dtYy5oCj4gQEAgLTMwLDYgKzMwLDE5IEBACj4KPiAgICNpbmNs dWRlICJhbWRncHVfaXJxLmgiCj4KPiArLyogVkEgaG9sZSBmb3IgNDhiaXQgYWRkcmVzc2VzIG9u IFZlZ2ExMCAqLwo+ICsjZGVmaW5lIEFNREdQVV9HTUNfSE9MRV9TVEFSVAkweDAwMDA4MDAwMDAw MDAwMDBVTEwKPiArI2RlZmluZSBBTURHUFVfR01DX0hPTEVfRU5ECTB4ZmZmZjgwMDAwMDAwMDAw MFVMTAo+ICsKPiArLyoKPiArICogSGFyZHdhcmUgaXMgcHJvZ3JhbW1lZCBhcyBpZiB0aGUgaG9s ZSBkb2Vzbid0IGV4aXN0cyB3aXRoIHN0YXJ0IGFuZCBlbmQKPiArICogYWRkcmVzcyB2YWx1ZXMu Cj4gKyAqCj4gKyAqIFRoaXMgbWFzayBpcyB1c2VkIHRvIHJlbW92ZSB0aGUgdXBwZXIgMTZiaXRz IG9mIHRoZSBWQSBhbmQgc28gY29tZSB1cCB3aXRoCj4gKyAqIHRoZSBsaW5lYXIgYWRkciB2YWx1 ZS4KPiArICovCj4gKyNkZWZpbmUgQU1ER1BVX0dNQ19IT0xFX01BU0sJMHgwMDAwZmZmZmZmZmZm ZmZmVUxMCj4gKwo+ICAgc3RydWN0IGZpcm13YXJlOwo+Cj4gICAvKgo+IEBAIC0xMzEsNiArMTQ0 LDE5IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBhbWRncHVfZ21jX3ZyYW1fZnVsbF92aXNpYmxlKHN0 cnVjdCBhbWRncHVfZ21jICpnbWMpCj4gICAJcmV0dXJuIChnbWMtPnJlYWxfdnJhbV9zaXplID09 IGdtYy0+dmlzaWJsZV92cmFtX3NpemUpOwo+ICAgfQo+Cj4gKy8qKgo+ICsgKiBhbWRncHVfZ21j X3NpZ25fZXh0ZW5kIC0gc2lnbiBleHRlbmQgdGhlIGdpdmVuIGdtYyBhZGRyZXNzCj4gKyAqCj4g KyAqIEBhZGRyOiBhZGRyZXNzIHRvIGV4dGVuZAo+ICsgKi8KPiArc3RhdGljIGlubGluZSB1aW50 NjRfdCBhbWRncHVfZ21jX3NpZ25fZXh0ZW5kKHVpbnQ2NF90IGFkZHIpCj4gK3sKPiArCWlmIChh ZGRyID49IEFNREdQVV9HTUNfSE9MRV9TVEFSVCkKPiArCQlhZGRyIHw9IEFNREdQVV9HTUNfSE9M RV9FTkQ7Cj4gKwo+ICsJcmV0dXJuIGFkZHI7Cj4gK30KPiArCj4gICB2b2lkIGFtZGdwdV9nbWNf Z2V0X3BkZV9mb3JfYm8oc3RydWN0IGFtZGdwdV9ibyAqYm8sIGludCBsZXZlbCwKPiAgIAkJCSAg ICAgICB1aW50NjRfdCAqYWRkciwgdWludDY0X3QgKmZsYWdzKTsKPiAgIHVpbnQ2NF90IGFtZGdw dV9nbWNfcGRfYWRkcihzdHJ1Y3QgYW1kZ3B1X2JvICpibyk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9rbXMuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV9rbXMuYwo+IGluZGV4IDljNGU0NTkzNmFkZS4uMjlhYzM4NzNlZWIwIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9rbXMuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9rbXMuYwo+IEBAIC02NTUsMTEg KzY1NSwxMSBAQCBzdGF0aWMgaW50IGFtZGdwdV9pbmZvX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHZvaWQgKmRhdGEsIHN0cnVjdCBkcm1fZmlsZQo+Cj4gICAJCWRldl9pbmZvLnZpcnR1 YWxfYWRkcmVzc19vZmZzZXQgPSBBTURHUFVfVkFfUkVTRVJWRURfU0laRTsKPiAgIAkJZGV2X2lu Zm8udmlydHVhbF9hZGRyZXNzX21heCA9Cj4gLQkJCW1pbih2bV9zaXplLCBBTURHUFVfVkFfSE9M RV9TVEFSVCk7Cj4gKwkJCW1pbih2bV9zaXplLCBBTURHUFVfR01DX0hPTEVfU1RBUlQpOwo+Cj4g LQkJaWYgKHZtX3NpemUgPiBBTURHUFVfVkFfSE9MRV9TVEFSVCkgewo+IC0JCQlkZXZfaW5mby5o aWdoX3ZhX29mZnNldCA9IEFNREdQVV9WQV9IT0xFX0VORDsKPiAtCQkJZGV2X2luZm8uaGlnaF92 YV9tYXggPSBBTURHUFVfVkFfSE9MRV9FTkQgfCB2bV9zaXplOwo+ICsJCWlmICh2bV9zaXplID4g QU1ER1BVX0dNQ19IT0xFX1NUQVJUKSB7Cj4gKwkJCWRldl9pbmZvLmhpZ2hfdmFfb2Zmc2V0ID0g QU1ER1BVX0dNQ19IT0xFX0VORDsKPiArCQkJZGV2X2luZm8uaGlnaF92YV9tYXggPSBBTURHUFVf R01DX0hPTEVfRU5EIHwgdm1fc2l6ZTsKPiAgIAkJfQo+ICAgCQlkZXZfaW5mby52aXJ0dWFsX2Fk ZHJlc3NfYWxpZ25tZW50ID0gbWF4KChpbnQpUEFHRV9TSVpFLCBBTURHUFVfR1BVX1BBR0VfU0la RSk7Cj4gICAJCWRldl9pbmZvLnB0ZV9mcmFnbWVudF9zaXplID0gKDEgPDwgYWRldi0+dm1fbWFu YWdlci5mcmFnbWVudF9zaXplKSAqIEFNREdQVV9HUFVfUEFHRV9TSVpFOwo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfb2JqZWN0LmMgYi9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfb2JqZWN0LmMKPiBpbmRleCBiNWYyMGI0MjQzOWUuLjBj YmY2NTFhODhhNiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHVfb2JqZWN0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfb2Jq ZWN0LmMKPiBAQCAtMTM2OCw3ICsxMzY4LDcgQEAgdTY0IGFtZGdwdV9ib19ncHVfb2Zmc2V0KHN0 cnVjdCBhbWRncHVfYm8gKmJvKQo+ICAgCVdBUk5fT05fT05DRShiby0+dGJvLm1lbS5tZW1fdHlw ZSA9PSBUVE1fUExfVlJBTSAmJgo+ICAgCQkgICAgICEoYm8tPmZsYWdzICYgQU1ER1BVX0dFTV9D UkVBVEVfVlJBTV9DT05USUdVT1VTKSk7Cj4KPiAtCXJldHVybiBiby0+dGJvLm9mZnNldDsKPiAr CXJldHVybiBhbWRncHVfZ21jX3NpZ25fZXh0ZW5kKGJvLT50Ym8ub2Zmc2V0KTsKPiAgIH0KPgo+ ICAgLyoqCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92 aXJ0LmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdmlydC5jCj4gaW5kZXgg Mzg4NTYzNjU1ODBkLi5mMmYzNThhYTA1OTcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvYW1kZ3B1X3ZpcnQuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV92aXJ0LmMKPiBAQCAtMjgsOSArMjgsNyBAQCB1aW50NjRfdCBhbWRncHVfY3Nh X3ZhZGRyKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQo+ICAgCXVpbnQ2NF90IGFkZHIgPSBh ZGV2LT52bV9tYW5hZ2VyLm1heF9wZm4gPDwgQU1ER1BVX0dQVV9QQUdFX1NISUZUOwo+Cj4gICAJ YWRkciAtPSBBTURHUFVfVkFfUkVTRVJWRURfU0laRTsKPiAtCj4gLQlpZiAoYWRkciA+PSBBTURH UFVfVkFfSE9MRV9TVEFSVCkKPiAtCQlhZGRyIHw9IEFNREdQVV9WQV9IT0xFX0VORDsKPiArCWFk ZHIgPSBhbWRncHVfZ21jX3NpZ25fZXh0ZW5kKGFkZHIpOwo+Cj4gICAJcmV0dXJuIGFkZHI7Cj4g ICB9Cj4gQEAgLTczLDcgKzcxLDcgQEAgdm9pZCBhbWRncHVfZnJlZV9zdGF0aWNfY3NhKHN0cnVj dCBhbWRncHVfZGV2aWNlICphZGV2KSB7Cj4gICBpbnQgYW1kZ3B1X21hcF9zdGF0aWNfY3NhKHN0 cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSwKPiAgIAkJCSAg c3RydWN0IGFtZGdwdV9ib192YSAqKmJvX3ZhKQo+ICAgewo+IC0JdWludDY0X3QgY3NhX2FkZHIg PSBhbWRncHVfY3NhX3ZhZGRyKGFkZXYpICYgQU1ER1BVX1ZBX0hPTEVfTUFTSzsKPiArCXVpbnQ2 NF90IGNzYV9hZGRyID0gYW1kZ3B1X2NzYV92YWRkcihhZGV2KSAmIEFNREdQVV9HTUNfSE9MRV9N QVNLOwo+ICAgCXN0cnVjdCB3d19hY3F1aXJlX2N0eCB0aWNrZXQ7Cj4gICAJc3RydWN0IGxpc3Rf aGVhZCBsaXN0Owo+ICAgCXN0cnVjdCBhbWRncHVfYm9fbGlzdF9lbnRyeSBwZDsKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMgYi9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0uYwo+IGluZGV4IDcyZjhjNzUwZTEyOC4uMzc5OTAz YzdmZGRmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92 bS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMKPiBAQCAt NDAzLDcgKzQwMyw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X3ZtX2NsZWFyX2JvKHN0cnVjdCBhbWRn cHVfZGV2aWNlICphZGV2LAo+ICAgCQlpZiAobGV2ZWwgPT0gYWRldi0+dm1fbWFuYWdlci5yb290 X2xldmVsKSB7Cj4gICAJCQlhdHNfZW50cmllcyA9IGFtZGdwdV92bV9sZXZlbF9zaGlmdChhZGV2 LCBsZXZlbCk7Cj4gICAJCQlhdHNfZW50cmllcyArPSBBTURHUFVfR1BVX1BBR0VfU0hJRlQ7Cj4g LQkJCWF0c19lbnRyaWVzID0gQU1ER1BVX1ZBX0hPTEVfU1RBUlQgPj4gYXRzX2VudHJpZXM7Cj4g KwkJCWF0c19lbnRyaWVzID0gQU1ER1BVX0dNQ19IT0xFX1NUQVJUID4+IGF0c19lbnRyaWVzOwo+ ICAgCQkJYXRzX2VudHJpZXMgPSBtaW4oYXRzX2VudHJpZXMsIGVudHJpZXMpOwo+ICAgCQkJZW50 cmllcyAtPSBhdHNfZW50cmllczsKPiAgIAkJfSBlbHNlIHsKPiBAQCAtNjMyLDcgKzYzMiw3IEBA IGludCBhbWRncHVfdm1fYWxsb2NfcHRzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAo+ICAg CWVhZGRyID0gc2FkZHIgKyBzaXplIC0gMTsKPgo+ICAgCWlmICh2bS0+cHRlX3N1cHBvcnRfYXRz KQo+IC0JCWF0cyA9IHNhZGRyIDwgQU1ER1BVX1ZBX0hPTEVfU1RBUlQ7Cj4gKwkJYXRzID0gc2Fk ZHIgPCBBTURHUFVfR01DX0hPTEVfU1RBUlQ7Cj4KPiAgIAlzYWRkciAvPSBBTURHUFVfR1BVX1BB R0VfU0laRTsKPiAgIAllYWRkciAvPSBBTURHUFVfR1BVX1BBR0VfU0laRTsKPiBAQCAtMTkyOSw3 ICsxOTI5LDggQEAgaW50IGFtZGdwdV92bV9jbGVhcl9mcmVlZChzdHJ1Y3QgYW1kZ3B1X2Rldmlj ZSAqYWRldiwKPiAgIAkJCXN0cnVjdCBhbWRncHVfYm9fdmFfbWFwcGluZywgbGlzdCk7Cj4gICAJ CWxpc3RfZGVsKCZtYXBwaW5nLT5saXN0KTsKPgo+IC0JCWlmICh2bS0+cHRlX3N1cHBvcnRfYXRz ICYmIG1hcHBpbmctPnN0YXJ0IDwgQU1ER1BVX1ZBX0hPTEVfU1RBUlQpCj4gKwkJaWYgKHZtLT5w dGVfc3VwcG9ydF9hdHMgJiYKPiArCQkgICAgbWFwcGluZy0+c3RhcnQgPCBBTURHUFVfR01DX0hP TEVfU1RBUlQpCj4gICAJCQlpbml0X3B0ZV92YWx1ZSA9IEFNREdQVV9QVEVfREVGQVVMVF9BVEM7 Cj4KPiAgIAkJciA9IGFtZGdwdV92bV9ib191cGRhdGVfbWFwcGluZyhhZGV2LCBOVUxMLCBOVUxM LCB2bSwKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3Zt LmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0uaAo+IGluZGV4IDYyMTE2 ZmE0NDcxOC4uYWU2MWZhNTg3MTgwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV92bS5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X3ZtLmgKPiBAQCAtMTAxLDE5ICsxMDEsNiBAQCBzdHJ1Y3QgYW1kZ3B1X2JvX2xpc3RfZW50 cnk7Cj4gICAvKiBoYXJkY29kZSB0aGF0IGxpbWl0IGZvciBub3cgKi8KPiAgICNkZWZpbmUgQU1E R1BVX1ZBX1JFU0VSVkVEX1NJWkUJCQkoMVVMTCA8PCAyMCkKPgo+IC0vKiBWQSBob2xlIGZvciA0 OGJpdCBhZGRyZXNzZXMgb24gVmVnYTEwICovCj4gLSNkZWZpbmUgQU1ER1BVX1ZBX0hPTEVfU1RB UlQJCQkweDAwMDA4MDAwMDAwMDAwMDBVTEwKPiAtI2RlZmluZSBBTURHUFVfVkFfSE9MRV9FTkQJ CQkweGZmZmY4MDAwMDAwMDAwMDBVTEwKPiAtCj4gLS8qCj4gLSAqIEhhcmR3YXJlIGlzIHByb2dy YW1tZWQgYXMgaWYgdGhlIGhvbGUgZG9lc24ndCBleGlzdHMgd2l0aCBzdGFydCBhbmQgZW5kCj4g LSAqIGFkZHJlc3MgdmFsdWVzLgo+IC0gKgo+IC0gKiBUaGlzIG1hc2sgaXMgdXNlZCB0byByZW1v dmUgdGhlIHVwcGVyIDE2Yml0cyBvZiB0aGUgVkEgYW5kIHNvIGNvbWUgdXAgd2l0aAo+IC0gKiB0 aGUgbGluZWFyIGFkZHIgdmFsdWUuCj4gLSAqLwo+IC0jZGVmaW5lIEFNREdQVV9WQV9IT0xFX01B U0sJCQkweDAwMDBmZmZmZmZmZmZmZmZVTEwKPiAtCj4gICAvKiBtYXggdm1pZHMgZGVkaWNhdGVk IGZvciBwcm9jZXNzICovCj4gICAjZGVmaW5lIEFNREdQVV9WTV9NQVhfUkVTRVJWRURfVk1JRAkx Cj4KPgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQt Z2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK