From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH 4/5] drm/ttm: Quick-test mmap offset in ttm_bo_mmap() Date: Thu, 7 Feb 2019 09:59:30 +0100 Message-ID: <20190207085931.29569-5-tzimmermann@suse.de> References: <20190207085931.29569-1-tzimmermann@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190207085931.29569-1-tzimmermann@suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: alexander.deucher@amd.com, christian.koenig@amd.com, David1.Zhou@amd.com, airlied@redhat.com, kraxel@redhat.com, z.liuxinliang@hisilicon.com, zourongrong@gmail.com, kong.kongxinwei@hisilicon.com, puck.chen@hisilicon.com, bskeggs@redhat.com, thellstrom@vmware.com, linux-graphics-maintainer@vmware.com, daniel@ffwll.ch, hdegoede@redhat.com, arnd@arndb.de, gregkh@linuxfoundation.org, ray.huang@amd.com, Jerry.Zhang@amd.com Cc: spice-devel@lists.freedesktop.org, Thomas Zimmermann , amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, virtualization@lists.linux-foundation.org List-Id: amd-gfx.lists.freedesktop.org QSBCTydzIGFkZHJlc3MgaGFzIHRvIGJlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIG9mZnNldC4gU2hh cmluZyB0aGlzCnRlc3QgaW4gdHRtX2JvX21tYXAoKSByZW1vdmVzIGNvZGUgZnJvbSBkcml2ZXJz LiBBIGZ1bGwgYnVmZmVyLWFkZHJlc3MKdmFsaWRhdGlvbiBpcyBzdGlsbCBkb25lIHdpdGhpbiBk cm1fdm1hX29mZnNldF9sb2NrdXBfbG9ja2VkKCkuCgpTaWduZWQtb2ZmLWJ5OiBUaG9tYXMgWmlt bWVybWFubiA8dHppbW1lcm1hbm5Ac3VzZS5kZT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfdHRtLmMgICAgIHwgIDkgKystLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vYXN0 L2FzdF90dG0uYyAgICAgICAgICAgICAgIHwgIDkgKystLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0v Ym9jaHMvYm9jaHNfbW0uYyAgICAgICAgICAgIHwgIDkgKystLS0tLS0tCiBkcml2ZXJzL2dwdS9k cm0vY2lycnVzL2NpcnJ1c190dG0uYyAgICAgICAgIHwgIDkgKystLS0tLS0tCiBkcml2ZXJzL2dw dS9kcm0vaGlzaWxpY29uL2hpYm1jL2hpYm1jX3R0bS5jIHwgIDkgKystLS0tLS0tCiBkcml2ZXJz L2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX3R0bS5jICAgICAgIHwgIDkgKystLS0tLS0tCiBkcml2 ZXJzL2dwdS9kcm0vbm91dmVhdS9ub3V2ZWF1X3R0bS5jICAgICAgIHwgIDMgLS0tCiBkcml2ZXJz L2dwdS9kcm0vcXhsL3F4bF90dG0uYyAgICAgICAgICAgICAgIHwgIDkgKystLS0tLS0tCiBkcml2 ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl90dG0uYyAgICAgICAgIHwgMTAgKystLS0tLS0tLQog ZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fYm9fdm0uYyAgICAgICAgICAgICB8ICAzICsrKwogZHJp dmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfdHRtX2dsdWUuYyAgICB8IDExICsrLS0tLS0tLS0t CiBkcml2ZXJzL3N0YWdpbmcvdmJveHZpZGVvL3Zib3hfdHRtLmMgICAgICAgIHwgMTAgKystLS0t LS0tLQogMTIgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgNzcgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5jIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5jCmluZGV4IDU3NTVhYzQyOGZk MC4uYThjZDFlMGFlNGIzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfdHRtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5j CkBAIC0xODc0LDE0ICsxODc0LDkgQEAgdm9pZCBhbWRncHVfdHRtX3NldF9idWZmZXJfZnVuY3Nf c3RhdHVzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBib29sIGVuYWJsZSkKIAogaW50IGFt ZGdwdV9tbWFwKHN0cnVjdCBmaWxlICpmaWxwLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSkK IHsKLQlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdjsKLQlzdHJ1Y3QgYW1kZ3B1X2RldmljZSAq YWRldjsKLQotCWlmICh1bmxpa2VseSh2bWEtPnZtX3Bnb2ZmIDwgRFJNX0ZJTEVfUEFHRV9PRkZT RVQpKQotCQlyZXR1cm4gLUVJTlZBTDsKKwlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdiA9IGZp bHAtPnByaXZhdGVfZGF0YTsKKwlzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiA9IGZpbGVfcHJp di0+bWlub3ItPmRldi0+ZGV2X3ByaXZhdGU7CiAKLQlmaWxlX3ByaXYgPSBmaWxwLT5wcml2YXRl X2RhdGE7Ci0JYWRldiA9IGZpbGVfcHJpdi0+bWlub3ItPmRldi0+ZGV2X3ByaXZhdGU7CiAJaWYg KGFkZXYgPT0gTlVMTCkKIAkJcmV0dXJuIC1FSU5WQUw7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9hc3QvYXN0X3R0bS5jIGIvZHJpdmVycy9ncHUvZHJtL2FzdC9hc3RfdHRtLmMKaW5k ZXggYzQxMDgwNGE1ZTJjLi43NWQ0NzdiMzc4NTQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9hc3QvYXN0X3R0bS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X3R0bS5jCkBAIC0z NDMsMTMgKzM0Myw4IEBAIGludCBhc3RfYm9fcHVzaF9zeXNyYW0oc3RydWN0IGFzdF9ibyAqYm8p CiAKIGludCBhc3RfbW1hcChzdHJ1Y3QgZmlsZSAqZmlscCwgc3RydWN0IHZtX2FyZWFfc3RydWN0 ICp2bWEpCiB7Ci0Jc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXY7Ci0Jc3RydWN0IGFzdF9wcml2 YXRlICphc3Q7CisJc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYgPSBmaWxwLT5wcml2YXRlX2Rh dGE7CisJc3RydWN0IGFzdF9wcml2YXRlICphc3QgPSBmaWxlX3ByaXYtPm1pbm9yLT5kZXYtPmRl dl9wcml2YXRlOwogCi0JaWYgKHVubGlrZWx5KHZtYS0+dm1fcGdvZmYgPCBEUk1fRklMRV9QQUdF X09GRlNFVCkpCi0JCXJldHVybiAtRUlOVkFMOwotCi0JZmlsZV9wcml2ID0gZmlscC0+cHJpdmF0 ZV9kYXRhOwotCWFzdCA9IGZpbGVfcHJpdi0+bWlub3ItPmRldi0+ZGV2X3ByaXZhdGU7CiAJcmV0 dXJuIHR0bV9ib19tbWFwKGZpbHAsIHZtYSwgJmFzdC0+dHRtLmJkZXYpOwogfQpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2JvY2hzL2JvY2hzX21tLmMgYi9kcml2ZXJzL2dwdS9kcm0vYm9j aHMvYm9jaHNfbW0uYwppbmRleCBlYmM5ZGJkOTQ5MjMuLjRhNDAzMDgxNjljNCAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2JvY2hzL2JvY2hzX21tLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2JvY2hzL2JvY2hzX21tLmMKQEAgLTI2MywxNCArMjYzLDkgQEAgaW50IGJvY2hzX2JvX3VucGlu KHN0cnVjdCBib2Noc19ibyAqYm8pCiAKIGludCBib2Noc19tbWFwKHN0cnVjdCBmaWxlICpmaWxw LCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSkKIHsKLQlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVf cHJpdjsKLQlzdHJ1Y3QgYm9jaHNfZGV2aWNlICpib2NoczsKKwlzdHJ1Y3QgZHJtX2ZpbGUgKmZp bGVfcHJpdiA9IGZpbHAtPnByaXZhdGVfZGF0YTsKKwlzdHJ1Y3QgYm9jaHNfZGV2aWNlICpib2No cyA9IGZpbGVfcHJpdi0+bWlub3ItPmRldi0+ZGV2X3ByaXZhdGU7CiAKLQlpZiAodW5saWtlbHko dm1hLT52bV9wZ29mZiA8IERSTV9GSUxFX1BBR0VfT0ZGU0VUKSkKLQkJcmV0dXJuIC1FSU5WQUw7 Ci0KLQlmaWxlX3ByaXYgPSBmaWxwLT5wcml2YXRlX2RhdGE7Ci0JYm9jaHMgPSBmaWxlX3ByaXYt Pm1pbm9yLT5kZXYtPmRldl9wcml2YXRlOwogCXJldHVybiB0dG1fYm9fbW1hcChmaWxwLCB2bWEs ICZib2Nocy0+dHRtLmJkZXYpOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vY2ly cnVzL2NpcnJ1c190dG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVzX3R0bS5jCmlu ZGV4IDIyM2E3NWJhNzdhOC4uZTZiOTg0NjdhNDI4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vY2lycnVzL2NpcnJ1c190dG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vY2lycnVzL2NpcnJ1 c190dG0uYwpAQCAtMzMwLDEzICszMzAsOCBAQCBpbnQgY2lycnVzX2JvX3B1c2hfc3lzcmFtKHN0 cnVjdCBjaXJydXNfYm8gKmJvKQogCiBpbnQgY2lycnVzX21tYXAoc3RydWN0IGZpbGUgKmZpbHAs IHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hKQogewotCXN0cnVjdCBkcm1fZmlsZSAqZmlsZV9w cml2OwotCXN0cnVjdCBjaXJydXNfZGV2aWNlICpjaXJydXM7CisJc3RydWN0IGRybV9maWxlICpm aWxlX3ByaXYgPSBmaWxwLT5wcml2YXRlX2RhdGE7CisJc3RydWN0IGNpcnJ1c19kZXZpY2UgKmNp cnJ1cyA9IGZpbGVfcHJpdi0+bWlub3ItPmRldi0+ZGV2X3ByaXZhdGU7CiAKLQlpZiAodW5saWtl bHkodm1hLT52bV9wZ29mZiA8IERSTV9GSUxFX1BBR0VfT0ZGU0VUKSkKLQkJcmV0dXJuIC1FSU5W QUw7Ci0KLQlmaWxlX3ByaXYgPSBmaWxwLT5wcml2YXRlX2RhdGE7Ci0JY2lycnVzID0gZmlsZV9w cml2LT5taW5vci0+ZGV2LT5kZXZfcHJpdmF0ZTsKIAlyZXR1cm4gdHRtX2JvX21tYXAoZmlscCwg dm1hLCAmY2lycnVzLT50dG0uYmRldik7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aGlzaWxpY29uL2hpYm1jL2hpYm1jX3R0bS5jIGIvZHJpdmVycy9ncHUvZHJtL2hpc2lsaWNvbi9o aWJtYy9oaWJtY190dG0uYwppbmRleCA4NDU0ODg5MjI4NjUuLjYwOTNjNDIxZGFmZiAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2hpc2lsaWNvbi9oaWJtYy9oaWJtY190dG0uYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaGlzaWxpY29uL2hpYm1jL2hpYm1jX3R0bS5jCkBAIC0zMTksMTQgKzMx OSw5IEBAIGludCBoaWJtY19ib191bnBpbihzdHJ1Y3QgaGlibWNfYm8gKmJvKQogCiBpbnQgaGli bWNfbW1hcChzdHJ1Y3QgZmlsZSAqZmlscCwgc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEpCiB7 Ci0Jc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXY7Ci0Jc3RydWN0IGhpYm1jX2RybV9wcml2YXRl ICpoaWJtYzsKKwlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdiA9IGZpbHAtPnByaXZhdGVfZGF0 YTsKKwlzdHJ1Y3QgaGlibWNfZHJtX3ByaXZhdGUgKmhpYm1jID0gZmlsZV9wcml2LT5taW5vci0+ ZGV2LT5kZXZfcHJpdmF0ZTsKIAotCWlmICh1bmxpa2VseSh2bWEtPnZtX3Bnb2ZmIDwgRFJNX0ZJ TEVfUEFHRV9PRkZTRVQpKQotCQlyZXR1cm4gLUVJTlZBTDsKLQotCWZpbGVfcHJpdiA9IGZpbHAt PnByaXZhdGVfZGF0YTsKLQloaWJtYyA9IGZpbGVfcHJpdi0+bWlub3ItPmRldi0+ZGV2X3ByaXZh dGU7CiAJcmV0dXJuIHR0bV9ib19tbWFwKGZpbHAsIHZtYSwgJmhpYm1jLT5iZGV2KTsKIH0KIApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF90dG0uYyBiL2RyaXZl cnMvZ3B1L2RybS9tZ2FnMjAwL21nYWcyMDBfdHRtLmMKaW5kZXggY2U3MzlkYTUxNjFkLi5iZDQy MzY1YThhYTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZ2FnMjAwL21nYWcyMDBfdHRt LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF90dG0uYwpAQCAtMzQ0LDEz ICszNDQsOCBAQCBpbnQgbWdhZzIwMF9ib19wdXNoX3N5c3JhbShzdHJ1Y3QgbWdhZzIwMF9ibyAq Ym8pCiAKIGludCBtZ2FnMjAwX21tYXAoc3RydWN0IGZpbGUgKmZpbHAsIHN0cnVjdCB2bV9hcmVh X3N0cnVjdCAqdm1hKQogewotCXN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2OwotCXN0cnVjdCBt Z2FfZGV2aWNlICptZGV2OworCXN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2ID0gZmlscC0+cHJp dmF0ZV9kYXRhOworCXN0cnVjdCBtZ2FfZGV2aWNlICptZGV2ID0gZmlsZV9wcml2LT5taW5vci0+ ZGV2LT5kZXZfcHJpdmF0ZTsKIAotCWlmICh1bmxpa2VseSh2bWEtPnZtX3Bnb2ZmIDwgRFJNX0ZJ TEVfUEFHRV9PRkZTRVQpKQotCQlyZXR1cm4gLUVJTlZBTDsKLQotCWZpbGVfcHJpdiA9IGZpbHAt PnByaXZhdGVfZGF0YTsKLQltZGV2ID0gZmlsZV9wcml2LT5taW5vci0+ZGV2LT5kZXZfcHJpdmF0 ZTsKIAlyZXR1cm4gdHRtX2JvX21tYXAoZmlscCwgdm1hLCAmbWRldi0+dHRtLmJkZXYpOwogfQpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV90dG0uYyBiL2RyaXZl cnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVfdHRtLmMKaW5kZXggYzY2NDY3MjMyNjA0Li5mMGRh Zjk1OGUwM2EgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVfdHRt LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV90dG0uYwpAQCAtMTY4LDkg KzE2OCw2IEBAIG5vdXZlYXVfdHRtX21tYXAoc3RydWN0IGZpbGUgKmZpbHAsIHN0cnVjdCB2bV9h cmVhX3N0cnVjdCAqdm1hKQogCXN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2ID0gZmlscC0+cHJp dmF0ZV9kYXRhOwogCXN0cnVjdCBub3V2ZWF1X2RybSAqZHJtID0gbm91dmVhdV9kcm0oZmlsZV9w cml2LT5taW5vci0+ZGV2KTsKIAotCWlmICh1bmxpa2VseSh2bWEtPnZtX3Bnb2ZmIDwgRFJNX0ZJ TEVfUEFHRV9PRkZTRVQpKQotCQlyZXR1cm4gZHJtX2xlZ2FjeV9tbWFwKGZpbHAsIHZtYSk7Ci0K IAlyZXR1cm4gdHRtX2JvX21tYXAoZmlscCwgdm1hLCAmZHJtLT50dG0uYmRldik7CiB9CiAKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX3R0bS5jIGIvZHJpdmVycy9ncHUvZHJt L3F4bC9xeGxfdHRtLmMKaW5kZXggNmIzYjkyZDFmMTdmLi4wMjM0Zjg1NTZhZGEgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX3R0bS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9x eGwvcXhsX3R0bS5jCkBAIC02MywxNSArNjMsMTAgQEAgc3RhdGljIHZtX2ZhdWx0X3QgcXhsX3R0 bV9mYXVsdChzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKIAogaW50IHF4bF9tbWFwKHN0cnVjdCBmaWxl ICpmaWxwLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSkKIHsKLQlzdHJ1Y3QgZHJtX2ZpbGUg KmZpbGVfcHJpdjsKLQlzdHJ1Y3QgcXhsX2RldmljZSAqcWRldjsKIAlpbnQgcjsKKwlzdHJ1Y3Qg ZHJtX2ZpbGUgKmZpbGVfcHJpdiA9IGZpbHAtPnByaXZhdGVfZGF0YTsKKwlzdHJ1Y3QgcXhsX2Rl dmljZSAqcWRldiA9IGZpbGVfcHJpdi0+bWlub3ItPmRldi0+ZGV2X3ByaXZhdGU7CiAKLQlpZiAo dW5saWtlbHkodm1hLT52bV9wZ29mZiA8IERSTV9GSUxFX1BBR0VfT0ZGU0VUKSkKLQkJcmV0dXJu IC1FSU5WQUw7Ci0KLQlmaWxlX3ByaXYgPSBmaWxwLT5wcml2YXRlX2RhdGE7Ci0JcWRldiA9IGZp bGVfcHJpdi0+bWlub3ItPmRldi0+ZGV2X3ByaXZhdGU7CiAJaWYgKHFkZXYgPT0gTlVMTCkgewog CQlEUk1fRVJST1IoCiAJCSAiZmlscC0+cHJpdmF0ZV9kYXRhLT5taW5vci0+ZGV2LT5kZXZfcHJp dmF0ZSA9PSBOVUxMXG4iKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFk ZW9uX3R0bS5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fdHRtLmMKaW5kZXggN2Mx MGUxNTYwNzgwLi41NTdiZGQ3YTJmYzggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRl b24vcmFkZW9uX3R0bS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3R0bS5j CkBAIC04OTgsMTYgKzg5OCwxMCBAQCBzdGF0aWMgdm1fZmF1bHRfdCByYWRlb25fdHRtX2ZhdWx0 KHN0cnVjdCB2bV9mYXVsdCAqdm1mKQogCiBpbnQgcmFkZW9uX21tYXAoc3RydWN0IGZpbGUgKmZp bHAsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hKQogewotCXN0cnVjdCBkcm1fZmlsZSAqZmls ZV9wcml2OwotCXN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2OwogCWludCByOworCXN0cnVjdCBk cm1fZmlsZSAqZmlsZV9wcml2ID0gZmlscC0+cHJpdmF0ZV9kYXRhOworCXN0cnVjdCByYWRlb25f ZGV2aWNlICpyZGV2ID0gZmlsZV9wcml2LT5taW5vci0+ZGV2LT5kZXZfcHJpdmF0ZTsKIAotCWlm ICh1bmxpa2VseSh2bWEtPnZtX3Bnb2ZmIDwgRFJNX0ZJTEVfUEFHRV9PRkZTRVQpKSB7Ci0JCXJl dHVybiAtRUlOVkFMOwotCX0KLQotCWZpbGVfcHJpdiA9IGZpbHAtPnByaXZhdGVfZGF0YTsKLQly ZGV2ID0gZmlsZV9wcml2LT5taW5vci0+ZGV2LT5kZXZfcHJpdmF0ZTsKIAlpZiAocmRldiA9PSBO VUxMKSB7CiAJCXJldHVybiAtRUlOVkFMOwogCX0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS90dG0vdHRtX2JvX3ZtLmMgYi9kcml2ZXJzL2dwdS9kcm0vdHRtL3R0bV9ib192bS5jCmluZGV4 IGU4NmEyOWExZTUxZi4uZTk0YzJhYjM3MThhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v dHRtL3R0bV9ib192bS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX2JvX3ZtLmMKQEAg LTQzMiw2ICs0MzIsOSBAQCBpbnQgdHRtX2JvX21tYXAoc3RydWN0IGZpbGUgKmZpbHAsIHN0cnVj dCB2bV9hcmVhX3N0cnVjdCAqdm1hLAogCXN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm87CiAJ aW50IHJldDsKIAorCWlmICh1bmxpa2VseSh2bWEtPnZtX3Bnb2ZmIDwgRFJNX0ZJTEVfUEFHRV9P RkZTRVQpKQorCQlyZXR1cm4gLUVJTlZBTDsKKwogCWJvID0gdHRtX2JvX3ZtX2xvb2t1cChiZGV2 LCB2bWEtPnZtX3Bnb2ZmLCB2bWFfcGFnZXModm1hKSk7CiAJaWYgKHVubGlrZWx5KCFibykpCiAJ CXJldHVybiAtRUlOVkFMOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdn ZnhfdHRtX2dsdWUuYyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3R0bV9nbHVlLmMK aW5kZXggZWM1YjRiMjM3ZjJjLi44YmFmYTZlYWM1YTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS92bXdnZngvdm13Z2Z4X3R0bV9nbHVlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dm eC92bXdnZnhfdHRtX2dsdWUuYwpAQCAtMzAsMTYgKzMwLDkgQEAKIAogaW50IHZtd19tbWFwKHN0 cnVjdCBmaWxlICpmaWxwLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSkKIHsKLQlzdHJ1Y3Qg ZHJtX2ZpbGUgKmZpbGVfcHJpdjsKLQlzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2OworCXN0 cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2ID0gZmlscC0+cHJpdmF0ZV9kYXRhOworCXN0cnVjdCB2 bXdfcHJpdmF0ZSAqZGV2X3ByaXYgPSB2bXdfcHJpdihmaWxlX3ByaXYtPm1pbm9yLT5kZXYpOwog Ci0JaWYgKHVubGlrZWx5KHZtYS0+dm1fcGdvZmYgPCBEUk1fRklMRV9QQUdFX09GRlNFVCkpIHsK LQkJRFJNX0VSUk9SKCJJbGxlZ2FsIGF0dGVtcHQgdG8gbW1hcCBvbGQgZmlmbyBzcGFjZS5cbiIp OwotCQlyZXR1cm4gLUVJTlZBTDsKLQl9Ci0KLQlmaWxlX3ByaXYgPSBmaWxwLT5wcml2YXRlX2Rh dGE7Ci0JZGV2X3ByaXYgPSB2bXdfcHJpdihmaWxlX3ByaXYtPm1pbm9yLT5kZXYpOwogCXJldHVy biB0dG1fYm9fbW1hcChmaWxwLCB2bWEsICZkZXZfcHJpdi0+YmRldik7CiB9CiAKZGlmZiAtLWdp dCBhL2RyaXZlcnMvc3RhZ2luZy92Ym94dmlkZW8vdmJveF90dG0uYyBiL2RyaXZlcnMvc3RhZ2lu Zy92Ym94dmlkZW8vdmJveF90dG0uYwppbmRleCBiN2RiN2E3OTUyZDQuLjlkNzg0MzhjMjg3NyAx MDA2NDQKLS0tIGEvZHJpdmVycy9zdGFnaW5nL3Zib3h2aWRlby92Ym94X3R0bS5jCisrKyBiL2Ry aXZlcnMvc3RhZ2luZy92Ym94dmlkZW8vdmJveF90dG0uYwpAQCAtMzU3LDE0ICszNTcsOCBAQCBp bnQgdmJveF9ib19wdXNoX3N5c3JhbShzdHJ1Y3QgdmJveF9ibyAqYm8pCiAKIGludCB2Ym94X21t YXAoc3RydWN0IGZpbGUgKmZpbHAsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hKQogewotCXN0 cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2OwotCXN0cnVjdCB2Ym94X3ByaXZhdGUgKnZib3g7Ci0K LQlpZiAodW5saWtlbHkodm1hLT52bV9wZ29mZiA8IERSTV9GSUxFX1BBR0VfT0ZGU0VUKSkKLQkJ cmV0dXJuIC1FSU5WQUw7Ci0KLQlmaWxlX3ByaXYgPSBmaWxwLT5wcml2YXRlX2RhdGE7Ci0JdmJv eCA9IGZpbGVfcHJpdi0+bWlub3ItPmRldi0+ZGV2X3ByaXZhdGU7CisJc3RydWN0IGRybV9maWxl ICpmaWxlX3ByaXYgPSBmaWxwLT5wcml2YXRlX2RhdGE7CisJc3RydWN0IHZib3hfcHJpdmF0ZSAq dmJveCA9IGZpbGVfcHJpdi0+bWlub3ItPmRldi0+ZGV2X3ByaXZhdGU7CiAKIAlyZXR1cm4gdHRt X2JvX21tYXAoZmlscCwgdm1hLCAmdmJveC0+dHRtLmJkZXYpOwogfQotLSAKMi4yMC4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFp bGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK