From patchwork Tue Sep 6 09:41:05 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [1/2] drm/amdgpu: fix GTT offset handling From: =?UTF-8?q?Christian=20K=C3=B6nig?= X-Patchwork-Id: 108938 Message-Id: <1473154866-2448-1-git-send-email-deathsimple@vodafone.de> To: amd-gfx@lists.freedesktop.org Date: Tue, 6 Sep 2016 11:41:05 +0200 RnJvbTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgoKT3RoZXJ3 aXNlIHdlIHJ1biBpbnRvIHByb2JsZW1zIG9uIDMyYml0IHN5c3RlbXMgd2l0aCBtb3JlIHRoYW4g NEdCIEdBUlQuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29l bmlnQGFtZC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5j IHwgMTAgKysrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVf dHRtLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdHRtLmMKaW5kZXggNzQx NzYxMC4uNDMzN2IzYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X3R0bS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV90dG0uYwpA QCAtNjQ5LDcgKzY0OSw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X3R0bV9iYWNrZW5kX2JpbmQoc3Ry dWN0IHR0bV90dCAqdHRtLAogCQkJcmV0dXJuIHI7CiAJCX0KIAl9Ci0JZ3R0LT5vZmZzZXQgPSAo dW5zaWduZWQgbG9uZykoYm9fbWVtLT5zdGFydCA8PCBQQUdFX1NISUZUKTsKKwlndHQtPm9mZnNl dCA9ICh1NjQpYm9fbWVtLT5zdGFydCA8PCBQQUdFX1NISUZUOwogCWlmICghdHRtLT5udW1fcGFn ZXMpIHsKIAkJV0FSTigxLCAibm90aGluZyB0byBiaW5kICVsdSBwYWdlcyBmb3IgbXJlZyAlcCBi YWNrICVwIVxuIiwKIAkJICAgICB0dG0tPm51bV9wYWdlcywgYm9fbWVtLCB0dG0pOwpAQCAtNjY0 LDggKzY2NCw4IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X3R0bV9iYWNrZW5kX2JpbmQoc3RydWN0IHR0 bV90dCAqdHRtLAogCQl0dG0tPnBhZ2VzLCBndHQtPnR0bS5kbWFfYWRkcmVzcywgZmxhZ3MpOwog CiAJaWYgKHIpIHsKLQkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gYmluZCAlbHUgcGFnZXMgYXQgMHgl MDhYXG4iLAotCQkJICB0dG0tPm51bV9wYWdlcywgKHVuc2lnbmVkKWd0dC0+b2Zmc2V0KTsKKwkJ RFJNX0VSUk9SKCJmYWlsZWQgdG8gYmluZCAlbHUgcGFnZXMgYXQgMHglMDhsbFhcbiIsCisJCQkg IHR0bS0+bnVtX3BhZ2VzLCBndHQtPm9mZnNldCk7CiAJCXJldHVybiByOwogCX0KIAlzcGluX2xv Y2soJmd0dC0+YWRldi0+Z3R0X2xpc3RfbG9jayk7CkBAIC02OTAsOCArNjkwLDggQEAgaW50IGFt ZGdwdV90dG1fcmVjb3Zlcl9nYXJ0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQogCQkJCSAg ICAgZmxhZ3MpOwogCQlpZiAocikgewogCQkJc3Bpbl91bmxvY2soJmFkZXYtPmd0dF9saXN0X2xv Y2spOwotCQkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gYmluZCAlbHUgcGFnZXMgYXQgMHglMDhYXG4i LAotCQkJCSAgZ3R0LT50dG0udHRtLm51bV9wYWdlcywgKHVuc2lnbmVkKWd0dC0+b2Zmc2V0KTsK KwkJCURSTV9FUlJPUigiZmFpbGVkIHRvIGJpbmQgJWx1IHBhZ2VzIGF0IDB4JTA4bGxYXG4iLAor CQkJCSAgZ3R0LT50dG0udHRtLm51bV9wYWdlcywgZ3R0LT5vZmZzZXQpOwogCQkJcmV0dXJuIHI7 CiAJCX0KIAl9Cg== From patchwork Tue Sep 6 09:41:06 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [2/2] drm/amdgpu: bind GTT on demand From: =?UTF-8?q?Christian=20K=C3=B6nig?= X-Patchwork-Id: 108939 Message-Id: <1473154866-2448-2-git-send-email-deathsimple@vodafone.de> To: amd-gfx@lists.freedesktop.org Date: Tue, 6 Sep 2016 11:41:06 +0200 RnJvbTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgoKV2UgZG9u J3QgcmVhbGx5IG5lZWQgdGhlIEdUVCB0YWJsZSBhbnkgbW9yZSBtb3N0IG9mIHRoZSB0aW1lLiBT byBiaW5kIGl0Cm9ubHkgb24gZGVtYW5kLgoKU2lnbmVkLW9mZi1ieTogQ2hyaXN0aWFuIEvDtm5p ZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgpSZXZpZXdlZC1ieTogQWxleCBEZXVjaGVyIDxh bGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPg0KQWNrZWQtYnk6IEZlbGl4IEt1ZWhsaW5nIDxGZWxp eC5LdWVobGluZ0BhbWQuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dS5oICAgICAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5j ICAgICB8IDM0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvYW1kZ3B1X29iamVjdC5jIHwgIDcgKysrKysrCiBkcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9hbWRncHVfdHRtLmMgICAgfCAzMyArKysrKysrKysrKysrKysrKysrKysrKysr Ky0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5oICAgIHwgIDMgKysr CiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdXZkLmMgICAgfCAgNCArKysrCiBk cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdmNlLmMgICAgfCAgNiArKysrKy0KIGRy aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5jICAgICB8ICAzICsrLQogOCBmaWxl cyBjaGFuZ2VkLCA4NCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oIGIvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1LmgKaW5kZXggOWQzOWZhOC4uMjhkNGE2NyAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1LmgKQEAgLTI1MjEsNiArMjUyMSw3IEBAIHN0YXRpYyBpbmxpbmUgdm9p ZCBhbWRncHVfYWNwaV9maW5pKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KSB7IH0KIHN0cnVj dCBhbWRncHVfYm9fdmFfbWFwcGluZyAqCiBhbWRncHVfY3NfZmluZF9tYXBwaW5nKHN0cnVjdCBh bWRncHVfY3NfcGFyc2VyICpwYXJzZXIsCiAJCSAgICAgICB1aW50NjRfdCBhZGRyLCBzdHJ1Y3Qg YW1kZ3B1X2JvICoqYm8pOworaW50IGFtZGdwdV9jc19zeXN2bV9hY2Nlc3NfcmVxdWlyZWQoc3Ry dWN0IGFtZGdwdV9jc19wYXJzZXIgKnBhcnNlcik7CiAKICNpZiBkZWZpbmVkKENPTkZJR19EUk1f QU1EX0RBTCkKIGludCBhbWRncHVfZG1fZGlzcGxheV9yZXN1bWUoc3RydWN0IGFtZGdwdV9kZXZp Y2UgKmFkZXYgKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV9jcy5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMKaW5kZXggMjBh MTk2Mi4uZTA2OTk3OCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X2NzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMKQEAg LTY0MCw4ICs2NDAsMTIgQEAgc3RhdGljIGludCBhbWRncHVfY3NfcGFyc2VyX2JvcyhzdHJ1Y3Qg YW1kZ3B1X2NzX3BhcnNlciAqcCwKIAkJfQogCX0KIAotCWlmIChwLT51Zl9lbnRyeS5yb2JqKQot CQlwLT5qb2ItPnVmX2FkZHIgKz0gYW1kZ3B1X2JvX2dwdV9vZmZzZXQocC0+dWZfZW50cnkucm9i aik7CisJaWYgKCFyICYmIHAtPnVmX2VudHJ5LnJvYmopIHsKKwkJc3RydWN0IGFtZGdwdV9ibyAq dWYgPSBwLT51Zl9lbnRyeS5yb2JqOworCisJCXIgPSBhbWRncHVfdHRtX2JpbmQodWYtPnRiby50 dG0sICZ1Zi0+dGJvLm1lbSk7CisJCXAtPmpvYi0+dWZfYWRkciArPSBhbWRncHVfYm9fZ3B1X29m ZnNldCh1Zik7CisJfQogCiBlcnJvcl92YWxpZGF0ZToKIAlpZiAocikgewpAQCAtMTE1NiwzICsx MTYwLDI5IEBAIGFtZGdwdV9jc19maW5kX21hcHBpbmcoc3RydWN0IGFtZGdwdV9jc19wYXJzZXIg KnBhcnNlciwKIAogCXJldHVybiBOVUxMOwogfQorCisvKioKKyAqIGFtZGdwdV9jc19zeXN2bV9h Y2Nlc3NfcmVxdWlyZWQgLSBtYWtlIEJPcyBhY2Nlc3NpYmxlIGJ5IHRoZSBzeXN0ZW0gVk0KKyAq CisgKiBAcGFyc2VyOiBjb21tYW5kIHN1Ym1pc3Npb24gcGFyc2VyIGNvbnRleHQKKyAqCisgKiBI ZWxwZXIgZm9yIFVWRC9WQ0UgVk0gZW11bGF0aW9uLCBtYWtlIHN1cmUgQk9zIGFyZSBhY2Nlc3Np YmxlIGJ5IHRoZSBzeXN0ZW0gVk0uCisgKi8KK2ludCBhbWRncHVfY3Nfc3lzdm1fYWNjZXNzX3Jl cXVpcmVkKHN0cnVjdCBhbWRncHVfY3NfcGFyc2VyICpwYXJzZXIpCit7CisJdW5zaWduZWQgaTsK KwlpbnQgcjsKKworCWlmICghcGFyc2VyLT5ib19saXN0KQorCQlyZXR1cm4gMDsKKworCWZvciAo aSA9IDA7IGkgPCBwYXJzZXItPmJvX2xpc3QtPm51bV9lbnRyaWVzOyBpKyspIHsKKwkJc3RydWN0 IGFtZGdwdV9ibyAqYm8gPSBwYXJzZXItPmJvX2xpc3QtPmFycmF5W2ldLnJvYmo7CisKKwkJciA9 IGFtZGdwdV90dG1fYmluZChiby0+dGJvLnR0bSwgJmJvLT50Ym8ubWVtKTsKKwkJaWYgKHVubGlr ZWx5KHIpKQorCQkJcmV0dXJuIHI7CisJfQorCisJcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfb2JqZWN0LmMgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfb2JqZWN0LmMKaW5kZXggYjE3NzM0ZS4uZGM3M2YxMSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X29iamVjdC5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9vYmplY3QuYwpAQCAtNjQ2LDYgKzY0 NiwxMSBAQCBpbnQgYW1kZ3B1X2JvX3Bpbl9yZXN0cmljdGVkKHN0cnVjdCBhbWRncHVfYm8gKmJv LCB1MzIgZG9tYWluLAogCQlkZXZfZXJyKGJvLT5hZGV2LT5kZXYsICIlcCBwaW4gZmFpbGVkXG4i LCBibyk7CiAJCWdvdG8gZXJyb3I7CiAJfQorCXIgPSBhbWRncHVfdHRtX2JpbmQoYm8tPnRiby50 dG0sICZiby0+dGJvLm1lbSk7CisJaWYgKHVubGlrZWx5KHIpKSB7CisJCWRldl9lcnIoYm8tPmFk ZXYtPmRldiwgIiVwIGJpbmQgZmFpbGVkXG4iLCBibyk7CisJCWdvdG8gZXJyb3I7CisJfQogCiAJ Ym8tPnBpbl9jb3VudCA9IDE7CiAJaWYgKGdwdV9hZGRyICE9IE5VTEwpCkBAIC05MTgsNiArOTIz LDggQEAgdm9pZCBhbWRncHVfYm9fZmVuY2Uoc3RydWN0IGFtZGdwdV9ibyAqYm8sIHN0cnVjdCBm ZW5jZSAqZmVuY2UsCiB1NjQgYW1kZ3B1X2JvX2dwdV9vZmZzZXQoc3RydWN0IGFtZGdwdV9ibyAq Ym8pCiB7CiAJV0FSTl9PTl9PTkNFKGJvLT50Ym8ubWVtLm1lbV90eXBlID09IFRUTV9QTF9TWVNU RU0pOworCVdBUk5fT05fT05DRShiby0+dGJvLm1lbS5tZW1fdHlwZSA9PSBUVE1fUExfVFQgJiYK KwkJICAgICAhYW1kZ3B1X3R0bV9pc19ib3VuZChiby0+dGJvLnR0bSkpOwogCVdBUk5fT05fT05D RSghd3dfbXV0ZXhfaXNfbG9ja2VkKCZiby0+dGJvLnJlc3YtPmxvY2spICYmCiAJCSAgICAgIWJv LT5waW5fY291bnQpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfdHRtLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdHRtLmMKaW5k ZXggNDMzN2IzYS4uYzI5NGFhOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvYW1kZ3B1X3R0bS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV90 dG0uYwpAQCAtMjU2LDggKzI1NiwxMiBAQCBzdGF0aWMgaW50IGFtZGdwdV9tb3ZlX2JsaXQoc3Ry dWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibywKIAluZXdfc3RhcnQgPSAodTY0KW5ld19tZW0tPnN0 YXJ0IDw8IFBBR0VfU0hJRlQ7CiAKIAlzd2l0Y2ggKG9sZF9tZW0tPm1lbV90eXBlKSB7Ci0JY2Fz ZSBUVE1fUExfVlJBTToKIAljYXNlIFRUTV9QTF9UVDoKKwkJciA9IGFtZGdwdV90dG1fYmluZChi by0+dHRtLCBvbGRfbWVtKTsKKwkJaWYgKHIpCisJCQlyZXR1cm4gcjsKKworCWNhc2UgVFRNX1BM X1ZSQU06CiAJCW9sZF9zdGFydCArPSBiby0+YmRldi0+bWFuW29sZF9tZW0tPm1lbV90eXBlXS5n cHVfb2Zmc2V0OwogCQlicmVhazsKIAlkZWZhdWx0OgpAQCAtMjY1LDggKzI2OSwxMiBAQCBzdGF0 aWMgaW50IGFtZGdwdV9tb3ZlX2JsaXQoc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibywKIAkJ cmV0dXJuIC1FSU5WQUw7CiAJfQogCXN3aXRjaCAobmV3X21lbS0+bWVtX3R5cGUpIHsKLQljYXNl IFRUTV9QTF9WUkFNOgogCWNhc2UgVFRNX1BMX1RUOgorCQlyID0gYW1kZ3B1X3R0bV9iaW5kKGJv LT50dG0sIG5ld19tZW0pOworCQlpZiAocikKKwkJCXJldHVybiByOworCisJY2FzZSBUVE1fUExf VlJBTToKIAkJbmV3X3N0YXJ0ICs9IGJvLT5iZGV2LT5tYW5bbmV3X21lbS0+bWVtX3R5cGVdLmdw dV9vZmZzZXQ7CiAJCWJyZWFrOwogCWRlZmF1bHQ6CkBAIC02MzksNyArNjQ3LDYgQEAgc3RhdGlj IGludCBhbWRncHVfdHRtX2JhY2tlbmRfYmluZChzdHJ1Y3QgdHRtX3R0ICp0dG0sCiAJCQkJICAg c3RydWN0IHR0bV9tZW1fcmVnICpib19tZW0pCiB7CiAJc3RydWN0IGFtZGdwdV90dG1fdHQgKmd0 dCA9ICh2b2lkKil0dG07Ci0JdWludDMyX3QgZmxhZ3MgPSBhbWRncHVfdHRtX3R0X3B0ZV9mbGFn cyhndHQtPmFkZXYsIHR0bSwgYm9fbWVtKTsKIAlpbnQgcjsKIAogCWlmIChndHQtPnVzZXJwdHIp IHsKQEAgLTY2MCw2ICs2NjcsMjYgQEAgc3RhdGljIGludCBhbWRncHVfdHRtX2JhY2tlbmRfYmlu ZChzdHJ1Y3QgdHRtX3R0ICp0dG0sCiAJICAgIGJvX21lbS0+bWVtX3R5cGUgPT0gQU1ER1BVX1BM X09BKQogCQlyZXR1cm4gLUVJTlZBTDsKIAorCXJldHVybiAwOworfQorCitib29sIGFtZGdwdV90 dG1faXNfYm91bmQoc3RydWN0IHR0bV90dCAqdHRtKQoreworCXN0cnVjdCBhbWRncHVfdHRtX3R0 ICpndHQgPSAodm9pZCAqKXR0bTsKKworCXJldHVybiBndHQgJiYgIWxpc3RfZW1wdHkoJmd0dC0+ bGlzdCk7Cit9CisKK2ludCBhbWRncHVfdHRtX2JpbmQoc3RydWN0IHR0bV90dCAqdHRtLCBzdHJ1 Y3QgdHRtX21lbV9yZWcgKmJvX21lbSkKK3sKKwlzdHJ1Y3QgYW1kZ3B1X3R0bV90dCAqZ3R0ID0g KHZvaWQgKil0dG07CisJdWludDMyX3QgZmxhZ3M7CisJaW50IHI7CisKKwlpZiAoIXR0bSB8fCBh bWRncHVfdHRtX2lzX2JvdW5kKHR0bSkpCisJCXJldHVybiAwOworCisJZmxhZ3MgPSBhbWRncHVf dHRtX3R0X3B0ZV9mbGFncyhndHQtPmFkZXYsIHR0bSwgYm9fbWVtKTsKIAlyID0gYW1kZ3B1X2dh cnRfYmluZChndHQtPmFkZXYsIGd0dC0+b2Zmc2V0LCB0dG0tPm51bV9wYWdlcywKIAkJdHRtLT5w YWdlcywgZ3R0LT50dG0uZG1hX2FkZHJlc3MsIGZsYWdzKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X3R0bS5oCmluZGV4IDcyZjZiZmMuLjIxNGJhZTkgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV90dG0uaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfdHRtLmgKQEAgLTc3LDQgKzc3LDcgQEAgaW50IGFtZGdwdV9m aWxsX2J1ZmZlcihzdHJ1Y3QgYW1kZ3B1X2JvICpibywKIAkJCXN0cnVjdCBmZW5jZSAqKmZlbmNl KTsKIAogaW50IGFtZGdwdV9tbWFwKHN0cnVjdCBmaWxlICpmaWxwLCBzdHJ1Y3Qgdm1fYXJlYV9z dHJ1Y3QgKnZtYSk7Citib29sIGFtZGdwdV90dG1faXNfYm91bmQoc3RydWN0IHR0bV90dCAqdHRt KTsKK2ludCBhbWRncHVfdHRtX2JpbmQoc3RydWN0IHR0bV90dCAqdHRtLCBzdHJ1Y3QgdHRtX21l bV9yZWcgKmJvX21lbSk7CisKICNlbmRpZgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1X3V2ZC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1 X3V2ZC5jCmluZGV4IDU4ODhlOGEuLmZhYjdiYjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2FtZGdwdV91dmQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHVfdXZkLmMKQEAgLTg5MSw2ICs4OTEsMTAgQEAgaW50IGFtZGdwdV91dmRfcmluZ19w YXJzZV9jcyhzdHJ1Y3QgYW1kZ3B1X2NzX3BhcnNlciAqcGFyc2VyLCB1aW50MzJfdCBpYl9pZHgp CiAJCXJldHVybiAtRUlOVkFMOwogCX0KIAorCXIgPSBhbWRncHVfY3Nfc3lzdm1fYWNjZXNzX3Jl cXVpcmVkKHBhcnNlcik7CisJaWYgKHIpCisJCXJldHVybiByOworCiAJY3R4LnBhcnNlciA9IHBh cnNlcjsKIAljdHguYnVmX3NpemVzID0gYnVmX3NpemVzOwogCWN0eC5pYl9pZHggPSBpYl9pZHg7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdmNlLmMgYi9k cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdmNlLmMKaW5kZXggOWI3MWQ2Yy4uYjBj NjcwMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZjZS5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92Y2UuYwpAQCAtNjM0LDcg KzYzNCwxMSBAQCBpbnQgYW1kZ3B1X3ZjZV9yaW5nX3BhcnNlX2NzKHN0cnVjdCBhbWRncHVfY3Nf cGFyc2VyICpwLCB1aW50MzJfdCBpYl9pZHgpCiAJdWludDMyX3QgYWxsb2NhdGVkID0gMDsKIAl1 aW50MzJfdCB0bXAsIGhhbmRsZSA9IDA7CiAJdWludDMyX3QgKnNpemUgPSAmdG1wOwotCWludCBp LCByID0gMCwgaWR4ID0gMDsKKwlpbnQgaSwgciwgaWR4ID0gMDsKKworCXIgPSBhbWRncHVfY3Nf c3lzdm1fYWNjZXNzX3JlcXVpcmVkKHApOworCWlmIChyKQorCQlyZXR1cm4gcjsKIAogCXdoaWxl IChpZHggPCBpYi0+bGVuZ3RoX2R3KSB7CiAJCXVpbnQzMl90IGxlbiA9IGFtZGdwdV9nZXRfaWJf dmFsdWUocCwgaWJfaWR4LCBpZHgpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X3ZtLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0u YwppbmRleCA3NjYwZjgyLi5hNTQ5YWJkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfdm0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHVfdm0uYwpAQCAtMTE2Miw3ICsxMTYyLDggQEAgaW50IGFtZGdwdV92bV9ib191cGRhdGUoc3Ry dWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCiAJfQogCiAJZmxhZ3MgPSBhbWRncHVfdHRtX3R0X3B0 ZV9mbGFncyhhZGV2LCBib192YS0+Ym8tPnRiby50dG0sIG1lbSk7Ci0JZ3R0X2ZsYWdzID0gKGFk ZXYgPT0gYm9fdmEtPmJvLT5hZGV2KSA/IGZsYWdzIDogMDsKKwlndHRfZmxhZ3MgPSAoYW1kZ3B1 X3R0bV9pc19ib3VuZChib192YS0+Ym8tPnRiby50dG0pICYmCisJCWFkZXYgPT0gYm9fdmEtPmJv LT5hZGV2KSA/IGZsYWdzIDogMDsKIAogCXNwaW5fbG9jaygmdm0tPnN0YXR1c19sb2NrKTsKIAlp ZiAoIWxpc3RfZW1wdHkoJmJvX3ZhLT52bV9zdGF0dXMpKQo=