From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH 8/8] drm/i915: prefer resource_size_t for everything stolen Date: Fri, 24 Nov 2017 16:42:57 +0000 Message-ID: <20171124164257.29955-9-matthew.auld@intel.com> References: <20171124164257.29955-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id A9DE16E9C5 for ; Fri, 24 Nov 2017 16:43:12 +0000 (UTC) In-Reply-To: <20171124164257.29955-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 cm0vaTkxNS9pOTE1X2RlYnVnZnMuYyAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oICAgICAgICB8ICA5ICsrKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZ3R0LmMgICAgfCAxMCArKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9n dHQuaCAgICB8ICA2ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5j IHwgNTEgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcG0uYyAgICAgICAgfCAxMCArKystLS0tCiBpbmNsdWRlL2RybS9pbnRlbC1n dHQuaCAgICAgICAgICAgICAgICB8ICA0ICstLQogOCBmaWxlcyBjaGFuZ2VkLCA1NCBpbnNlcnRp b25zKCspLCA1MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2NoYXIvYWdwL2lu dGVsLWd0dC5jIGIvZHJpdmVycy9jaGFyL2FncC9pbnRlbC1ndHQuYwppbmRleCAyYTMyMWVlMjk0 M2EuLjMxMmM0Y2M0NDBiYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9jaGFyL2FncC9pbnRlbC1ndHQu YworKysgYi9kcml2ZXJzL2NoYXIvYWdwL2ludGVsLWd0dC5jCkBAIC04MCw3ICs4MCw3IEBAIHN0 YXRpYyBzdHJ1Y3QgX2ludGVsX3ByaXZhdGUgewogCXVuc2lnbmVkIGludCBuZWVkc19kbWFyIDog MTsKIAlwaHlzX2FkZHJfdCBnbWFfYnVzX2FkZHI7CiAJLyogIFNpemUgb2YgbWVtb3J5IHJlc2Vy dmVkIGZvciBncmFwaGljcyBieSB0aGUgQklPUyAqLwotCXVuc2lnbmVkIGludCBzdG9sZW5fc2l6 ZTsKKwlyZXNvdXJjZV9zaXplX3Qgc3RvbGVuX3NpemU7CiAJLyogVG90YWwgbnVtYmVyIG9mIGd0 dCBlbnRyaWVzLiAqLwogCXVuc2lnbmVkIGludCBndHRfdG90YWxfZW50cmllczsKIAkvKiBQYXJ0 IG9mIHRoZSBndHQgdGhhdCBpcyBtYXBwYWJsZSBieSB0aGUgY3B1LCBmb3IgdGhvc2UgY2hpcHMg d2hlcmUKQEAgLTMzMywxMyArMzMzLDEzIEBAIHN0YXRpYyB2b2lkIGk4MTBfd3JpdGVfZW50cnko ZG1hX2FkZHJfdCBhZGRyLCB1bnNpZ25lZCBpbnQgZW50cnksCiAJd3JpdGVsX3JlbGF4ZWQoYWRk ciB8IHB0ZV9mbGFncywgaW50ZWxfcHJpdmF0ZS5ndHQgKyBlbnRyeSk7CiB9CiAKLXN0YXRpYyB1 bnNpZ25lZCBpbnQgaW50ZWxfZ3R0X3N0b2xlbl9zaXplKHZvaWQpCitzdGF0aWMgcmVzb3VyY2Vf c2l6ZV90IGludGVsX2d0dF9zdG9sZW5fc2l6ZSh2b2lkKQogewogCXUxNiBnbWNoX2N0cmw7CiAJ dTggcmRjdDsKIAlpbnQgbG9jYWwgPSAwOwogCXN0YXRpYyBjb25zdCBpbnQgZGR0WzRdID0geyAw LCAxNiwgMzIsIDY0IH07Ci0JdW5zaWduZWQgaW50IHN0b2xlbl9zaXplID0gMDsKKwlyZXNvdXJj ZV9zaXplX3Qgc3RvbGVuX3NpemUgPSAwOwogCiAJaWYgKElOVEVMX0dUVF9HRU4gPT0gMSkKIAkJ cmV0dXJuIDA7IC8qIG5vIHN0b2xlbiBtZW0gb24gaTgxeCAqLwpAQCAtNDE3LDggKzQxNyw4IEBA IHN0YXRpYyB1bnNpZ25lZCBpbnQgaW50ZWxfZ3R0X3N0b2xlbl9zaXplKHZvaWQpCiAJfQogCiAJ aWYgKHN0b2xlbl9zaXplID4gMCkgewotCQlkZXZfaW5mbygmaW50ZWxfcHJpdmF0ZS5icmlkZ2Vf ZGV2LT5kZXYsICJkZXRlY3RlZCAlZEsgJXMgbWVtb3J5XG4iLAotCQkgICAgICAgc3RvbGVuX3Np emUgLyBLQigxKSwgbG9jYWwgPyAibG9jYWwiIDogInN0b2xlbiIpOworCQlkZXZfaW5mbygmaW50 ZWxfcHJpdmF0ZS5icmlkZ2VfZGV2LT5kZXYsICJkZXRlY3RlZCAlbGx1SyAlcyBtZW1vcnlcbiIs CisJCSAgICAgICAodTY0KXN0b2xlbl9zaXplIC8gS0IoMSksIGxvY2FsID8gImxvY2FsIiA6ICJz dG9sZW4iKTsKIAl9IGVsc2UgewogCQlkZXZfaW5mbygmaW50ZWxfcHJpdmF0ZS5icmlkZ2VfZGV2 LT5kZXYsCiAJCSAgICAgICAibm8gcHJlLWFsbG9jYXRlZCB2aWRlbyBtZW1vcnkgZGV0ZWN0ZWRc biIpOwpAQCAtMTQyMiw5ICsxNDIyLDkgQEAgaW50IGludGVsX2dtY2hfcHJvYmUoc3RydWN0IHBj aV9kZXYgKmJyaWRnZV9wZGV2LCBzdHJ1Y3QgcGNpX2RldiAqZ3B1X3BkZXYsCiBFWFBPUlRfU1lN Qk9MKGludGVsX2dtY2hfcHJvYmUpOwogCiB2b2lkIGludGVsX2d0dF9nZXQodTY0ICpndHRfdG90 YWwsCi0JCSAgIHUzMiAqc3RvbGVuX3NpemUsCisJCSAgIHJlc291cmNlX3NpemVfdCAqc3RvbGVu X3NpemUsCiAJCSAgIHBoeXNfYWRkcl90ICptYXBwYWJsZV9iYXNlLAotCQkgICB1NjQgKm1hcHBh YmxlX3NpemUpCisJCSAgIHJlc291cmNlX3NpemVfdCAqbWFwcGFibGVfc2l6ZSkKIHsKIAkqZ3R0 X3RvdGFsID0gaW50ZWxfcHJpdmF0ZS5ndHRfdG90YWxfZW50cmllcyA8PCBQQUdFX1NISUZUOwog CSpzdG9sZW5fc2l6ZSA9IGludGVsX3ByaXZhdGUuc3RvbGVuX3NpemU7CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZGVidWdmcy5jCmluZGV4IGEwNWUyYjkyYzAyYy4uMjQ4ZDE4YTI1NWQ4IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwpAQCAtNTIzLDcgKzUyMyw3IEBAIHN0YXRpYyBpbnQg aTkxNV9nZW1fb2JqZWN0X2luZm8oc3RydWN0IHNlcV9maWxlICptLCB2b2lkICpkYXRhKQogCQkg ICBkcHlfY291bnQsIGRweV9zaXplKTsKIAogCXNlcV9wcmludGYobSwgIiVsbHUgWyVsbHVdIGd0 dCB0b3RhbFxuIiwKLQkJICAgZ2d0dC0+YmFzZS50b3RhbCwgZ2d0dC0+bWFwcGFibGVfc2l6ZSk7 CisJCSAgIGdndHQtPmJhc2UudG90YWwsICh1NjQpZ2d0dC0+bWFwcGFibGVfc2l6ZSk7CiAJc2Vx X3ByaW50ZihtLCAiU3VwcG9ydGVkIHBhZ2Ugc2l6ZXM6ICVzXG4iLAogCQkgICBzdHJpbmdpZnlf cGFnZV9zaXplcyhJTlRFTF9JTkZPKGRldl9wcml2KS0+cGFnZV9zaXplcywKIAkJCQkJYnVmLCBz aXplb2YoYnVmKSkpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggZTMwYThhNzgxMmJhLi5l ZWRmZmI5NDFmOWQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMzkwOCwxMiArMzkwOCwx MyBAQCB2b2lkIGk5MTVfZ2VtX3N0b2xlbl9yZW1vdmVfbm9kZShzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsCiBpbnQgaTkxNV9nZW1faW5pdF9zdG9sZW4oc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KTsKIHZvaWQgaTkxNV9nZW1fY2xlYW51cF9zdG9sZW4oc3RydWN0 IGRybV9kZXZpY2UgKmRldik7CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqCi1pOTE1X2dl bV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs IHUzMiBzaXplKTsKK2k5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiwKKwkJCSAgICAgIHJlc291cmNlX3NpemVfdCBzaXplKTsKIHN0 cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoKIGk5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVu X2Zvcl9wcmVhbGxvY2F0ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAotCQkJ CQkgICAgICAgdTMyIHN0b2xlbl9vZmZzZXQsCi0JCQkJCSAgICAgICB1MzIgZ3R0X29mZnNldCwK LQkJCQkJICAgICAgIHUzMiBzaXplKTsKKwkJCQkJICAgICAgIHJlc291cmNlX3NpemVfdCBzdG9s ZW5fb2Zmc2V0LAorCQkJCQkgICAgICAgcmVzb3VyY2Vfc2l6ZV90IGd0dF9vZmZzZXQsCisJCQkJ CSAgICAgICByZXNvdXJjZV9zaXplX3Qgc2l6ZSk7CiAKIC8qIGk5MTVfZ2VtX2ludGVybmFsLmMg Ki8KIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f Z3R0LmMKaW5kZXggMzVkOTFjZjA3MTIzLi4zOTBkZTFjNzQzMjkgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX2d0dC5jCkBAIC0zMzU0LDcgKzMzNTQsNyBAQCBzdGF0aWMgaW50IGdlbjZfZ21j aF9wcm9iZShzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0KQogCSAqIGEgY29hcnNlIHNhbml0eSBjaGVj ay4KIAkgKi8KIAlpZiAoZ2d0dC0+bWFwcGFibGVfc2l6ZSA8ICg2NDw8MjApIHx8IGdndHQtPm1h cHBhYmxlX3NpemUgPiAoNTEyPDwyMCkpIHsKLQkJRFJNX0VSUk9SKCJVbmtub3duIEdNQURSIHNp emUgKCVsbHgpXG4iLCBnZ3R0LT5tYXBwYWJsZV9zaXplKTsKKwkJRFJNX0VSUk9SKCJVbmtub3du IEdNQURSIHNpemUgKCVwYSlcbiIsICZnZ3R0LT5tYXBwYWJsZV9zaXplKTsKIAkJcmV0dXJuIC1F TlhJTzsKIAl9CiAKQEAgLTM0NjYsNyArMzQ2Niw3IEBAIGludCBpOTE1X2dndHRfcHJvYmVfaHco c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCSAqLwogCWlmIChIQVNfR1VDKGRl dl9wcml2KSAmJiBpOTE1X21vZHBhcmFtcy5lbmFibGVfZ3VjX2xvYWRpbmcpIHsKIAkJZ2d0dC0+ YmFzZS50b3RhbCA9IG1pbl90KHU2NCwgZ2d0dC0+YmFzZS50b3RhbCwgR1VDX0dHVFRfVE9QKTsK LQkJZ2d0dC0+bWFwcGFibGVfc2l6ZSA9IG1pbihnZ3R0LT5tYXBwYWJsZV9zaXplLCBnZ3R0LT5i YXNlLnRvdGFsKTsKKwkJZ2d0dC0+bWFwcGFibGVfc2l6ZSA9IG1pbl90KHU2NCwgZ2d0dC0+bWFw cGFibGVfc2l6ZSwgZ2d0dC0+YmFzZS50b3RhbCk7CiAJfQogCiAJaWYgKChnZ3R0LT5iYXNlLnRv dGFsIC0gMSkgPj4gMzIpIHsKQEAgLTM0NzQsMTMgKzM0NzQsMTMgQEAgaW50IGk5MTVfZ2d0dF9w cm9iZV9odyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJCQkgICIgb2YgYWRk cmVzcyBzcGFjZSEgRm91bmQgJWxsZE0hXG4iLAogCQkJICBnZ3R0LT5iYXNlLnRvdGFsID4+IDIw KTsKIAkJZ2d0dC0+YmFzZS50b3RhbCA9IDFVTEwgPDwgMzI7Ci0JCWdndHQtPm1hcHBhYmxlX3Np emUgPSBtaW4oZ2d0dC0+bWFwcGFibGVfc2l6ZSwgZ2d0dC0+YmFzZS50b3RhbCk7CisJCWdndHQt Pm1hcHBhYmxlX3NpemUgPSBtaW5fdCh1NjQsIGdndHQtPm1hcHBhYmxlX3NpemUsIGdndHQtPmJh c2UudG90YWwpOwogCX0KIAogCWlmIChnZ3R0LT5tYXBwYWJsZV9zaXplID4gZ2d0dC0+YmFzZS50 b3RhbCkgewogCQlEUk1fRVJST1IoIm1hcHBhYmxlIGFwZXJ0dXJlIGV4dGVuZHMgcGFzdCBlbmQg b2YgR0dUVCwiCi0JCQkgICIgYXBlcnR1cmU9JWxseCwgdG90YWw9JWxseFxuIiwKLQkJCSAgZ2d0 dC0+bWFwcGFibGVfc2l6ZSwgZ2d0dC0+YmFzZS50b3RhbCk7CisJCQkgICIgYXBlcnR1cmU9JXBh LCB0b3RhbD0lbGx4XG4iLAorCQkJICAmZ2d0dC0+bWFwcGFibGVfc2l6ZSwgZ2d0dC0+YmFzZS50 b3RhbCk7CiAJCWdndHQtPm1hcHBhYmxlX3NpemUgPSBnZ3R0LT5iYXNlLnRvdGFsOwogCX0KIApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaAppbmRleCBhOTEyODFhNTViOTEuLjZmN2M2NDA4 ODVlZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKQEAgLTM3MSw3ICszNzEsNyBA QCBzdHJ1Y3QgaTkxNV9nZ3R0IHsKIAogCXN0cnVjdCBpb19tYXBwaW5nIG1hcHBhYmxlX2lvOwkv KiBNYXBwaW5nIHRvIG91ciBDUFUgbWFwcGFibGUgcmVnaW9uICovCiAJc3RydWN0IHJlc291cmNl IG1hcHBhYmxlOyAgICAgICAvKiBHTUFEUiByZXNvdXJjZSAqLwotCXU2NCBtYXBwYWJsZV9zaXpl OwkJLyogVG90YWwgbWFwcGFibGUgc2l6ZSB0aGF0IHdlIGNhbiBDUFUgbWFwICovCisJcmVzb3Vy Y2Vfc2l6ZV90IG1hcHBhYmxlX3NpemU7CS8qIFRvdGFsIG1hcHBhYmxlIHNpemUgdGhhdCB3ZSBj YW4gQ1BVIG1hcCAqLwogCiAJLyogU3RvbGVuIG1lbW9yeSBpcyBzZWdtZW50ZWQgaW4gaGFyZHdh cmUgd2l0aCBkaWZmZXJlbnQgcG9ydGlvbnMKIAkgKiBvZmZsaW1pdHMgdG8gY2VydGFpbiBmdW5j dGlvbnMuCkBAIC0zODEsOCArMzgxLDggQEAgc3RydWN0IGk5MTVfZ2d0dCB7CiAJICogYXZvaWQg dGhlIGZpcnN0IHBhZ2UhIFRoZSB1cHBlciBlbmQgb2Ygc3RvbGVuIG1lbW9yeSBpcyByZXNlcnZl ZCBmb3IKIAkgKiBoYXJkd2FyZSBmdW5jdGlvbnMgYW5kIHNpbWlsYXJseSByZW1vdmVkIGZyb20g dGhlIGFjY2Vzc2libGUgcmFuZ2UuCiAJICovCi0JdTMyIHN0b2xlbl9zaXplOwkJLyogVG90YWwg c2l6ZSBvZiBzdG9sZW4gbWVtb3J5ICovCi0JdTMyIHN0b2xlbl91c2FibGVfc2l6ZTsJLyogVG90 YWwgc2l6ZSBtaW51cyByZXNlcnZlZCByYW5nZXMgKi8KKwlyZXNvdXJjZV9zaXplX3Qgc3RvbGVu X3NpemU7CQkvKiBUb3RhbCBzaXplIG9mIHN0b2xlbiBtZW1vcnkgKi8KKwlyZXNvdXJjZV9zaXpl X3Qgc3RvbGVuX3VzYWJsZV9zaXplOwkvKiBUb3RhbCBzaXplIG1pbnVzIHJlc2VydmVkIHJhbmdl cyAqLwogCiAJLyoqICJHcmFwaGljcyBTdG9sZW4gTWVtb3J5IiBob2xkcyB0aGUgZ2xvYmFsIFBU RXMgKi8KIAl2b2lkIF9faW9tZW0gKmdzbTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX3N0b2xlbi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc3Rv bGVuLmMKaW5kZXggMmI3YWY2MGRmY2UwLi5mY2E1NmVjOTkxM2QgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX3N0b2xlbi5jCkBAIC03NiwxMCArNzYsMTAgQEAgdm9pZCBpOTE1X2dlbV9z dG9sZW5fcmVtb3ZlX25vZGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCW11 dGV4X3VubG9jaygmZGV2X3ByaXYtPm1tLnN0b2xlbl9sb2NrKTsKIH0KIAotc3RhdGljIGRtYV9h ZGRyX3QgaTkxNV9zdG9sZW5fdG9fZG1hKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp dikKK3N0YXRpYyByZXNvdXJjZV9zaXplX3QgaTkxNV9zdG9sZW5fdG9fZG1hKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKIAlzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0ID0gJmRl dl9wcml2LT5nZ3R0OwotCWRtYV9hZGRyX3QgYmFzZSA9IGludGVsX2dyYXBoaWNzX3N0b2xlbl9y ZXMuc3RhcnQ7CisJcmVzb3VyY2Vfc2l6ZV90IGJhc2UgPSBpbnRlbF9ncmFwaGljc19zdG9sZW5f cmVzLnN0YXJ0OwogCXN0cnVjdCByZXNvdXJjZSAqcjsKIAogCWlmIChiYXNlID09IDAgfHwgYWRk X292ZXJmbG93cyhiYXNlLCBnZ3R0LT5zdG9sZW5fc2l6ZSkpCkBAIC04OSw3ICs4OSw3IEBAIHN0 YXRpYyBkbWFfYWRkcl90IGk5MTVfc3RvbGVuX3RvX2RtYShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCiAJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPD0gNCAmJgogCSAgICAhSVNf RzMzKGRldl9wcml2KSAmJiAhSVNfUElORVZJRVcoZGV2X3ByaXYpICYmICFJU19HNFgoZGV2X3By aXYpKSB7CiAJCXN0cnVjdCB7Ci0JCQlkbWFfYWRkcl90IHN0YXJ0LCBlbmQ7CisJCQlyZXNvdXJj ZV9zaXplX3Qgc3RhcnQsIGVuZDsKIAkJfSBzdG9sZW5bMl0gPSB7CiAJCQl7IC5zdGFydCA9IGJh c2UsIC5lbmQgPSBiYXNlICsgZ2d0dC0+c3RvbGVuX3NpemUsIH0sCiAJCQl7IC5zdGFydCA9IGJh c2UsIC5lbmQgPSBiYXNlICsgZ2d0dC0+c3RvbGVuX3NpemUsIH0sCkBAIC0xMjEsNyArMTIxLDcg QEAgc3RhdGljIGRtYV9hZGRyX3QgaTkxNV9zdG9sZW5fdG9fZG1hKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdikKIAogCQlpZiAoc3RvbGVuWzBdLnN0YXJ0ICE9IHN0b2xlblsxXS5z dGFydCB8fAogCQkgICAgc3RvbGVuWzBdLmVuZCAhPSBzdG9sZW5bMV0uZW5kKSB7Ci0JCQlkbWFf YWRkcl90IGVuZCA9IGJhc2UgKyBnZ3R0LT5zdG9sZW5fc2l6ZSAtIDE7CisJCQlyZXNvdXJjZV9z aXplX3QgZW5kID0gYmFzZSArIGdndHQtPnN0b2xlbl9zaXplIC0gMTsKIAogCQkJRFJNX0RFQlVH X0tNUygiR1RUIHdpdGhpbiBzdG9sZW4gbWVtb3J5IGF0IDB4JWxseC0weCVsbHhcbiIsCiAJCQkJ ICAgICAgKHVuc2lnbmVkIGxvbmcgbG9uZylnZ3R0X3N0YXJ0LApAQCAtMTU3LDcgKzE1Nyw3IEBA IHN0YXRpYyBkbWFfYWRkcl90IGk5MTVfc3RvbGVuX3RvX2RtYShzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYpCiAJCSAqIHJhbmdlLiBBcHBhcmVudGx5IHRoaXMgd29ya3MuCiAJCSAq LwogCQlpZiAociA9PSBOVUxMICYmICFJU19HRU4zKGRldl9wcml2KSkgewotCQkJZG1hX2FkZHJf dCBlbmQgPSBiYXNlICsgZ2d0dC0+c3RvbGVuX3NpemU7CisJCQlyZXNvdXJjZV9zaXplX3QgZW5k ID0gYmFzZSArIGdndHQtPnN0b2xlbl9zaXplOwogCiAJCQlEUk1fRVJST1IoImNvbmZsaWN0IGRl dGVjdGVkIHdpdGggc3RvbGVuIHJlZ2lvbjogWyVwYWQgLSAlcGFkXVxuIiwKIAkJCQkgICZiYXNl LCAmZW5kKTsKQEAgLTE3OSwxMyArMTc5LDEzIEBAIHZvaWQgaTkxNV9nZW1fY2xlYW51cF9zdG9s ZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldikKIH0KIAogc3RhdGljIHZvaWQgZzR4X2dldF9zdG9s ZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAotCQkJCSAgICBk bWFfYWRkcl90ICpiYXNlLCB1MzIgKnNpemUpCisJCQkJICAgIHJlc291cmNlX3NpemVfdCAqYmFz ZSwgcmVzb3VyY2Vfc2l6ZV90ICpzaXplKQogewogCXN0cnVjdCBpOTE1X2dndHQgKmdndHQgPSAm ZGV2X3ByaXYtPmdndHQ7CiAJdWludDMyX3QgcmVnX3ZhbCA9IEk5MTVfUkVBRChJU19HTTQ1KGRl dl9wcml2KSA/CiAJCQkJICAgICBDVEdfU1RPTEVOX1JFU0VSVkVEIDoKIAkJCQkgICAgIEVMS19T VE9MRU5fUkVTRVJWRUQpOwotCWRtYV9hZGRyX3Qgc3RvbGVuX3RvcCA9IGRldl9wcml2LT5kc20u c3RhcnQgKyBnZ3R0LT5zdG9sZW5fc2l6ZTsKKwlyZXNvdXJjZV9zaXplX3Qgc3RvbGVuX3RvcCA9 IGRldl9wcml2LT5kc20uc3RhcnQgKyBnZ3R0LT5zdG9sZW5fc2l6ZTsKIAogCWlmICgocmVnX3Zh bCAmIEc0WF9TVE9MRU5fUkVTRVJWRURfRU5BQkxFKSA9PSAwKSB7CiAJCSpiYXNlID0gMDsKQEAg LTIxNCw3ICsyMTQsNyBAQCBzdGF0aWMgdm9pZCBnNHhfZ2V0X3N0b2xlbl9yZXNlcnZlZChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiB9CiAKIHN0YXRpYyB2b2lkIGdlbjZfZ2V0 X3N0b2xlbl9yZXNlcnZlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCi0JCQkJ ICAgICBkbWFfYWRkcl90ICpiYXNlLCB1MzIgKnNpemUpCisJCQkJICAgICByZXNvdXJjZV9zaXpl X3QgKmJhc2UsIHJlc291cmNlX3NpemVfdCAqc2l6ZSkKIHsKIAl1aW50MzJfdCByZWdfdmFsID0g STkxNV9SRUFEKEdFTjZfU1RPTEVOX1JFU0VSVkVEKTsKIApAQCAtMjQ2LDcgKzI0Niw3IEBAIHN0 YXRpYyB2b2lkIGdlbjZfZ2V0X3N0b2xlbl9yZXNlcnZlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCiB9CiAKIHN0YXRpYyB2b2lkIGdlbjdfZ2V0X3N0b2xlbl9yZXNlcnZlZChz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCi0JCQkJICAgICBkbWFfYWRkcl90ICpi YXNlLCB1MzIgKnNpemUpCisJCQkJICAgICByZXNvdXJjZV9zaXplX3QgKmJhc2UsIHJlc291cmNl X3NpemVfdCAqc2l6ZSkKIHsKIAl1aW50MzJfdCByZWdfdmFsID0gSTkxNV9SRUFEKEdFTjZfU1RP TEVOX1JFU0VSVkVEKTsKIApAQCAtMjcyLDcgKzI3Miw3IEBAIHN0YXRpYyB2b2lkIGdlbjdfZ2V0 X3N0b2xlbl9yZXNlcnZlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiB9CiAK IHN0YXRpYyB2b2lkIGNodl9nZXRfc3RvbGVuX3Jlc2VydmVkKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKLQkJCQkgICAgZG1hX2FkZHJfdCAqYmFzZSwgdTMyICpzaXplKQorCQkJ CSAgICByZXNvdXJjZV9zaXplX3QgKmJhc2UsIHJlc291cmNlX3NpemVfdCAqc2l6ZSkKIHsKIAl1 aW50MzJfdCByZWdfdmFsID0gSTkxNV9SRUFEKEdFTjZfU1RPTEVOX1JFU0VSVkVEKTsKIApAQCAt MzA0LDExICszMDQsMTEgQEAgc3RhdGljIHZvaWQgY2h2X2dldF9zdG9sZW5fcmVzZXJ2ZWQoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogfQogCiBzdGF0aWMgdm9pZCBiZHdfZ2V0 X3N0b2xlbl9yZXNlcnZlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCi0JCQkJ ICAgIGRtYV9hZGRyX3QgKmJhc2UsIHUzMiAqc2l6ZSkKKwkJCQkgICAgcmVzb3VyY2Vfc2l6ZV90 ICpiYXNlLCByZXNvdXJjZV9zaXplX3QgKnNpemUpCiB7CiAJc3RydWN0IGk5MTVfZ2d0dCAqZ2d0 dCA9ICZkZXZfcHJpdi0+Z2d0dDsKIAl1aW50MzJfdCByZWdfdmFsID0gSTkxNV9SRUFEKEdFTjZf U1RPTEVOX1JFU0VSVkVEKTsKLQlkbWFfYWRkcl90IHN0b2xlbl90b3A7CisJcmVzb3VyY2Vfc2l6 ZV90IHN0b2xlbl90b3A7CiAKIAlpZiAoKHJlZ192YWwgJiBHRU42X1NUT0xFTl9SRVNFUlZFRF9F TkFCTEUpID09IDApIHsKIAkJKmJhc2UgPSAwOwpAQCAtMzM0LDkgKzMzNCw5IEBAIGludCBpOTE1 X2dlbV9pbml0X3N0b2xlbihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7CiAJ c3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCA9ICZkZXZfcHJpdi0+Z2d0dDsKIAlzdHJ1Y3QgcmVzb3Vy Y2UgcmVzZXJ2ZWQgPSBERUZJTkVfUkVTX01FTSgwLCAwKTsKLQlkbWFfYWRkcl90IHJlc2VydmVk X2Jhc2UsIHN0b2xlbl90b3A7Ci0JdTMyIHJlc2VydmVkX3RvdGFsLCByZXNlcnZlZF9zaXplOwot CXUzMiBzdG9sZW5fdXNhYmxlX3N0YXJ0OworCXJlc291cmNlX3NpemVfdCByZXNlcnZlZF9iYXNl LCBzdG9sZW5fdG9wOworCXJlc291cmNlX3NpemVfdCByZXNlcnZlZF90b3RhbCwgcmVzZXJ2ZWRf c2l6ZTsKKwlyZXNvdXJjZV9zaXplX3Qgc3RvbGVuX3VzYWJsZV9zdGFydDsKIAogCW11dGV4X2lu aXQoJmRldl9wcml2LT5tbS5zdG9sZW5fbG9jayk7CiAKQEAgLTQxNiw5ICs0MTYsOSBAQCBpbnQg aTkxNV9nZW1faW5pdF9zdG9sZW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQog CSAqIG1lbW9yeSwgc28ganVzdCBjb25zaWRlciB0aGUgc3RhcnQuICovCiAJcmVzZXJ2ZWRfdG90 YWwgPSBzdG9sZW5fdG9wIC0gcmVzZXJ2ZWRfYmFzZTsKIAotCURSTV9ERUJVR19LTVMoIk1lbW9y eSByZXNlcnZlZCBmb3IgZ3JhcGhpY3MgZGV2aWNlOiAldUssIHVzYWJsZTogJXVLXG4iLAotCQkg ICAgICBnZ3R0LT5zdG9sZW5fc2l6ZSA+PiAxMCwKLQkJICAgICAgKGdndHQtPnN0b2xlbl9zaXpl IC0gcmVzZXJ2ZWRfdG90YWwpID4+IDEwKTsKKwlEUk1fREVCVUdfS01TKCJNZW1vcnkgcmVzZXJ2 ZWQgZm9yIGdyYXBoaWNzIGRldmljZTogJWxsdUssIHVzYWJsZTogJWxsdUtcbiIsCisJCSAgICAg ICh1NjQpZ2d0dC0+c3RvbGVuX3NpemUgPj4gMTAsCisJCSAgICAgICh1NjQpKGdndHQtPnN0b2xl bl9zaXplIC0gcmVzZXJ2ZWRfdG90YWwpID4+IDEwKTsKIAogCXN0b2xlbl91c2FibGVfc3RhcnQg PSAwOwogCS8qIFdhU2tpcFN0b2xlbk1lbW9yeUZpcnN0UGFnZTpiZHcrICovCkBAIC00MzcsNyAr NDM3LDcgQEAgaW50IGk5MTVfZ2VtX2luaXRfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdikKIAogc3RhdGljIHN0cnVjdCBzZ190YWJsZSAqCiBpOTE1X3BhZ2VzX2NyZWF0 ZV9mb3Jfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCi0JCQkgICAgIHUzMiBvZmZzZXQs IHUzMiBzaXplKQorCQkJICAgICByZXNvdXJjZV9zaXplX3Qgb2Zmc2V0LCByZXNvdXJjZV9zaXpl X3Qgc2l6ZSkKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1 KGRldik7CiAJc3RydWN0IHNnX3RhYmxlICpzdDsKQEAgLTU0MSw3ICs1NDEsOCBAQCBfaTkxNV9n ZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAogfQogCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqCi1pOTE1X2dlbV9vYmplY3RfY3Jl YXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUzMiBzaXplKQor aTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LAorCQkJICAgICAgcmVzb3VyY2Vfc2l6ZV90IHNpemUpCiB7CiAJc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3QgKm9iajsKIAlzdHJ1Y3QgZHJtX21tX25vZGUgKnN0b2xlbjsKQEAgLTU3 NCw5ICs1NzUsOSBAQCBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUzMiBzaXplKQogCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29i amVjdCAqCiBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbl9mb3JfcHJlYWxsb2NhdGVkKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKLQkJCQkJICAgICAgIHUzMiBzdG9sZW5f b2Zmc2V0LAotCQkJCQkgICAgICAgdTMyIGd0dF9vZmZzZXQsCi0JCQkJCSAgICAgICB1MzIgc2l6 ZSkKKwkJCQkJICAgICAgIHJlc291cmNlX3NpemVfdCBzdG9sZW5fb2Zmc2V0LAorCQkJCQkgICAg ICAgcmVzb3VyY2Vfc2l6ZV90IGd0dF9vZmZzZXQsCisJCQkJCSAgICAgICByZXNvdXJjZV9zaXpl X3Qgc2l6ZSkKIHsKIAlzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0ID0gJmRldl9wcml2LT5nZ3R0Owog CXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7CkBAIC01ODksOCArNTkwLDggQEAgaTkx NV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW5fZm9yX3ByZWFsbG9jYXRlZChzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYKIAogCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5k cm0uc3RydWN0X211dGV4KTsKIAotCURSTV9ERUJVR19LTVMoImNyZWF0aW5nIHByZWFsbG9jYXRl ZCBzdG9sZW4gb2JqZWN0OiBzdG9sZW5fb2Zmc2V0PSV4LCBndHRfb2Zmc2V0PSV4LCBzaXplPSV4 XG4iLAotCQkJc3RvbGVuX29mZnNldCwgZ3R0X29mZnNldCwgc2l6ZSk7CisJRFJNX0RFQlVHX0tN UygiY3JlYXRpbmcgcHJlYWxsb2NhdGVkIHN0b2xlbiBvYmplY3Q6IHN0b2xlbl9vZmZzZXQ9JXBh LCBndHRfb2Zmc2V0PSVwYSwgc2l6ZT0lcGFcbiIsCisJCQkmc3RvbGVuX29mZnNldCwgJmd0dF9v ZmZzZXQsICZzaXplKTsKIAogCS8qIEtJU1MgYW5kIGV4cGVjdCBldmVyeXRoaW5nIHRvIGJlIHBh Z2UtYWxpZ25lZCAqLwogCWlmIChXQVJOX09OKHNpemUgPT0gMCkgfHwKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9wbS5jCmluZGV4IGEwN2I3YjQ1NmI1MC4uZTJlY2U4MzhlMzU2IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3BtLmMKQEAgLTcwODQsOSArNzA4NCw5IEBAIHN0YXRpYyB2b2lkIGNoZXJyeXZpZXdfY2hl Y2tfcGN0eChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiBzdGF0aWMgdm9pZCBj aGVycnl2aWV3X3NldHVwX3BjdHgoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQog ewogCXN0cnVjdCBpOTE1X2dndHQgKmdndHQgPSAmZGV2X3ByaXYtPmdndHQ7Ci0JdW5zaWduZWQg bG9uZyBwY3R4X3BhZGRyLCBwYWRkcjsKKwlyZXNvdXJjZV9zaXplX3QgcGN0eF9wYWRkciwgcGFk ZHI7CisJcmVzb3VyY2Vfc2l6ZV90IHBjdHhfc2l6ZSA9IDMyKjEwMjQ7CiAJdTMyIHBjYnI7Ci0J aW50IHBjdHhfc2l6ZSA9IDMyKjEwMjQ7CiAKIAlwY2JyID0gSTkxNV9SRUFEKFZMVl9QQ0JSKTsK IAlpZiAoKHBjYnIgPj4gVkxWX1BDQlJfQUREUl9TSElGVCkgPT0gMCkgewpAQCAtNzEwOSwxNCAr NzEwOSwxNCBAQCBzdGF0aWMgdm9pZCBjaGVycnl2aWV3X3NldHVwX3BjdHgoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2KQogc3RhdGljIHZvaWQgdmFsbGV5dmlld19zZXR1cF9wY3R4 KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVf Z2VtX29iamVjdCAqcGN0eDsKLQl1bnNpZ25lZCBsb25nIHBjdHhfcGFkZHI7CisJcmVzb3VyY2Vf c2l6ZV90IHBjdHhfcGFkZHI7CisJcmVzb3VyY2Vfc2l6ZV90IHBjdHhfc2l6ZSA9IDI0KjEwMjQ7 CiAJdTMyIHBjYnI7Ci0JaW50IHBjdHhfc2l6ZSA9IDI0KjEwMjQ7CiAKIAlwY2JyID0gSTkxNV9S RUFEKFZMVl9QQ0JSKTsKIAlpZiAocGNicikgewogCQkvKiBCSU9TIHNldCBpdCB1cCBhbHJlYWR5 LCBncmFiIHRoZSBwcmUtYWxsb2MnZCBzcGFjZSAqLwotCQlpbnQgcGNicl9vZmZzZXQ7CisJCXJl c291cmNlX3NpemVfdCBwY2JyX29mZnNldDsKIAogCQlwY2JyX29mZnNldCA9IChwY2JyICYgKH40 MDk1KSkgLSBkZXZfcHJpdi0+ZHNtLnN0YXJ0OwogCQlwY3R4ID0gaTkxNV9nZW1fb2JqZWN0X2Ny ZWF0ZV9zdG9sZW5fZm9yX3ByZWFsbG9jYXRlZChkZXZfcHJpdiwKZGlmZiAtLWdpdCBhL2luY2x1 ZGUvZHJtL2ludGVsLWd0dC5oIGIvaW5jbHVkZS9kcm0vaW50ZWwtZ3R0LmgKaW5kZXggZTkwMWRl MGI2ZGQ4Li43MTUwNWE1ZTM3NmQgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2ludGVsLWd0dC5o CisrKyBiL2luY2x1ZGUvZHJtL2ludGVsLWd0dC5oCkBAIC01LDkgKzUsOSBAQAogI2RlZmluZQlf RFJNX0lOVEVMX0dUVF9ICiAKIHZvaWQgaW50ZWxfZ3R0X2dldCh1NjQgKmd0dF90b3RhbCwKLQkJ ICAgdTMyICpzdG9sZW5fc2l6ZSwKKwkJICAgcmVzb3VyY2Vfc2l6ZV90ICpzdG9sZW5fc2l6ZSwK IAkJICAgcGh5c19hZGRyX3QgKm1hcHBhYmxlX2Jhc2UsCi0JCSAgIHU2NCAqbWFwcGFibGVfc2l6 ZSk7CisJCSAgIHJlc291cmNlX3NpemVfdCAqbWFwcGFibGVfc2l6ZSk7CiAKIGludCBpbnRlbF9n bWNoX3Byb2JlKHN0cnVjdCBwY2lfZGV2ICpicmlkZ2VfcGRldiwgc3RydWN0IHBjaV9kZXYgKmdw dV9wZGV2LAogCQkgICAgIHN0cnVjdCBhZ3BfYnJpZGdlX2RhdGEgKmJyaWRnZSk7Ci0tIAoyLjE0 LjMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=