From: Matthew Auld Subject: [PATCH 9/9] drm/i915: prefer resource_size_t for everything stolen Date: Fri, 24 Nov 2017 21:29:30 +0000 Message-ID: <20171124212930.27467-10-matthew.auld@intel.com> References: <20171124212930.27467-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5BB706EA26 for ; Fri, 24 Nov 2017 21:29:47 +0000 (UTC) In-Reply-To: <20171124212930.27467-1-matthew.auld@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org S2VlcHMgdGhpbmdzIGNvbnNpc3RlbnQgbm93IHRoYXQgd2UgbWFrZSB1c2Ugb2Ygc3RydWN0IHJl c291cmNlLiBUaGlzCnNob3VsZCBrZWVwIHVzIGNvdmVyZWQgaW4gY2FzZSB3ZSBldmVyIGdldCBo dWdlIGFtb3VudHMgb2Ygc3RvbGVuCm1lbW9yeS4KCnYyOiBidW5jaCBvZiBtaXNzaW5nIGNvbnZl cnNpb25zIChDaHJpcykKClNpZ25lZC1vZmYtYnk6IE1hdHRoZXcgQXVsZCA8bWF0dGhldy5hdWxk QGludGVsLmNvbT4KQ2M6IEpvb25hcyBMYWh0aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4Lmlu dGVsLmNvbT4KQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzog UGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9jaGFy L2FncC9pbnRlbC1ndHQuYyAgICAgICAgICAgfCAxNCArKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2RlYnVnZnMuYyAgICB8ICA0ICstLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaCAgICAgICAgfCAgOSArKystLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX2d0dC5jICAgIHwgMTAgKysrLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f Z3R0LmggICAgfCAgNiArKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4u YyB8IDUxICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX3BtLmMgICAgICAgIHwgMTAgKysrLS0tLQogaW5jbHVkZS9kcm0vaW50ZWwt Z3R0LmggICAgICAgICAgICAgICAgfCAgNCArLS0KIDggZmlsZXMgY2hhbmdlZCwgNTUgaW5zZXJ0 aW9ucygrKSwgNTMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9jaGFyL2FncC9p bnRlbC1ndHQuYyBiL2RyaXZlcnMvY2hhci9hZ3AvaW50ZWwtZ3R0LmMKaW5kZXggMmEzMjFlZTI5 NDNhLi4zMTJjNGNjNDQwYmMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvY2hhci9hZ3AvaW50ZWwtZ3R0 LmMKKysrIGIvZHJpdmVycy9jaGFyL2FncC9pbnRlbC1ndHQuYwpAQCAtODAsNyArODAsNyBAQCBz dGF0aWMgc3RydWN0IF9pbnRlbF9wcml2YXRlIHsKIAl1bnNpZ25lZCBpbnQgbmVlZHNfZG1hciA6 IDE7CiAJcGh5c19hZGRyX3QgZ21hX2J1c19hZGRyOwogCS8qICBTaXplIG9mIG1lbW9yeSByZXNl cnZlZCBmb3IgZ3JhcGhpY3MgYnkgdGhlIEJJT1MgKi8KLQl1bnNpZ25lZCBpbnQgc3RvbGVuX3Np emU7CisJcmVzb3VyY2Vfc2l6ZV90IHN0b2xlbl9zaXplOwogCS8qIFRvdGFsIG51bWJlciBvZiBn dHQgZW50cmllcy4gKi8KIAl1bnNpZ25lZCBpbnQgZ3R0X3RvdGFsX2VudHJpZXM7CiAJLyogUGFy dCBvZiB0aGUgZ3R0IHRoYXQgaXMgbWFwcGFibGUgYnkgdGhlIGNwdSwgZm9yIHRob3NlIGNoaXBz IHdoZXJlCkBAIC0zMzMsMTMgKzMzMywxMyBAQCBzdGF0aWMgdm9pZCBpODEwX3dyaXRlX2VudHJ5 KGRtYV9hZGRyX3QgYWRkciwgdW5zaWduZWQgaW50IGVudHJ5LAogCXdyaXRlbF9yZWxheGVkKGFk ZHIgfCBwdGVfZmxhZ3MsIGludGVsX3ByaXZhdGUuZ3R0ICsgZW50cnkpOwogfQogCi1zdGF0aWMg dW5zaWduZWQgaW50IGludGVsX2d0dF9zdG9sZW5fc2l6ZSh2b2lkKQorc3RhdGljIHJlc291cmNl X3NpemVfdCBpbnRlbF9ndHRfc3RvbGVuX3NpemUodm9pZCkKIHsKIAl1MTYgZ21jaF9jdHJsOwog CXU4IHJkY3Q7CiAJaW50IGxvY2FsID0gMDsKIAlzdGF0aWMgY29uc3QgaW50IGRkdFs0XSA9IHsg MCwgMTYsIDMyLCA2NCB9OwotCXVuc2lnbmVkIGludCBzdG9sZW5fc2l6ZSA9IDA7CisJcmVzb3Vy Y2Vfc2l6ZV90IHN0b2xlbl9zaXplID0gMDsKIAogCWlmIChJTlRFTF9HVFRfR0VOID09IDEpCiAJ CXJldHVybiAwOyAvKiBubyBzdG9sZW4gbWVtIG9uIGk4MXggKi8KQEAgLTQxNyw4ICs0MTcsOCBA QCBzdGF0aWMgdW5zaWduZWQgaW50IGludGVsX2d0dF9zdG9sZW5fc2l6ZSh2b2lkKQogCX0KIAog CWlmIChzdG9sZW5fc2l6ZSA+IDApIHsKLQkJZGV2X2luZm8oJmludGVsX3ByaXZhdGUuYnJpZGdl X2Rldi0+ZGV2LCAiZGV0ZWN0ZWQgJWRLICVzIG1lbW9yeVxuIiwKLQkJICAgICAgIHN0b2xlbl9z aXplIC8gS0IoMSksIGxvY2FsID8gImxvY2FsIiA6ICJzdG9sZW4iKTsKKwkJZGV2X2luZm8oJmlu dGVsX3ByaXZhdGUuYnJpZGdlX2Rldi0+ZGV2LCAiZGV0ZWN0ZWQgJWxsdUsgJXMgbWVtb3J5XG4i LAorCQkgICAgICAgKHU2NClzdG9sZW5fc2l6ZSAvIEtCKDEpLCBsb2NhbCA/ICJsb2NhbCIgOiAi c3RvbGVuIik7CiAJfSBlbHNlIHsKIAkJZGV2X2luZm8oJmludGVsX3ByaXZhdGUuYnJpZGdlX2Rl di0+ZGV2LAogCQkgICAgICAgIm5vIHByZS1hbGxvY2F0ZWQgdmlkZW8gbWVtb3J5IGRldGVjdGVk XG4iKTsKQEAgLTE0MjIsOSArMTQyMiw5IEBAIGludCBpbnRlbF9nbWNoX3Byb2JlKHN0cnVjdCBw Y2lfZGV2ICpicmlkZ2VfcGRldiwgc3RydWN0IHBjaV9kZXYgKmdwdV9wZGV2LAogRVhQT1JUX1NZ TUJPTChpbnRlbF9nbWNoX3Byb2JlKTsKIAogdm9pZCBpbnRlbF9ndHRfZ2V0KHU2NCAqZ3R0X3Rv dGFsLAotCQkgICB1MzIgKnN0b2xlbl9zaXplLAorCQkgICByZXNvdXJjZV9zaXplX3QgKnN0b2xl bl9zaXplLAogCQkgICBwaHlzX2FkZHJfdCAqbWFwcGFibGVfYmFzZSwKLQkJICAgdTY0ICptYXBw YWJsZV9zaXplKQorCQkgICByZXNvdXJjZV9zaXplX3QgKm1hcHBhYmxlX3NpemUpCiB7CiAJKmd0 dF90b3RhbCA9IGludGVsX3ByaXZhdGUuZ3R0X3RvdGFsX2VudHJpZXMgPDwgUEFHRV9TSElGVDsK IAkqc3RvbGVuX3NpemUgPSBpbnRlbF9wcml2YXRlLnN0b2xlbl9zaXplOwpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2RlYnVnZnMuYwppbmRleCBhMDVlMmI5MmMwMmMuLjU4Y2I4MWZlODcyNyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKQEAgLTUyMiw4ICs1MjIsOCBAQCBzdGF0aWMgaW50 IGk5MTVfZ2VtX29iamVjdF9pbmZvKHN0cnVjdCBzZXFfZmlsZSAqbSwgdm9pZCAqZGF0YSkKIAlz ZXFfcHJpbnRmKG0sICIldSBkaXNwbGF5IG9iamVjdHMgKGdsb2JhbGx5IHBpbm5lZCksICVsbHUg Ynl0ZXNcbiIsCiAJCSAgIGRweV9jb3VudCwgZHB5X3NpemUpOwogCi0Jc2VxX3ByaW50ZihtLCAi JWxsdSBbJWxsdV0gZ3R0IHRvdGFsXG4iLAotCQkgICBnZ3R0LT5iYXNlLnRvdGFsLCBnZ3R0LT5t YXBwYWJsZV9zaXplKTsKKwlzZXFfcHJpbnRmKG0sICIlbGx1IFslcGFdIGd0dCB0b3RhbFxuIiwK KwkJICAgZ2d0dC0+YmFzZS50b3RhbCwgJmdndHQtPm1hcHBhYmxlX3NpemUpOwogCXNlcV9wcmlu dGYobSwgIlN1cHBvcnRlZCBwYWdlIHNpemVzOiAlc1xuIiwKIAkJICAgc3RyaW5naWZ5X3BhZ2Vf c2l6ZXMoSU5URUxfSU5GTyhkZXZfcHJpdiktPnBhZ2Vfc2l6ZXMsCiAJCQkJCWJ1Ziwgc2l6ZW9m KGJ1ZikpKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IGUzMGE4YTc4MTJiYS4uZWVkZmZi OTQxZjlkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTM5MDgsMTIgKzM5MDgsMTMgQEAg dm9pZCBpOTE1X2dlbV9zdG9sZW5fcmVtb3ZlX25vZGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LAogaW50IGk5MTVfZ2VtX2luaXRfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdik7CiB2b2lkIGk5MTVfZ2VtX2NsZWFudXBfc3RvbGVuKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYpOwogc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgotaTkxNV9nZW1fb2Jq ZWN0X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1MzIg c2l6ZSk7CitpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsCisJCQkgICAgICByZXNvdXJjZV9zaXplX3Qgc2l6ZSk7CiBzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX29iamVjdCAqCiBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbl9mb3Jf cHJlYWxsb2NhdGVkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKLQkJCQkJICAg ICAgIHUzMiBzdG9sZW5fb2Zmc2V0LAotCQkJCQkgICAgICAgdTMyIGd0dF9vZmZzZXQsCi0JCQkJ CSAgICAgICB1MzIgc2l6ZSk7CisJCQkJCSAgICAgICByZXNvdXJjZV9zaXplX3Qgc3RvbGVuX29m ZnNldCwKKwkJCQkJICAgICAgIHJlc291cmNlX3NpemVfdCBndHRfb2Zmc2V0LAorCQkJCQkgICAg ICAgcmVzb3VyY2Vfc2l6ZV90IHNpemUpOwogCiAvKiBpOTE1X2dlbV9pbnRlcm5hbC5jICovCiBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5j CmluZGV4IDM1ZDkxY2YwNzEyMy4uMzkwZGUxYzc0MzI5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuYwpAQCAtMzM1NCw3ICszMzU0LDcgQEAgc3RhdGljIGludCBnZW42X2dtY2hfcHJv YmUoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCkKIAkgKiBhIGNvYXJzZSBzYW5pdHkgY2hlY2suCiAJ ICovCiAJaWYgKGdndHQtPm1hcHBhYmxlX3NpemUgPCAoNjQ8PDIwKSB8fCBnZ3R0LT5tYXBwYWJs ZV9zaXplID4gKDUxMjw8MjApKSB7Ci0JCURSTV9FUlJPUigiVW5rbm93biBHTUFEUiBzaXplICgl bGx4KVxuIiwgZ2d0dC0+bWFwcGFibGVfc2l6ZSk7CisJCURSTV9FUlJPUigiVW5rbm93biBHTUFE UiBzaXplICglcGEpXG4iLCAmZ2d0dC0+bWFwcGFibGVfc2l6ZSk7CiAJCXJldHVybiAtRU5YSU87 CiAJfQogCkBAIC0zNDY2LDcgKzM0NjYsNyBAQCBpbnQgaTkxNV9nZ3R0X3Byb2JlX2h3KHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAkgKi8KIAlpZiAoSEFTX0dVQyhkZXZfcHJp dikgJiYgaTkxNV9tb2RwYXJhbXMuZW5hYmxlX2d1Y19sb2FkaW5nKSB7CiAJCWdndHQtPmJhc2Uu dG90YWwgPSBtaW5fdCh1NjQsIGdndHQtPmJhc2UudG90YWwsIEdVQ19HR1RUX1RPUCk7Ci0JCWdn dHQtPm1hcHBhYmxlX3NpemUgPSBtaW4oZ2d0dC0+bWFwcGFibGVfc2l6ZSwgZ2d0dC0+YmFzZS50 b3RhbCk7CisJCWdndHQtPm1hcHBhYmxlX3NpemUgPSBtaW5fdCh1NjQsIGdndHQtPm1hcHBhYmxl X3NpemUsIGdndHQtPmJhc2UudG90YWwpOwogCX0KIAogCWlmICgoZ2d0dC0+YmFzZS50b3RhbCAt IDEpID4+IDMyKSB7CkBAIC0zNDc0LDEzICszNDc0LDEzIEBAIGludCBpOTE1X2dndHRfcHJvYmVf aHcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCQkJICAiIG9mIGFkZHJlc3Mg c3BhY2UhIEZvdW5kICVsbGRNIVxuIiwKIAkJCSAgZ2d0dC0+YmFzZS50b3RhbCA+PiAyMCk7CiAJ CWdndHQtPmJhc2UudG90YWwgPSAxVUxMIDw8IDMyOwotCQlnZ3R0LT5tYXBwYWJsZV9zaXplID0g bWluKGdndHQtPm1hcHBhYmxlX3NpemUsIGdndHQtPmJhc2UudG90YWwpOworCQlnZ3R0LT5tYXBw YWJsZV9zaXplID0gbWluX3QodTY0LCBnZ3R0LT5tYXBwYWJsZV9zaXplLCBnZ3R0LT5iYXNlLnRv dGFsKTsKIAl9CiAKIAlpZiAoZ2d0dC0+bWFwcGFibGVfc2l6ZSA+IGdndHQtPmJhc2UudG90YWwp IHsKIAkJRFJNX0VSUk9SKCJtYXBwYWJsZSBhcGVydHVyZSBleHRlbmRzIHBhc3QgZW5kIG9mIEdH VFQsIgotCQkJICAiIGFwZXJ0dXJlPSVsbHgsIHRvdGFsPSVsbHhcbiIsCi0JCQkgIGdndHQtPm1h cHBhYmxlX3NpemUsIGdndHQtPmJhc2UudG90YWwpOworCQkJICAiIGFwZXJ0dXJlPSVwYSwgdG90 YWw9JWxseFxuIiwKKwkJCSAgJmdndHQtPm1hcHBhYmxlX3NpemUsIGdndHQtPmJhc2UudG90YWwp OwogCQlnZ3R0LT5tYXBwYWJsZV9zaXplID0gZ2d0dC0+YmFzZS50b3RhbDsKIAl9CiAKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKaW5kZXggYTkxMjgxYTU1YjkxLi42ZjdjNjQwODg1ZWQg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCkBAIC0zNzEsNyArMzcxLDcgQEAgc3Ry dWN0IGk5MTVfZ2d0dCB7CiAKIAlzdHJ1Y3QgaW9fbWFwcGluZyBtYXBwYWJsZV9pbzsJLyogTWFw cGluZyB0byBvdXIgQ1BVIG1hcHBhYmxlIHJlZ2lvbiAqLwogCXN0cnVjdCByZXNvdXJjZSBtYXBw YWJsZTsgICAgICAgLyogR01BRFIgcmVzb3VyY2UgKi8KLQl1NjQgbWFwcGFibGVfc2l6ZTsJCS8q IFRvdGFsIG1hcHBhYmxlIHNpemUgdGhhdCB3ZSBjYW4gQ1BVIG1hcCAqLworCXJlc291cmNlX3Np emVfdCBtYXBwYWJsZV9zaXplOwkvKiBUb3RhbCBtYXBwYWJsZSBzaXplIHRoYXQgd2UgY2FuIENQ VSBtYXAgKi8KIAogCS8qIFN0b2xlbiBtZW1vcnkgaXMgc2VnbWVudGVkIGluIGhhcmR3YXJlIHdp dGggZGlmZmVyZW50IHBvcnRpb25zCiAJICogb2ZmbGltaXRzIHRvIGNlcnRhaW4gZnVuY3Rpb25z LgpAQCAtMzgxLDggKzM4MSw4IEBAIHN0cnVjdCBpOTE1X2dndHQgewogCSAqIGF2b2lkIHRoZSBm aXJzdCBwYWdlISBUaGUgdXBwZXIgZW5kIG9mIHN0b2xlbiBtZW1vcnkgaXMgcmVzZXJ2ZWQgZm9y CiAJICogaGFyZHdhcmUgZnVuY3Rpb25zIGFuZCBzaW1pbGFybHkgcmVtb3ZlZCBmcm9tIHRoZSBh Y2Nlc3NpYmxlIHJhbmdlLgogCSAqLwotCXUzMiBzdG9sZW5fc2l6ZTsJCS8qIFRvdGFsIHNpemUg b2Ygc3RvbGVuIG1lbW9yeSAqLwotCXUzMiBzdG9sZW5fdXNhYmxlX3NpemU7CS8qIFRvdGFsIHNp emUgbWludXMgcmVzZXJ2ZWQgcmFuZ2VzICovCisJcmVzb3VyY2Vfc2l6ZV90IHN0b2xlbl9zaXpl OwkJLyogVG90YWwgc2l6ZSBvZiBzdG9sZW4gbWVtb3J5ICovCisJcmVzb3VyY2Vfc2l6ZV90IHN0 b2xlbl91c2FibGVfc2l6ZTsJLyogVG90YWwgc2l6ZSBtaW51cyByZXNlcnZlZCByYW5nZXMgKi8K IAogCS8qKiAiR3JhcGhpY3MgU3RvbGVuIE1lbW9yeSIgaG9sZHMgdGhlIGdsb2JhbCBQVEVzICov CiAJdm9pZCBfX2lvbWVtICpnc207CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9zdG9sZW4uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5j CmluZGV4IDJiN2FmNjBkZmNlMC4uZmNhNTZlYzk5MTNkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9zdG9sZW4uYwpAQCAtNzYsMTAgKzc2LDEwIEBAIHZvaWQgaTkxNV9nZW1fc3RvbGVu X3JlbW92ZV9ub2RlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAltdXRleF91 bmxvY2soJmRldl9wcml2LT5tbS5zdG9sZW5fbG9jayk7CiB9CiAKLXN0YXRpYyBkbWFfYWRkcl90 IGk5MTVfc3RvbGVuX3RvX2RtYShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCitz dGF0aWMgcmVzb3VyY2Vfc2l6ZV90IGk5MTVfc3RvbGVuX3RvX2RtYShzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpCiB7CiAJc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCA9ICZkZXZfcHJp di0+Z2d0dDsKLQlkbWFfYWRkcl90IGJhc2UgPSBpbnRlbF9ncmFwaGljc19zdG9sZW5fcmVzLnN0 YXJ0OworCXJlc291cmNlX3NpemVfdCBiYXNlID0gaW50ZWxfZ3JhcGhpY3Nfc3RvbGVuX3Jlcy5z dGFydDsKIAlzdHJ1Y3QgcmVzb3VyY2UgKnI7CiAKIAlpZiAoYmFzZSA9PSAwIHx8IGFkZF9vdmVy Zmxvd3MoYmFzZSwgZ2d0dC0+c3RvbGVuX3NpemUpKQpAQCAtODksNyArODksNyBAQCBzdGF0aWMg ZG1hX2FkZHJfdCBpOTE1X3N0b2xlbl90b19kbWEoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2KQogCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDw9IDQgJiYKIAkgICAgIUlTX0czMyhk ZXZfcHJpdikgJiYgIUlTX1BJTkVWSUVXKGRldl9wcml2KSAmJiAhSVNfRzRYKGRldl9wcml2KSkg ewogCQlzdHJ1Y3QgewotCQkJZG1hX2FkZHJfdCBzdGFydCwgZW5kOworCQkJcmVzb3VyY2Vfc2l6 ZV90IHN0YXJ0LCBlbmQ7CiAJCX0gc3RvbGVuWzJdID0gewogCQkJeyAuc3RhcnQgPSBiYXNlLCAu ZW5kID0gYmFzZSArIGdndHQtPnN0b2xlbl9zaXplLCB9LAogCQkJeyAuc3RhcnQgPSBiYXNlLCAu ZW5kID0gYmFzZSArIGdndHQtPnN0b2xlbl9zaXplLCB9LApAQCAtMTIxLDcgKzEyMSw3IEBAIHN0 YXRpYyBkbWFfYWRkcl90IGk5MTVfc3RvbGVuX3RvX2RtYShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCiAKIAkJaWYgKHN0b2xlblswXS5zdGFydCAhPSBzdG9sZW5bMV0uc3RhcnQg fHwKIAkJICAgIHN0b2xlblswXS5lbmQgIT0gc3RvbGVuWzFdLmVuZCkgewotCQkJZG1hX2FkZHJf dCBlbmQgPSBiYXNlICsgZ2d0dC0+c3RvbGVuX3NpemUgLSAxOworCQkJcmVzb3VyY2Vfc2l6ZV90 IGVuZCA9IGJhc2UgKyBnZ3R0LT5zdG9sZW5fc2l6ZSAtIDE7CiAKIAkJCURSTV9ERUJVR19LTVMo IkdUVCB3aXRoaW4gc3RvbGVuIG1lbW9yeSBhdCAweCVsbHgtMHglbGx4XG4iLAogCQkJCSAgICAg ICh1bnNpZ25lZCBsb25nIGxvbmcpZ2d0dF9zdGFydCwKQEAgLTE1Nyw3ICsxNTcsNyBAQCBzdGF0 aWMgZG1hX2FkZHJfdCBpOTE1X3N0b2xlbl90b19kbWEoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQogCQkgKiByYW5nZS4gQXBwYXJlbnRseSB0aGlzIHdvcmtzLgogCQkgKi8KIAkJ aWYgKHIgPT0gTlVMTCAmJiAhSVNfR0VOMyhkZXZfcHJpdikpIHsKLQkJCWRtYV9hZGRyX3QgZW5k ID0gYmFzZSArIGdndHQtPnN0b2xlbl9zaXplOworCQkJcmVzb3VyY2Vfc2l6ZV90IGVuZCA9IGJh c2UgKyBnZ3R0LT5zdG9sZW5fc2l6ZTsKIAogCQkJRFJNX0VSUk9SKCJjb25mbGljdCBkZXRlY3Rl ZCB3aXRoIHN0b2xlbiByZWdpb246IFslcGFkIC0gJXBhZF1cbiIsCiAJCQkJICAmYmFzZSwgJmVu ZCk7CkBAIC0xNzksMTMgKzE3OSwxMyBAQCB2b2lkIGk5MTVfZ2VtX2NsZWFudXBfc3RvbGVuKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB9CiAKIHN0YXRpYyB2b2lkIGc0eF9nZXRfc3RvbGVuX3Jl c2VydmVkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKLQkJCQkgICAgZG1hX2Fk ZHJfdCAqYmFzZSwgdTMyICpzaXplKQorCQkJCSAgICByZXNvdXJjZV9zaXplX3QgKmJhc2UsIHJl c291cmNlX3NpemVfdCAqc2l6ZSkKIHsKIAlzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0ID0gJmRldl9w cml2LT5nZ3R0OwogCXVpbnQzMl90IHJlZ192YWwgPSBJOTE1X1JFQUQoSVNfR000NShkZXZfcHJp dikgPwogCQkJCSAgICAgQ1RHX1NUT0xFTl9SRVNFUlZFRCA6CiAJCQkJICAgICBFTEtfU1RPTEVO X1JFU0VSVkVEKTsKLQlkbWFfYWRkcl90IHN0b2xlbl90b3AgPSBkZXZfcHJpdi0+ZHNtLnN0YXJ0 ICsgZ2d0dC0+c3RvbGVuX3NpemU7CisJcmVzb3VyY2Vfc2l6ZV90IHN0b2xlbl90b3AgPSBkZXZf cHJpdi0+ZHNtLnN0YXJ0ICsgZ2d0dC0+c3RvbGVuX3NpemU7CiAKIAlpZiAoKHJlZ192YWwgJiBH NFhfU1RPTEVOX1JFU0VSVkVEX0VOQUJMRSkgPT0gMCkgewogCQkqYmFzZSA9IDA7CkBAIC0yMTQs NyArMjE0LDcgQEAgc3RhdGljIHZvaWQgZzR4X2dldF9zdG9sZW5fcmVzZXJ2ZWQoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogfQogCiBzdGF0aWMgdm9pZCBnZW42X2dldF9zdG9s ZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAotCQkJCSAgICAg ZG1hX2FkZHJfdCAqYmFzZSwgdTMyICpzaXplKQorCQkJCSAgICAgcmVzb3VyY2Vfc2l6ZV90ICpi YXNlLCByZXNvdXJjZV9zaXplX3QgKnNpemUpCiB7CiAJdWludDMyX3QgcmVnX3ZhbCA9IEk5MTVf UkVBRChHRU42X1NUT0xFTl9SRVNFUlZFRCk7CiAKQEAgLTI0Niw3ICsyNDYsNyBAQCBzdGF0aWMg dm9pZCBnZW42X2dldF9zdG9sZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LAogfQogCiBzdGF0aWMgdm9pZCBnZW43X2dldF9zdG9sZW5fcmVzZXJ2ZWQoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAotCQkJCSAgICAgZG1hX2FkZHJfdCAqYmFzZSwg dTMyICpzaXplKQorCQkJCSAgICAgcmVzb3VyY2Vfc2l6ZV90ICpiYXNlLCByZXNvdXJjZV9zaXpl X3QgKnNpemUpCiB7CiAJdWludDMyX3QgcmVnX3ZhbCA9IEk5MTVfUkVBRChHRU42X1NUT0xFTl9S RVNFUlZFRCk7CiAKQEAgLTI3Miw3ICsyNzIsNyBAQCBzdGF0aWMgdm9pZCBnZW43X2dldF9zdG9s ZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogfQogCiBzdGF0 aWMgdm9pZCBjaHZfZ2V0X3N0b2xlbl9yZXNlcnZlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCi0JCQkJICAgIGRtYV9hZGRyX3QgKmJhc2UsIHUzMiAqc2l6ZSkKKwkJCQkgICAg cmVzb3VyY2Vfc2l6ZV90ICpiYXNlLCByZXNvdXJjZV9zaXplX3QgKnNpemUpCiB7CiAJdWludDMy X3QgcmVnX3ZhbCA9IEk5MTVfUkVBRChHRU42X1NUT0xFTl9SRVNFUlZFRCk7CiAKQEAgLTMwNCwx MSArMzA0LDExIEBAIHN0YXRpYyB2b2lkIGNodl9nZXRfc3RvbGVuX3Jlc2VydmVkKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIH0KIAogc3RhdGljIHZvaWQgYmR3X2dldF9zdG9s ZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAotCQkJCSAgICBk bWFfYWRkcl90ICpiYXNlLCB1MzIgKnNpemUpCisJCQkJICAgIHJlc291cmNlX3NpemVfdCAqYmFz ZSwgcmVzb3VyY2Vfc2l6ZV90ICpzaXplKQogewogCXN0cnVjdCBpOTE1X2dndHQgKmdndHQgPSAm ZGV2X3ByaXYtPmdndHQ7CiAJdWludDMyX3QgcmVnX3ZhbCA9IEk5MTVfUkVBRChHRU42X1NUT0xF Tl9SRVNFUlZFRCk7Ci0JZG1hX2FkZHJfdCBzdG9sZW5fdG9wOworCXJlc291cmNlX3NpemVfdCBz dG9sZW5fdG9wOwogCiAJaWYgKChyZWdfdmFsICYgR0VONl9TVE9MRU5fUkVTRVJWRURfRU5BQkxF KSA9PSAwKSB7CiAJCSpiYXNlID0gMDsKQEAgLTMzNCw5ICszMzQsOSBAQCBpbnQgaTkxNV9nZW1f aW5pdF9zdG9sZW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCXN0cnVj dCBpOTE1X2dndHQgKmdndHQgPSAmZGV2X3ByaXYtPmdndHQ7CiAJc3RydWN0IHJlc291cmNlIHJl c2VydmVkID0gREVGSU5FX1JFU19NRU0oMCwgMCk7Ci0JZG1hX2FkZHJfdCByZXNlcnZlZF9iYXNl LCBzdG9sZW5fdG9wOwotCXUzMiByZXNlcnZlZF90b3RhbCwgcmVzZXJ2ZWRfc2l6ZTsKLQl1MzIg c3RvbGVuX3VzYWJsZV9zdGFydDsKKwlyZXNvdXJjZV9zaXplX3QgcmVzZXJ2ZWRfYmFzZSwgc3Rv bGVuX3RvcDsKKwlyZXNvdXJjZV9zaXplX3QgcmVzZXJ2ZWRfdG90YWwsIHJlc2VydmVkX3NpemU7 CisJcmVzb3VyY2Vfc2l6ZV90IHN0b2xlbl91c2FibGVfc3RhcnQ7CiAKIAltdXRleF9pbml0KCZk ZXZfcHJpdi0+bW0uc3RvbGVuX2xvY2spOwogCkBAIC00MTYsOSArNDE2LDkgQEAgaW50IGk5MTVf Z2VtX2luaXRfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAkgKiBt ZW1vcnksIHNvIGp1c3QgY29uc2lkZXIgdGhlIHN0YXJ0LiAqLwogCXJlc2VydmVkX3RvdGFsID0g c3RvbGVuX3RvcCAtIHJlc2VydmVkX2Jhc2U7CiAKLQlEUk1fREVCVUdfS01TKCJNZW1vcnkgcmVz ZXJ2ZWQgZm9yIGdyYXBoaWNzIGRldmljZTogJXVLLCB1c2FibGU6ICV1S1xuIiwKLQkJICAgICAg Z2d0dC0+c3RvbGVuX3NpemUgPj4gMTAsCi0JCSAgICAgIChnZ3R0LT5zdG9sZW5fc2l6ZSAtIHJl c2VydmVkX3RvdGFsKSA+PiAxMCk7CisJRFJNX0RFQlVHX0tNUygiTWVtb3J5IHJlc2VydmVkIGZv ciBncmFwaGljcyBkZXZpY2U6ICVsbHVLLCB1c2FibGU6ICVsbHVLXG4iLAorCQkgICAgICAodTY0 KWdndHQtPnN0b2xlbl9zaXplID4+IDEwLAorCQkgICAgICAodTY0KShnZ3R0LT5zdG9sZW5fc2l6 ZSAtIHJlc2VydmVkX3RvdGFsKSA+PiAxMCk7CiAKIAlzdG9sZW5fdXNhYmxlX3N0YXJ0ID0gMDsK IAkvKiBXYVNraXBTdG9sZW5NZW1vcnlGaXJzdFBhZ2U6YmR3KyAqLwpAQCAtNDM3LDcgKzQzNyw3 IEBAIGludCBpOTE1X2dlbV9pbml0X3N0b2xlbihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYpCiAKIHN0YXRpYyBzdHJ1Y3Qgc2dfdGFibGUgKgogaTkxNV9wYWdlc19jcmVhdGVfZm9y X3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAotCQkJICAgICB1MzIgb2Zmc2V0LCB1MzIg c2l6ZSkKKwkJCSAgICAgcmVzb3VyY2Vfc2l6ZV90IG9mZnNldCwgcmVzb3VyY2Vfc2l6ZV90IHNp emUpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYp OwogCXN0cnVjdCBzZ190YWJsZSAqc3Q7CkBAIC01NDEsNyArNTQxLDggQEAgX2k5MTVfZ2VtX29i amVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIH0K IAogc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgotaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9z dG9sZW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1MzIgc2l6ZSkKK2k5MTVf Z2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diwKKwkJCSAgICAgIHJlc291cmNlX3NpemVfdCBzaXplKQogewogCXN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpvYmo7CiAJc3RydWN0IGRybV9tbV9ub2RlICpzdG9sZW47CkBAIC01NzQsOSAr NTc1LDkgQEAgaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LCB1MzIgc2l6ZSkKIAogc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Qg KgogaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW5fZm9yX3ByZWFsbG9jYXRlZChzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCi0JCQkJCSAgICAgICB1MzIgc3RvbGVuX29mZnNl dCwKLQkJCQkJICAgICAgIHUzMiBndHRfb2Zmc2V0LAotCQkJCQkgICAgICAgdTMyIHNpemUpCisJ CQkJCSAgICAgICByZXNvdXJjZV9zaXplX3Qgc3RvbGVuX29mZnNldCwKKwkJCQkJICAgICAgIHJl c291cmNlX3NpemVfdCBndHRfb2Zmc2V0LAorCQkJCQkgICAgICAgcmVzb3VyY2Vfc2l6ZV90IHNp emUpCiB7CiAJc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCA9ICZkZXZfcHJpdi0+Z2d0dDsKIAlzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOwpAQCAtNTg5LDggKzU5MCw4IEBAIGk5MTVfZ2Vt X29iamVjdF9jcmVhdGVfc3RvbGVuX2Zvcl9wcmVhbGxvY2F0ZWQoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2CiAKIAlsb2NrZGVwX2Fzc2VydF9oZWxkKCZkZXZfcHJpdi0+ZHJtLnN0 cnVjdF9tdXRleCk7CiAKLQlEUk1fREVCVUdfS01TKCJjcmVhdGluZyBwcmVhbGxvY2F0ZWQgc3Rv bGVuIG9iamVjdDogc3RvbGVuX29mZnNldD0leCwgZ3R0X29mZnNldD0leCwgc2l6ZT0leFxuIiwK LQkJCXN0b2xlbl9vZmZzZXQsIGd0dF9vZmZzZXQsIHNpemUpOworCURSTV9ERUJVR19LTVMoImNy ZWF0aW5nIHByZWFsbG9jYXRlZCBzdG9sZW4gb2JqZWN0OiBzdG9sZW5fb2Zmc2V0PSVwYSwgZ3R0 X29mZnNldD0lcGEsIHNpemU9JXBhXG4iLAorCQkJJnN0b2xlbl9vZmZzZXQsICZndHRfb2Zmc2V0 LCAmc2l6ZSk7CiAKIAkvKiBLSVNTIGFuZCBleHBlY3QgZXZlcnl0aGluZyB0byBiZSBwYWdlLWFs aWduZWQgKi8KIAlpZiAoV0FSTl9PTihzaXplID09IDApIHx8CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0u YwppbmRleCA1MDQwMjFhZGNhZTYuLjZkOTljMzkzMGM2NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9w bS5jCkBAIC03MDg0LDkgKzcwODQsOSBAQCBzdGF0aWMgdm9pZCBjaGVycnl2aWV3X2NoZWNrX3Bj dHgoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogc3RhdGljIHZvaWQgY2hlcnJ5 dmlld19zZXR1cF9wY3R4KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKIAlz dHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0ID0gJmRldl9wcml2LT5nZ3R0OwotCXVuc2lnbmVkIGxvbmcg cGN0eF9wYWRkciwgcGFkZHI7CisJcmVzb3VyY2Vfc2l6ZV90IHBjdHhfcGFkZHIsIHBhZGRyOwor CXJlc291cmNlX3NpemVfdCBwY3R4X3NpemUgPSAzMioxMDI0OwogCXUzMiBwY2JyOwotCWludCBw Y3R4X3NpemUgPSAzMioxMDI0OwogCiAJcGNiciA9IEk5MTVfUkVBRChWTFZfUENCUik7CiAJaWYg KChwY2JyID4+IFZMVl9QQ0JSX0FERFJfU0hJRlQpID09IDApIHsKQEAgLTcxMDksMTQgKzcxMDks MTQgQEAgc3RhdGljIHZvaWQgY2hlcnJ5dmlld19zZXR1cF9wY3R4KHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdikKIHN0YXRpYyB2b2lkIHZhbGxleXZpZXdfc2V0dXBfcGN0eChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9v YmplY3QgKnBjdHg7Ci0JdW5zaWduZWQgbG9uZyBwY3R4X3BhZGRyOworCXJlc291cmNlX3NpemVf dCBwY3R4X3BhZGRyOworCXJlc291cmNlX3NpemVfdCBwY3R4X3NpemUgPSAyNCoxMDI0OwogCXUz MiBwY2JyOwotCWludCBwY3R4X3NpemUgPSAyNCoxMDI0OwogCiAJcGNiciA9IEk5MTVfUkVBRChW TFZfUENCUik7CiAJaWYgKHBjYnIpIHsKIAkJLyogQklPUyBzZXQgaXQgdXAgYWxyZWFkeSwgZ3Jh YiB0aGUgcHJlLWFsbG9jJ2Qgc3BhY2UgKi8KLQkJaW50IHBjYnJfb2Zmc2V0OworCQlyZXNvdXJj ZV9zaXplX3QgcGNicl9vZmZzZXQ7CiAKIAkJcGNicl9vZmZzZXQgPSAocGNiciAmICh+NDA5NSkp IC0gZGV2X3ByaXYtPmRzbS5zdGFydDsKIAkJcGN0eCA9IGk5MTVfZ2VtX29iamVjdF9jcmVhdGVf c3RvbGVuX2Zvcl9wcmVhbGxvY2F0ZWQoZGV2X3ByaXYsCmRpZmYgLS1naXQgYS9pbmNsdWRlL2Ry bS9pbnRlbC1ndHQuaCBiL2luY2x1ZGUvZHJtL2ludGVsLWd0dC5oCmluZGV4IGU5MDFkZTBiNmRk OC4uNzE1MDVhNWUzNzZkIDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9pbnRlbC1ndHQuaAorKysg Yi9pbmNsdWRlL2RybS9pbnRlbC1ndHQuaApAQCAtNSw5ICs1LDkgQEAKICNkZWZpbmUJX0RSTV9J TlRFTF9HVFRfSAogCiB2b2lkIGludGVsX2d0dF9nZXQodTY0ICpndHRfdG90YWwsCi0JCSAgIHUz MiAqc3RvbGVuX3NpemUsCisJCSAgIHJlc291cmNlX3NpemVfdCAqc3RvbGVuX3NpemUsCiAJCSAg IHBoeXNfYWRkcl90ICptYXBwYWJsZV9iYXNlLAotCQkgICB1NjQgKm1hcHBhYmxlX3NpemUpOwor CQkgICByZXNvdXJjZV9zaXplX3QgKm1hcHBhYmxlX3NpemUpOwogCiBpbnQgaW50ZWxfZ21jaF9w cm9iZShzdHJ1Y3QgcGNpX2RldiAqYnJpZGdlX3BkZXYsIHN0cnVjdCBwY2lfZGV2ICpncHVfcGRl diwKIAkJICAgICBzdHJ1Y3QgYWdwX2JyaWRnZV9kYXRhICpicmlkZ2UpOwotLSAKMi4xNC4zCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZngg bWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK