From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Subject: Re: [PATCH 2/2] drm/amdgpu: validate fallback BOs Date: Mon, 19 Mar 2018 11:43:20 +0100 Message-ID: <385cc644-93f1-128c-3fde-d098a424658f@gmail.com> References: <20180319100048.8925-1-david1.zhou@amd.com> <20180319100048.8925-2-david1.zhou@amd.com> Reply-To: christian.koenig-5C7GfCeVMHo@public.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180319100048.8925-2-david1.zhou-5C7GfCeVMHo@public.gmane.org> Content-Language: en-US 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: Chunming Zhou , amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org QW0gMTkuMDMuMjAxOCB1bSAxMTowMCBzY2hyaWViIENodW5taW5nIFpob3U6Cj4gaXNzdWU6Cj4g R2FtZSBGMSBwZXJmb3JtYW5jZSBkcm9wcyAxMyUgd2hlbiBwZXIgdm0gYm8gaXMgZW5hYmxlZC4K Pgo+IHJvb3QgY2F1c2U6Cj4gaWYgc29tZSBCT3MgYXJlIGZhbGxiYWNrIHRvIGFsbG93ZWQgZG9t YWluLCB0aGV5IHdpbGwgbmV2ZXIgYmUgdmFsaWRhdGVkIGlmIG5vIGV2aWN0aW9uIGhhcHBlbnMs Cj4gdGhhdCBtZWFucyB0aGV5IGFsd2F5cyBleGlzdCBpbiBhbGxvd2VkIGRvbWFpbi4KPgo+IEZp eDoKPiBtYWludGFpbiBhIHBlciB2bSBhbGxvd2VkIGRvbWFpbiBCT3MgbGlzdCwgdGhlbiB0cnkg dG8gdmFsaWRhdGVkIHRoZW0gd2l0aCBwZXJmZXJyZWQgZG9tYWluLgoKVGhlIGlkZWEgc291bmRz IGdvb2QsIGJ1dCBJIGZpbmQgdGhlIGltcGxlbWVudGF0aW9uIGEgYml0IG92ZXJraWxsLgoKR2l2 ZSBtZSBhIHNlY29uZCB0byBoYWNrIHNvbWV0aGluZyB0b2dldGhlciwKQ2hyaXN0aWFuLgoKPgo+ IENoYW5nZS1JZDogSTQzMzU0NzBiZjg2N2I0NmFjOTNjOGUyNTMxZWFjM2Y4YmE5YWMyZGEKPiBT aWduZWQtb2ZmLWJ5OiBDaHVubWluZyBaaG91IDxkYXZpZDEuemhvdUBhbWQuY29tPgo+IC0tLQo+ ICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMgfCAxNSArKysrKysrLS0t LQo+ICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMgfCA0OSArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKy0tCj4gICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHVfdm0uaCB8ICA3ICsrKystCj4gICAzIGZpbGVzIGNoYW5nZWQsIDYzIGluc2VydGlv bnMoKyksIDggZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1X2NzLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVf Y3MuYwo+IGluZGV4IDM4M2JmMmQzMWM5Mi4uNzUwOWI2YmQyMDQ3IDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMKPiBAQCAtMzU5LDcgKzM1OSw3IEBAIHZvaWQgYW1k Z3B1X2NzX3JlcG9ydF9tb3ZlZF9ieXRlcyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdTY0 IG51bV9ieXRlcywKPiAgIH0KPiAgIAo+ICAgc3RhdGljIGludCBhbWRncHVfY3NfYm9fdmFsaWRh dGUoc3RydWN0IGFtZGdwdV9jc19wYXJzZXIgKnAsCj4gLQkJCQkgc3RydWN0IGFtZGdwdV9ibyAq Ym8pCj4gKwkJCQkgc3RydWN0IGFtZGdwdV9ibyAqYm8sIGJvb2wgKmFsbG93ZWQpCj4gICB7Cj4g ICAJc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSBhbWRncHVfdHRtX2FkZXYoYm8tPnRiby5i ZGV2KTsKPiAgIAlzdHJ1Y3QgdHRtX29wZXJhdGlvbl9jdHggY3R4ID0gewo+IEBAIC0zNzQsNiAr Mzc0LDggQEAgc3RhdGljIGludCBhbWRncHVfY3NfYm9fdmFsaWRhdGUoc3RydWN0IGFtZGdwdV9j c19wYXJzZXIgKnAsCj4gICAJaWYgKGJvLT5waW5fY291bnQpCj4gICAJCXJldHVybiAwOwo+ICAg Cj4gKwlpZiAoYWxsb3dlZCkKPiArCQkqYWxsb3dlZCA9IGZhbHNlOwo+ICAgCS8qIERvbid0IG1v dmUgdGhpcyBidWZmZXIgaWYgd2UgaGF2ZSBkZXBsZXRlZCBvdXIgYWxsb3dhbmNlCj4gICAJICog dG8gbW92ZSBpdC4gRG9uJ3QgbW92ZSBhbnl0aGluZyBpZiB0aGUgdGhyZXNob2xkIGlzIHplcm8u Cj4gICAJICovCj4gQEAgLTM5Niw2ICszOTgsOSBAQCBzdGF0aWMgaW50IGFtZGdwdV9jc19ib192 YWxpZGF0ZShzdHJ1Y3QgYW1kZ3B1X2NzX3BhcnNlciAqcCwKPiAgIAl9Cj4gICAKPiAgIHJldHJ5 Ogo+ICsJaWYgKGRvbWFpbiAhPSBiby0+cHJlZmVycmVkX2RvbWFpbnMgJiYgZG9tYWluID09IGJv LT5hbGxvd2VkX2RvbWFpbnMgJiYKPiArCSAgICBhbGxvd2VkKQo+ICsJCSphbGxvd2VkID0gdHJ1 ZTsKPiAgIAlhbWRncHVfdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihibywgZG9tYWluKTsKPiAg IAlyID0gdHRtX2JvX3ZhbGlkYXRlKCZiby0+dGJvLCAmYm8tPnBsYWNlbWVudCwgJmN0eCk7Cj4g ICAKPiBAQCAtNDc5LDE5ICs0ODQsMTkgQEAgc3RhdGljIGJvb2wgYW1kZ3B1X2NzX3RyeV9ldmlj dChzdHJ1Y3QgYW1kZ3B1X2NzX3BhcnNlciAqcCwKPiAgIAlyZXR1cm4gZmFsc2U7Cj4gICB9Cj4g ICAKPiAtc3RhdGljIGludCBhbWRncHVfY3NfdmFsaWRhdGUodm9pZCAqcGFyYW0sIHN0cnVjdCBh bWRncHVfYm8gKmJvKQo+ICtzdGF0aWMgaW50IGFtZGdwdV9jc192YWxpZGF0ZSh2b2lkICpwYXJh bSwgc3RydWN0IGFtZGdwdV9ibyAqYm8sIGJvb2wgKmFsbG93ZWQpCj4gICB7Cj4gICAJc3RydWN0 IGFtZGdwdV9jc19wYXJzZXIgKnAgPSBwYXJhbTsKPiAgIAlpbnQgcjsKPiAgIAo+ICAgCWRvIHsK PiAtCQlyID0gYW1kZ3B1X2NzX2JvX3ZhbGlkYXRlKHAsIGJvKTsKPiArCQlyID0gYW1kZ3B1X2Nz X2JvX3ZhbGlkYXRlKHAsIGJvLCBhbGxvd2VkKTsKPiAgIAl9IHdoaWxlIChyID09IC1FTk9NRU0g JiYgYW1kZ3B1X2NzX3RyeV9ldmljdChwLCBibykpOwo+ICAgCWlmIChyKQo+ICAgCQlyZXR1cm4g cjsKPiAgIAo+ICAgCWlmIChiby0+c2hhZG93KQo+IC0JCXIgPSBhbWRncHVfY3NfYm9fdmFsaWRh dGUocCwgYm8tPnNoYWRvdyk7Cj4gKwkJciA9IGFtZGdwdV9jc19ib192YWxpZGF0ZShwLCBiby0+ c2hhZG93LCBOVUxMKTsKPiAgIAo+ICAgCXJldHVybiByOwo+ICAgfQo+IEBAIC01MjgsNyArNTMz LDcgQEAgc3RhdGljIGludCBhbWRncHVfY3NfbGlzdF92YWxpZGF0ZShzdHJ1Y3QgYW1kZ3B1X2Nz X3BhcnNlciAqcCwKPiAgIAkJaWYgKHAtPmV2aWN0YWJsZSA9PSBsb2JqKQo+ICAgCQkJcC0+ZXZp Y3RhYmxlID0gTlVMTDsKPiAgIAo+IC0JCXIgPSBhbWRncHVfY3NfdmFsaWRhdGUocCwgYm8pOwo+ ICsJCXIgPSBhbWRncHVfY3NfdmFsaWRhdGUocCwgYm8sIE5VTEwpOwo+ICAgCQlpZiAocikKPiAg IAkJCXJldHVybiByOwo+ICAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV92bS5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMK PiBpbmRleCBlOWE0MWRkMDUzNDUuLjM2NWU4ZGNhMDVmNSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2FtZGdwdV92bS5jCj4gQEAgLTE4Niw2ICsxODYsMzUgQEAgdm9pZCBhbWRncHVf dm1fZ2V0X3BkX2JvKHN0cnVjdCBhbWRncHVfdm0gKnZtLAo+ICAgCWxpc3RfYWRkKCZlbnRyeS0+ dHYuaGVhZCwgdmFsaWRhdGVkKTsKPiAgIH0KPiAgIAo+ICtzdGF0aWMgaW50IGFtZGdwdV92bV90 cnlfdmFsaWRhdGVfYWxsb3dlZChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKPiArCQkJCQkg IHN0cnVjdCBhbWRncHVfdm0gKnZtLAo+ICsJCQkJCSAgaW50ICgqdmFsaWRhdGUpKHZvaWQgKnAs Cj4gKwkJCQkJCQkgIHN0cnVjdCBhbWRncHVfYm8gKmJvLAo+ICsJCQkJCQkJICBib29sICphbGxv d2VkKSwKPiArCQkJCQkgIHZvaWQgKnBhcmFtKQo+ICt7Cj4gKwlzdHJ1Y3QgYW1kZ3B1X3ZtX2Jv X2Jhc2UgKmJvX2Jhc2UsICp0bXA7Cj4gKwlpbnQgcjsKPiArCWJvb2wgYWxsb3dlZDsKPiArCj4g KwlzcGluX2xvY2soJnZtLT5zdGF0dXNfbG9jayk7Cj4gKwlsaXN0X2Zvcl9lYWNoX2VudHJ5X3Nh ZmUoYm9fYmFzZSwgdG1wLCAmdm0tPmFsbG93ZWRfZG9tYWluLAo+ICsJCQkJIGFsbG93ZWRfZG9t YWluX2xpc3QpIHsKPiArCQlzcGluX3VubG9jaygmdm0tPnN0YXR1c19sb2NrKTsKPiArCQlyID0g dmFsaWRhdGUocGFyYW0sIGJvX2Jhc2UtPmJvLCAmYWxsb3dlZCk7Cj4gKwkJaWYgKHIpCj4gKwkJ CXJldHVybiByOwo+ICsJCXNwaW5fbG9jaygmdm0tPnN0YXR1c19sb2NrKTsKPiArCQlpZiAoIWFs bG93ZWQpCj4gKwkJCWxpc3RfZGVsX2luaXQoJmJvX2Jhc2UtPmFsbG93ZWRfZG9tYWluX2xpc3Qp Owo+ICsJCWlmIChib19iYXNlLT5iby0+dGJvLnR5cGUgIT0gdHRtX2JvX3R5cGVfa2VybmVsKQo+ ICsJCQlsaXN0X21vdmUoJmJvX2Jhc2UtPnZtX3N0YXR1cywgJnZtLT5tb3ZlZCk7Cj4gKwkJZWxz ZQo+ICsJCQlsaXN0X21vdmUoJmJvX2Jhc2UtPnZtX3N0YXR1cywgJnZtLT5yZWxvY2F0ZWQpOwo+ ICsJfQo+ICsJc3Bpbl91bmxvY2soJnZtLT5zdGF0dXNfbG9jayk7Cj4gKwlyZXR1cm4gMDsKPiAr fQo+ICAgLyoqCj4gICAgKiBhbWRncHVfdm1fdmFsaWRhdGVfcHRfYm9zIC0gdmFsaWRhdGUgdGhl IHBhZ2UgdGFibGUgQk9zCj4gICAgKgo+IEBAIC0xOTcsMTYgKzIyNiwxOSBAQCB2b2lkIGFtZGdw dV92bV9nZXRfcGRfYm8oc3RydWN0IGFtZGdwdV92bSAqdm0sCj4gICAgKiBWYWxpZGF0ZSB0aGUg cGFnZSB0YWJsZSBCT3Mgb24gY29tbWFuZCBzdWJtaXNzaW9uIGlmIG5lY2Nlc3NhcnkuCj4gICAg Ki8KPiAgIGludCBhbWRncHVfdm1fdmFsaWRhdGVfcHRfYm9zKHN0cnVjdCBhbWRncHVfZGV2aWNl ICphZGV2LCBzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSwKPiAtCQkJICAgICAgaW50ICgqdmFsaWRhdGUp KHZvaWQgKnAsIHN0cnVjdCBhbWRncHVfYm8gKmJvKSwKPiArCQkJICAgICAgaW50ICgqdmFsaWRh dGUpKHZvaWQgKnAsIHN0cnVjdCBhbWRncHVfYm8gKmJvLAo+ICsJCQkJCSAgICAgIGJvb2wgKmFs bG93ZWQpLAo+ICAgCQkJICAgICAgdm9pZCAqcGFyYW0pCj4gICB7Cj4gICAJc3RydWN0IHR0bV9i b19nbG9iYWwgKmdsb2IgPSBhZGV2LT5tbWFuLmJkZXYuZ2xvYjsKPiArCUxJU1RfSEVBRCh0bXBf YWxsb3dlZCk7Cj4gICAJaW50IHI7Cj4gICAKPiAgIAlzcGluX2xvY2soJnZtLT5zdGF0dXNfbG9j ayk7Cj4gICAJd2hpbGUgKCFsaXN0X2VtcHR5KCZ2bS0+ZXZpY3RlZCkpIHsKPiAgIAkJc3RydWN0 IGFtZGdwdV92bV9ib19iYXNlICpib19iYXNlOwo+ICAgCQlzdHJ1Y3QgYW1kZ3B1X2JvICpibzsK PiArCQlib29sIGFsbG93ZWQgPSBmYWxzZTsKPiAgIAo+ICAgCQlib19iYXNlID0gbGlzdF9maXJz dF9lbnRyeSgmdm0tPmV2aWN0ZWQsCj4gICAJCQkJCSAgIHN0cnVjdCBhbWRncHVfdm1fYm9fYmFz ZSwKPiBAQCAtMjE2LDcgKzI0OCw3IEBAIGludCBhbWRncHVfdm1fdmFsaWRhdGVfcHRfYm9zKHN0 cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSwKPiAgIAkJYm8g PSBib19iYXNlLT5ibzsKPiAgIAkJQlVHX09OKCFibyk7Cj4gICAJCWlmIChiby0+cGFyZW50KSB7 Cj4gLQkJCXIgPSB2YWxpZGF0ZShwYXJhbSwgYm8pOwo+ICsJCQlyID0gdmFsaWRhdGUocGFyYW0s IGJvLCAmYWxsb3dlZCk7Cj4gICAJCQlpZiAocikKPiAgIAkJCQlyZXR1cm4gcjsKPiAgIAo+IEBA IC0yMzUsNiArMjY3LDEwIEBAIGludCBhbWRncHVfdm1fdmFsaWRhdGVfcHRfYm9zKHN0cnVjdCBh bWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSwKPiAgIAkJfQo+ICAgCj4g ICAJCXNwaW5fbG9jaygmdm0tPnN0YXR1c19sb2NrKTsKPiArCQlpZiAoYWxsb3dlZCkKPiArCQkJ bGlzdF9hZGRfdGFpbCgmYm9fYmFzZS0+YWxsb3dlZF9kb21haW5fbGlzdCwKPiArCQkJCSAgICAg ICZ0bXBfYWxsb3dlZCk7Cj4gKwo+ICAgCQlpZiAoYm8tPnRiby50eXBlICE9IHR0bV9ib190eXBl X2tlcm5lbCkKPiAgIAkJCWxpc3RfbW92ZSgmYm9fYmFzZS0+dm1fc3RhdHVzLCAmdm0tPm1vdmVk KTsKPiAgIAkJZWxzZQo+IEBAIC0yNDIsNiArMjc4LDEyIEBAIGludCBhbWRncHVfdm1fdmFsaWRh dGVfcHRfYm9zKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1kZ3B1X3ZtICp2 bSwKPiAgIAl9Cj4gICAJc3Bpbl91bmxvY2soJnZtLT5zdGF0dXNfbG9jayk7Cj4gICAKPiArCXIg PSBhbWRncHVfdm1fdHJ5X3ZhbGlkYXRlX2FsbG93ZWQoYWRldiwgdm0sIHZhbGlkYXRlLCBwYXJh bSk7Cj4gKwlpZiAocikKPiArCQlyZXR1cm4gcjsKPiArCXNwaW5fbG9jaygmdm0tPnN0YXR1c19s b2NrKTsKPiArCWxpc3Rfc3BsaWNlX2luaXQoJnRtcF9hbGxvd2VkLCAmdm0tPmFsbG93ZWRfZG9t YWluKTsKPiArCXNwaW5fdW5sb2NrKCZ2bS0+c3RhdHVzX2xvY2spOwo+ICAgCXJldHVybiAwOwo+ ICAgfQo+ICAgCj4gQEAgLTE4NjgsNiArMTkxMCw3IEBAIHN0cnVjdCBhbWRncHVfYm9fdmEgKmFt ZGdwdV92bV9ib19hZGQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCj4gICAJYm9fdmEtPmJh c2UuYm8gPSBibzsKPiAgIAlJTklUX0xJU1RfSEVBRCgmYm9fdmEtPmJhc2UuYm9fbGlzdCk7Cj4g ICAJSU5JVF9MSVNUX0hFQUQoJmJvX3ZhLT5iYXNlLnZtX3N0YXR1cyk7Cj4gKwlJTklUX0xJU1Rf SEVBRCgmYm9fdmEtPmJhc2UuYWxsb3dlZF9kb21haW5fbGlzdCk7Cj4gICAKPiAgIAlib192YS0+ cmVmX2NvdW50ID0gMTsKPiAgIAlJTklUX0xJU1RfSEVBRCgmYm9fdmEtPnZhbGlkcyk7Cj4gQEAg LTIyMzcsNiArMjI4MCw3IEBAIHZvaWQgYW1kZ3B1X3ZtX2JvX3JtdihzdHJ1Y3QgYW1kZ3B1X2Rl dmljZSAqYWRldiwKPiAgIAo+ICAgCXNwaW5fbG9jaygmdm0tPnN0YXR1c19sb2NrKTsKPiAgIAls aXN0X2RlbCgmYm9fdmEtPmJhc2Uudm1fc3RhdHVzKTsKPiArCWxpc3RfZGVsKCZib192YS0+YmFz ZS5hbGxvd2VkX2RvbWFpbl9saXN0KTsKPiAgIAlzcGluX3VubG9jaygmdm0tPnN0YXR1c19sb2Nr KTsKPiAgIAo+ICAgCWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShtYXBwaW5nLCBuZXh0LCAmYm9f dmEtPnZhbGlkcywgbGlzdCkgewo+IEBAIC0yNDA5LDYgKzI0NTMsNyBAQCBpbnQgYW1kZ3B1X3Zt X2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsIHN0cnVjdCBhbWRncHVfdm0gKnZtLAo+ ICAgCWZvciAoaSA9IDA7IGkgPCBBTURHUFVfTUFYX1ZNSFVCUzsgaSsrKQo+ICAgCQl2bS0+cmVz ZXJ2ZWRfdm1pZFtpXSA9IE5VTEw7Cj4gICAJc3Bpbl9sb2NrX2luaXQoJnZtLT5zdGF0dXNfbG9j ayk7Cj4gKwlJTklUX0xJU1RfSEVBRCgmdm0tPmFsbG93ZWRfZG9tYWluKTsKPiAgIAlJTklUX0xJ U1RfSEVBRCgmdm0tPmV2aWN0ZWQpOwo+ICAgCUlOSVRfTElTVF9IRUFEKCZ2bS0+cmVsb2NhdGVk KTsKPiAgIAlJTklUX0xJU1RfSEVBRCgmdm0tPm1vdmVkKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfdm0uaAo+IGluZGV4IGNmMmM2NjdlZTUzOC4uNTRjMzlkM2VhNmQ4IDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5oCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmgKPiBAQCAtMTQ5LDYgKzE0OSw3 IEBAIHN0cnVjdCBhbWRncHVfdm1fYm9fYmFzZSB7Cj4gICAKPiAgIAkvKiBwcm90ZWN0ZWQgYnkg c3BpbmxvY2sgKi8KPiAgIAlzdHJ1Y3QgbGlzdF9oZWFkCQl2bV9zdGF0dXM7Cj4gKwlzdHJ1Y3Qg bGlzdF9oZWFkCQlhbGxvd2VkX2RvbWFpbl9saXN0Owo+ICAgCj4gICAJLyogcHJvdGVjdGVkIGJ5 IHRoZSBCTyBiZWluZyByZXNlcnZlZCAqLwo+ICAgCWJvb2wJCQkJbW92ZWQ7Cj4gQEAgLTE3Nyw2 ICsxNzgsOSBAQCBzdHJ1Y3QgYW1kZ3B1X3ZtIHsKPiAgIAkvKiBwcm90ZWN0aW5nIGludmFsaWRh dGVkICovCj4gICAJc3BpbmxvY2tfdAkJc3RhdHVzX2xvY2s7Cj4gICAKPiArCS8qIHBlciB2bSBi byBpcyB2YWxpZGF0ZWQgdG8gYWxsb3dlZCBkb21haW4gKi8KPiArCXN0cnVjdCBsaXN0X2hlYWQJ YWxsb3dlZF9kb21haW47Cj4gKwo+ICAgCS8qIEJPcyB3aG8gbmVlZHMgYSB2YWxpZGF0aW9uICov Cj4gICAJc3RydWN0IGxpc3RfaGVhZAlldmljdGVkOwo+ICAgCj4gQEAgLTI2Niw3ICsyNzAsOCBA QCB2b2lkIGFtZGdwdV92bV9nZXRfcGRfYm8oc3RydWN0IGFtZGdwdV92bSAqdm0sCj4gICAJCQkg c3RydWN0IGFtZGdwdV9ib19saXN0X2VudHJ5ICplbnRyeSk7Cj4gICBib29sIGFtZGdwdV92bV9y ZWFkeShzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSk7Cj4gICBpbnQgYW1kZ3B1X3ZtX3ZhbGlkYXRlX3B0 X2JvcyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgc3RydWN0IGFtZGdwdV92bSAqdm0sCj4g LQkJCSAgICAgIGludCAoKmNhbGxiYWNrKSh2b2lkICpwLCBzdHJ1Y3QgYW1kZ3B1X2JvICpibyks Cj4gKwkJCSAgICAgIGludCAoKmNhbGxiYWNrKSh2b2lkICpwLCBzdHJ1Y3QgYW1kZ3B1X2JvICpi bywKPiArCQkJCQkgICAgICBib29sICphbGxvd2VkKSwKPiAgIAkJCSAgICAgIHZvaWQgKnBhcmFt KTsKPiAgIGludCBhbWRncHVfdm1fYWxsb2NfcHRzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2 LAo+ICAgCQkJc3RydWN0IGFtZGdwdV92bSAqdm0sCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2FtZC1nZngK