From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH 8/9] drm/i915: prefer resource_size_t for everything stolen Date: Tue, 5 Dec 2017 21:02:48 +0000 Message-ID: <20171205210249.8875-9-matthew.auld@intel.com> References: <20171205210249.8875-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 72B066E63D for ; Tue, 5 Dec 2017 21:03:06 +0000 (UTC) In-Reply-To: <20171205210249.8875-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 aTkxNV9kcnYuaCAgICAgICAgfCAgOSArKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuYyAgICB8IDEwICsrKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9ndHQuaCAgICB8ICA2ICsrLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9s ZW4uYyB8IDQ3ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3BtLmMgICAgICAgIHwgMTAgKysrKy0tLS0KIGluY2x1ZGUvZHJtL2lu dGVsLWd0dC5oICAgICAgICAgICAgICAgIHwgIDQgKy0tCiA4IGZpbGVzIGNoYW5nZWQsIDUyIGlu c2VydGlvbnMoKyksIDUyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvY2hhci9h Z3AvaW50ZWwtZ3R0LmMgYi9kcml2ZXJzL2NoYXIvYWdwL2ludGVsLWd0dC5jCmluZGV4IDliNmI2 MDIzMTkzYi4uNmEyYTdiMDYyZWFjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2NoYXIvYWdwL2ludGVs LWd0dC5jCisrKyBiL2RyaXZlcnMvY2hhci9hZ3AvaW50ZWwtZ3R0LmMKQEAgLTgwLDcgKzgwLDcg QEAgc3RhdGljIHN0cnVjdCBfaW50ZWxfcHJpdmF0ZSB7CiAJdW5zaWduZWQgaW50IG5lZWRzX2Rt YXIgOiAxOwogCXBoeXNfYWRkcl90IGdtYV9idXNfYWRkcjsKIAkvKiAgU2l6ZSBvZiBtZW1vcnkg cmVzZXJ2ZWQgZm9yIGdyYXBoaWNzIGJ5IHRoZSBCSU9TICovCi0JdW5zaWduZWQgaW50IHN0b2xl bl9zaXplOworCXJlc291cmNlX3NpemVfdCBzdG9sZW5fc2l6ZTsKIAkvKiBUb3RhbCBudW1iZXIg b2YgZ3R0IGVudHJpZXMuICovCiAJdW5zaWduZWQgaW50IGd0dF90b3RhbF9lbnRyaWVzOwogCS8q IFBhcnQgb2YgdGhlIGd0dCB0aGF0IGlzIG1hcHBhYmxlIGJ5IHRoZSBjcHUsIGZvciB0aG9zZSBj aGlwcyB3aGVyZQpAQCAtMzMzLDEzICszMzMsMTMgQEAgc3RhdGljIHZvaWQgaTgxMF93cml0ZV9l bnRyeShkbWFfYWRkcl90IGFkZHIsIHVuc2lnbmVkIGludCBlbnRyeSwKIAl3cml0ZWxfcmVsYXhl ZChhZGRyIHwgcHRlX2ZsYWdzLCBpbnRlbF9wcml2YXRlLmd0dCArIGVudHJ5KTsKIH0KIAotc3Rh dGljIHVuc2lnbmVkIGludCBpbnRlbF9ndHRfc3RvbGVuX3NpemUodm9pZCkKK3N0YXRpYyByZXNv dXJjZV9zaXplX3QgaW50ZWxfZ3R0X3N0b2xlbl9zaXplKHZvaWQpCiB7CiAJdTE2IGdtY2hfY3Ry bDsKIAl1OCByZGN0OwogCWludCBsb2NhbCA9IDA7CiAJc3RhdGljIGNvbnN0IGludCBkZHRbNF0g PSB7IDAsIDE2LCAzMiwgNjQgfTsKLQl1bnNpZ25lZCBpbnQgc3RvbGVuX3NpemUgPSAwOworCXJl c291cmNlX3NpemVfdCBzdG9sZW5fc2l6ZSA9IDA7CiAKIAlpZiAoSU5URUxfR1RUX0dFTiA9PSAx KQogCQlyZXR1cm4gMDsgLyogbm8gc3RvbGVuIG1lbSBvbiBpODF4ICovCkBAIC00MTcsOCArNDE3 LDggQEAgc3RhdGljIHVuc2lnbmVkIGludCBpbnRlbF9ndHRfc3RvbGVuX3NpemUodm9pZCkKIAl9 CiAKIAlpZiAoc3RvbGVuX3NpemUgPiAwKSB7Ci0JCWRldl9pbmZvKCZpbnRlbF9wcml2YXRlLmJy aWRnZV9kZXYtPmRldiwgImRldGVjdGVkICVkSyAlcyBtZW1vcnlcbiIsCi0JCSAgICAgICBzdG9s ZW5fc2l6ZSAvIEtCKDEpLCBsb2NhbCA/ICJsb2NhbCIgOiAic3RvbGVuIik7CisJCWRldl9pbmZv KCZpbnRlbF9wcml2YXRlLmJyaWRnZV9kZXYtPmRldiwgImRldGVjdGVkICVsbHVLICVzIG1lbW9y eVxuIiwKKwkJICAgICAgICh1NjQpc3RvbGVuX3NpemUgLyBLQigxKSwgbG9jYWwgPyAibG9jYWwi IDogInN0b2xlbiIpOwogCX0gZWxzZSB7CiAJCWRldl9pbmZvKCZpbnRlbF9wcml2YXRlLmJyaWRn ZV9kZXYtPmRldiwKIAkJICAgICAgICJubyBwcmUtYWxsb2NhdGVkIHZpZGVvIG1lbW9yeSBkZXRl Y3RlZFxuIik7CkBAIC0xNDIyLDkgKzE0MjIsOSBAQCBpbnQgaW50ZWxfZ21jaF9wcm9iZShzdHJ1 Y3QgcGNpX2RldiAqYnJpZGdlX3BkZXYsIHN0cnVjdCBwY2lfZGV2ICpncHVfcGRldiwKIEVYUE9S VF9TWU1CT0woaW50ZWxfZ21jaF9wcm9iZSk7CiAKIHZvaWQgaW50ZWxfZ3R0X2dldCh1NjQgKmd0 dF90b3RhbCwKLQkJICAgdTMyICpzdG9sZW5fc2l6ZSwKKwkJICAgcmVzb3VyY2Vfc2l6ZV90ICpz dG9sZW5fc2l6ZSwKIAkJICAgcGh5c19hZGRyX3QgKm1hcHBhYmxlX2Jhc2UsCi0JCSAgIHU2NCAq bWFwcGFibGVfZW5kKQorCQkgICByZXNvdXJjZV9zaXplX3QgKm1hcHBhYmxlX2VuZCkKIHsKIAkq Z3R0X3RvdGFsID0gaW50ZWxfcHJpdmF0ZS5ndHRfdG90YWxfZW50cmllcyA8PCBQQUdFX1NISUZU OwogCSpzdG9sZW5fc2l6ZSA9IGludGVsX3ByaXZhdGUuc3RvbGVuX3NpemU7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZGVidWdmcy5jCmluZGV4IDI4Mjk0NDcwYWUzMS4uZmFkNDExNmY2MWM1IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwpAQCAtNTIyLDggKzUyMiw4IEBAIHN0YXRpYyBp bnQgaTkxNV9nZW1fb2JqZWN0X2luZm8oc3RydWN0IHNlcV9maWxlICptLCB2b2lkICpkYXRhKQog CXNlcV9wcmludGYobSwgIiV1IGRpc3BsYXkgb2JqZWN0cyAoZ2xvYmFsbHkgcGlubmVkKSwgJWxs dSBieXRlc1xuIiwKIAkJICAgZHB5X2NvdW50LCBkcHlfc2l6ZSk7CiAKLQlzZXFfcHJpbnRmKG0s ICIlbGx1IFslbGx1XSBndHQgdG90YWxcbiIsCi0JCSAgIGdndHQtPmJhc2UudG90YWwsIGdndHQt Pm1hcHBhYmxlX2VuZCk7CisJc2VxX3ByaW50ZihtLCAiJWxsdSBbJXBhXSBndHQgdG90YWxcbiIs CisJCSAgIGdndHQtPmJhc2UudG90YWwsICZnZ3R0LT5tYXBwYWJsZV9lbmQpOwogCXNlcV9wcmlu dGYobSwgIlN1cHBvcnRlZCBwYWdlIHNpemVzOiAlc1xuIiwKIAkJICAgc3RyaW5naWZ5X3BhZ2Vf c2l6ZXMoSU5URUxfSU5GTyhkZXZfcHJpdiktPnBhZ2Vfc2l6ZXMsCiAJCQkJCWJ1Ziwgc2l6ZW9m KGJ1ZikpKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDE4OTA1YmFkZDQ5NC4uNGU3NDlk ZjBjYWU4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTM5MTEsMTIgKzM5MTEsMTMgQEAg dm9pZCBpOTE1X2dlbV9zdG9sZW5fcmVtb3ZlX25vZGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LAogaW50IGk5MTVfZ2VtX2luaXRfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdik7CiB2b2lkIGk5MTVfZ2VtX2NsZWFudXBfc3RvbGVuKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYpOwogc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgotaTkxNV9nZW1fb2Jq ZWN0X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1MzIg c2l6ZSk7CitpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsCisJCQkgICAgICByZXNvdXJjZV9zaXplX3Qgc2l6ZSk7CiBzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX29iamVjdCAqCiBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbl9mb3Jf cHJlYWxsb2NhdGVkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKLQkJCQkJICAg ICAgIHUzMiBzdG9sZW5fb2Zmc2V0LAotCQkJCQkgICAgICAgdTMyIGd0dF9vZmZzZXQsCi0JCQkJ CSAgICAgICB1MzIgc2l6ZSk7CisJCQkJCSAgICAgICByZXNvdXJjZV9zaXplX3Qgc3RvbGVuX29m ZnNldCwKKwkJCQkJICAgICAgIHJlc291cmNlX3NpemVfdCBndHRfb2Zmc2V0LAorCQkJCQkgICAg ICAgcmVzb3VyY2Vfc2l6ZV90IHNpemUpOwogCiAvKiBpOTE1X2dlbV9pbnRlcm5hbC5jICovCiBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5j CmluZGV4IDhkMTk0ODBiNjVjNS4uMzIzNTdmYWUxZjU0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuYwpAQCAtMzM1Niw3ICszMzU2LDcgQEAgc3RhdGljIGludCBnZW42X2dtY2hfcHJv YmUoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCkKIAkgKiBhIGNvYXJzZSBzYW5pdHkgY2hlY2suCiAJ ICovCiAJaWYgKGdndHQtPm1hcHBhYmxlX2VuZCA8ICg2NDw8MjApIHx8IGdndHQtPm1hcHBhYmxl X2VuZCA+ICg1MTI8PDIwKSkgewotCQlEUk1fRVJST1IoIlVua25vd24gR01BRFIgc2l6ZSAoJWxs eClcbiIsIGdndHQtPm1hcHBhYmxlX2VuZCk7CisJCURSTV9FUlJPUigiVW5rbm93biBHTUFEUiBz aXplICglcGEpXG4iLCAmZ2d0dC0+bWFwcGFibGVfZW5kKTsKIAkJcmV0dXJuIC1FTlhJTzsKIAl9 CiAKQEAgLTM0NjksNyArMzQ2OSw3IEBAIGludCBpOTE1X2dndHRfcHJvYmVfaHcoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCSAqLwogCWlmIChIQVNfR1VDKGRldl9wcml2KSAm JiBpOTE1X21vZHBhcmFtcy5lbmFibGVfZ3VjX2xvYWRpbmcpIHsKIAkJZ2d0dC0+YmFzZS50b3Rh bCA9IG1pbl90KHU2NCwgZ2d0dC0+YmFzZS50b3RhbCwgR1VDX0dHVFRfVE9QKTsKLQkJZ2d0dC0+ bWFwcGFibGVfZW5kID0gbWluKGdndHQtPm1hcHBhYmxlX2VuZCwgZ2d0dC0+YmFzZS50b3RhbCk7 CisJCWdndHQtPm1hcHBhYmxlX2VuZCA9IG1pbl90KHU2NCwgZ2d0dC0+bWFwcGFibGVfZW5kLCBn Z3R0LT5iYXNlLnRvdGFsKTsKIAl9CiAKIAlpZiAoKGdndHQtPmJhc2UudG90YWwgLSAxKSA+PiAz MikgewpAQCAtMzQ3NywxMyArMzQ3NywxMyBAQCBpbnQgaTkxNV9nZ3R0X3Byb2JlX2h3KHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAkJCSAgIiBvZiBhZGRyZXNzIHNwYWNlISBG b3VuZCAlbGxkTSFcbiIsCiAJCQkgIGdndHQtPmJhc2UudG90YWwgPj4gMjApOwogCQlnZ3R0LT5i YXNlLnRvdGFsID0gMVVMTCA8PCAzMjsKLQkJZ2d0dC0+bWFwcGFibGVfZW5kID0gbWluKGdndHQt Pm1hcHBhYmxlX2VuZCwgZ2d0dC0+YmFzZS50b3RhbCk7CisJCWdndHQtPm1hcHBhYmxlX2VuZCA9 IG1pbl90KHU2NCwgZ2d0dC0+bWFwcGFibGVfZW5kLCBnZ3R0LT5iYXNlLnRvdGFsKTsKIAl9CiAK IAlpZiAoZ2d0dC0+bWFwcGFibGVfZW5kID4gZ2d0dC0+YmFzZS50b3RhbCkgewogCQlEUk1fRVJS T1IoIm1hcHBhYmxlIGFwZXJ0dXJlIGV4dGVuZHMgcGFzdCBlbmQgb2YgR0dUVCwiCi0JCQkgICIg YXBlcnR1cmU9JWxseCwgdG90YWw9JWxseFxuIiwKLQkJCSAgZ2d0dC0+bWFwcGFibGVfZW5kLCBn Z3R0LT5iYXNlLnRvdGFsKTsKKwkJCSAgIiBhcGVydHVyZT0lcGEsIHRvdGFsPSVsbHhcbiIsCisJ CQkgICZnZ3R0LT5tYXBwYWJsZV9lbmQsIGdndHQtPmJhc2UudG90YWwpOwogCQlnZ3R0LT5tYXBw YWJsZV9lbmQgPSBnZ3R0LT5iYXNlLnRvdGFsOwogCX0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9ndHQuaAppbmRleCAzMmZiZTFkNTk0NDIuLjI1YjUyNDA0OGNiMiAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fZ3R0LmgKQEAgLTM3MSw3ICszNzEsNyBAQCBzdHJ1Y3QgaTkxNV9nZ3R0IHsK IAogCXN0cnVjdCBpb19tYXBwaW5nIGlvbWFwOwkvKiBNYXBwaW5nIHRvIG91ciBDUFUgbWFwcGFi bGUgcmVnaW9uICovCiAJc3RydWN0IHJlc291cmNlIGdtYWRyOyAgICAgICAgICAvKiBHTUFEUiBy ZXNvdXJjZSAqLwotCXU2NCBtYXBwYWJsZV9lbmQ7CQkvKiBFbmQgb2Zmc2V0IHRoYXQgd2UgY2Fu IENQVSBtYXAgKi8KKwlyZXNvdXJjZV9zaXplX3QgbWFwcGFibGVfZW5kOwkvKiBFbmQgb2Zmc2V0 IHRoYXQgd2UgY2FuIENQVSBtYXAgKi8KIAogCS8qIFN0b2xlbiBtZW1vcnkgaXMgc2VnbWVudGVk IGluIGhhcmR3YXJlIHdpdGggZGlmZmVyZW50IHBvcnRpb25zCiAJICogb2ZmbGltaXRzIHRvIGNl cnRhaW4gZnVuY3Rpb25zLgpAQCAtMzgxLDggKzM4MSw4IEBAIHN0cnVjdCBpOTE1X2dndHQgewog CSAqIGF2b2lkIHRoZSBmaXJzdCBwYWdlISBUaGUgdXBwZXIgZW5kIG9mIHN0b2xlbiBtZW1vcnkg aXMgcmVzZXJ2ZWQgZm9yCiAJICogaGFyZHdhcmUgZnVuY3Rpb25zIGFuZCBzaW1pbGFybHkgcmVt b3ZlZCBmcm9tIHRoZSBhY2Nlc3NpYmxlIHJhbmdlLgogCSAqLwotCXUzMiBzdG9sZW5fc2l6ZTsJ CS8qIFRvdGFsIHNpemUgb2Ygc3RvbGVuIG1lbW9yeSAqLwotCXUzMiBzdG9sZW5fdXNhYmxlX3Np emU7CS8qIFRvdGFsIHNpemUgbWludXMgcmVzZXJ2ZWQgcmFuZ2VzICovCisJcmVzb3VyY2Vfc2l6 ZV90IHN0b2xlbl9zaXplOwkJLyogVG90YWwgc2l6ZSBvZiBzdG9sZW4gbWVtb3J5ICovCisJcmVz b3VyY2Vfc2l6ZV90IHN0b2xlbl91c2FibGVfc2l6ZTsJLyogVG90YWwgc2l6ZSBtaW51cyByZXNl cnZlZCByYW5nZXMgKi8KIAogCS8qKiAiR3JhcGhpY3MgU3RvbGVuIE1lbW9yeSIgaG9sZHMgdGhl IGdsb2JhbCBQVEVzICovCiAJdm9pZCBfX2lvbWVtICpnc207CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX3N0b2xlbi5jCmluZGV4IDZlMjU1MGZmNzUwZi4uOTFjMTEyN2FmODcyIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYwpAQCAtODAsMTEgKzgwLDkgQEAgc3RhdGlj IGludCBpOTE1X2FkanVzdF9zdG9sZW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAogCQkJICAgICAgc3RydWN0IHJlc291cmNlICpkc20pCiB7CiAJc3RydWN0IGk5MTVfZ2d0dCAq Z2d0dCA9ICZkZXZfcHJpdi0+Z2d0dDsKLQlkbWFfYWRkcl90IGJhc2UgPSBkc20tPnN0YXJ0Owor CXJlc291cmNlX3NpemVfdCBiYXNlID0gZHNtLT5zdGFydDsKIAlzdHJ1Y3QgcmVzb3VyY2UgKnI7 CiAKLQlHRU1fQlVHX09OKG92ZXJmbG93c190eXBlKGludGVsX2dyYXBoaWNzX3N0b2xlbl9yZXMu c3RhcnQsIGJhc2UpKTsKLQogCWlmIChiYXNlID09IDAgfHwgYWRkX292ZXJmbG93cyhiYXNlLCBn Z3R0LT5zdG9sZW5fc2l6ZSkpCiAJCXJldHVybiAtRUlOVkFMOwogCkBAIC05Niw3ICs5NCw3IEBA IHN0YXRpYyBpbnQgaTkxNV9hZGp1c3Rfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiwKIAkJCURFRklORV9SRVNfTUVNKGJhc2UsIGdndHQtPnN0b2xlbl9zaXplKSwKIAkJ fTsKIAkJc3RydWN0IHJlc291cmNlIGdndHRfcmVzOwotCQl1NjQgZ2d0dF9zdGFydDsKKwkJcmVz b3VyY2Vfc2l6ZV90IGdndHRfc3RhcnQ7CiAKIAkJZ2d0dF9zdGFydCA9IEk5MTVfUkVBRChQR1RC TF9DVEwpOwogCQlpZiAoSVNfR0VONChkZXZfcHJpdikpCkBAIC0xNzUsMTMgKzE3MywxMyBAQCB2 b2lkIGk5MTVfZ2VtX2NsZWFudXBfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB9CiAK IHN0YXRpYyB2b2lkIGc0eF9nZXRfc3RvbGVuX3Jlc2VydmVkKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKLQkJCQkgICAgZG1hX2FkZHJfdCAqYmFzZSwgdTMyICpzaXplKQorCQkJ CSAgICByZXNvdXJjZV9zaXplX3QgKmJhc2UsIHJlc291cmNlX3NpemVfdCAqc2l6ZSkKIHsKIAlz dHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0ID0gJmRldl9wcml2LT5nZ3R0OwogCXVpbnQzMl90IHJlZ192 YWwgPSBJOTE1X1JFQUQoSVNfR000NShkZXZfcHJpdikgPwogCQkJCSAgICAgQ1RHX1NUT0xFTl9S RVNFUlZFRCA6CiAJCQkJICAgICBFTEtfU1RPTEVOX1JFU0VSVkVEKTsKLQlkbWFfYWRkcl90IHN0 b2xlbl90b3AgPSBkZXZfcHJpdi0+ZHNtLnN0YXJ0ICsgZ2d0dC0+c3RvbGVuX3NpemU7CisJcmVz b3VyY2Vfc2l6ZV90IHN0b2xlbl90b3AgPSBkZXZfcHJpdi0+ZHNtLnN0YXJ0ICsgZ2d0dC0+c3Rv bGVuX3NpemU7CiAKIAlpZiAoKHJlZ192YWwgJiBHNFhfU1RPTEVOX1JFU0VSVkVEX0VOQUJMRSkg PT0gMCkgewogCQkqYmFzZSA9IDA7CkBAIC0yMTAsNyArMjA4LDcgQEAgc3RhdGljIHZvaWQgZzR4 X2dldF9zdG9sZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAog fQogCiBzdGF0aWMgdm9pZCBnZW42X2dldF9zdG9sZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAotCQkJCSAgICAgZG1hX2FkZHJfdCAqYmFzZSwgdTMyICpzaXpl KQorCQkJCSAgICAgcmVzb3VyY2Vfc2l6ZV90ICpiYXNlLCByZXNvdXJjZV9zaXplX3QgKnNpemUp CiB7CiAJdWludDMyX3QgcmVnX3ZhbCA9IEk5MTVfUkVBRChHRU42X1NUT0xFTl9SRVNFUlZFRCk7 CiAKQEAgLTI0Miw3ICsyNDAsNyBAQCBzdGF0aWMgdm9pZCBnZW42X2dldF9zdG9sZW5fcmVzZXJ2 ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogfQogCiBzdGF0aWMgdm9pZCBn ZW43X2dldF9zdG9sZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAotCQkJCSAgICAgZG1hX2FkZHJfdCAqYmFzZSwgdTMyICpzaXplKQorCQkJCSAgICAgcmVzb3Vy Y2Vfc2l6ZV90ICpiYXNlLCByZXNvdXJjZV9zaXplX3QgKnNpemUpCiB7CiAJdWludDMyX3QgcmVn X3ZhbCA9IEk5MTVfUkVBRChHRU42X1NUT0xFTl9SRVNFUlZFRCk7CiAKQEAgLTI2OCw3ICsyNjYs NyBAQCBzdGF0aWMgdm9pZCBnZW43X2dldF9zdG9sZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAogfQogCiBzdGF0aWMgdm9pZCBjaHZfZ2V0X3N0b2xlbl9yZXNl cnZlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCi0JCQkJICAgIGRtYV9hZGRy X3QgKmJhc2UsIHUzMiAqc2l6ZSkKKwkJCQkgICAgcmVzb3VyY2Vfc2l6ZV90ICpiYXNlLCByZXNv dXJjZV9zaXplX3QgKnNpemUpCiB7CiAJdWludDMyX3QgcmVnX3ZhbCA9IEk5MTVfUkVBRChHRU42 X1NUT0xFTl9SRVNFUlZFRCk7CiAKQEAgLTMwMCwxMSArMjk4LDExIEBAIHN0YXRpYyB2b2lkIGNo dl9nZXRfc3RvbGVuX3Jlc2VydmVkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwK IH0KIAogc3RhdGljIHZvaWQgYmR3X2dldF9zdG9sZW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAotCQkJCSAgICBkbWFfYWRkcl90ICpiYXNlLCB1MzIgKnNpemUp CisJCQkJICAgIHJlc291cmNlX3NpemVfdCAqYmFzZSwgcmVzb3VyY2Vfc2l6ZV90ICpzaXplKQog ewogCXN0cnVjdCBpOTE1X2dndHQgKmdndHQgPSAmZGV2X3ByaXYtPmdndHQ7CiAJdWludDMyX3Qg cmVnX3ZhbCA9IEk5MTVfUkVBRChHRU42X1NUT0xFTl9SRVNFUlZFRCk7Ci0JZG1hX2FkZHJfdCBz dG9sZW5fdG9wOworCXJlc291cmNlX3NpemVfdCBzdG9sZW5fdG9wOwogCiAJaWYgKChyZWdfdmFs ICYgR0VONl9TVE9MRU5fUkVTRVJWRURfRU5BQkxFKSA9PSAwKSB7CiAJCSpiYXNlID0gMDsKQEAg LTMyOSw5ICszMjcsOSBAQCBzdGF0aWMgdm9pZCBiZHdfZ2V0X3N0b2xlbl9yZXNlcnZlZChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiBpbnQgaTkxNV9nZW1faW5pdF9zdG9sZW4o c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCXN0cnVjdCBpOTE1X2dndHQg KmdndHQgPSAmZGV2X3ByaXYtPmdndHQ7Ci0JZG1hX2FkZHJfdCByZXNlcnZlZF9iYXNlLCBzdG9s ZW5fdG9wOwotCXUzMiByZXNlcnZlZF90b3RhbCwgcmVzZXJ2ZWRfc2l6ZTsKLQl1MzIgc3RvbGVu X3VzYWJsZV9zdGFydDsKKwlyZXNvdXJjZV9zaXplX3QgcmVzZXJ2ZWRfYmFzZSwgc3RvbGVuX3Rv cDsKKwlyZXNvdXJjZV9zaXplX3QgcmVzZXJ2ZWRfdG90YWwsIHJlc2VydmVkX3NpemU7CisJcmVz b3VyY2Vfc2l6ZV90IHN0b2xlbl91c2FibGVfc3RhcnQ7CiAKIAltdXRleF9pbml0KCZkZXZfcHJp di0+bW0uc3RvbGVuX2xvY2spOwogCkBAIC00MTAsOSArNDA4LDkgQEAgaW50IGk5MTVfZ2VtX2lu aXRfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAkgKiBtZW1vcnks IHNvIGp1c3QgY29uc2lkZXIgdGhlIHN0YXJ0LiAqLwogCXJlc2VydmVkX3RvdGFsID0gc3RvbGVu X3RvcCAtIHJlc2VydmVkX2Jhc2U7CiAKLQlEUk1fREVCVUdfS01TKCJNZW1vcnkgcmVzZXJ2ZWQg Zm9yIGdyYXBoaWNzIGRldmljZTogJXVLLCB1c2FibGU6ICV1S1xuIiwKLQkJICAgICAgZ2d0dC0+ c3RvbGVuX3NpemUgPj4gMTAsCi0JCSAgICAgIChnZ3R0LT5zdG9sZW5fc2l6ZSAtIHJlc2VydmVk X3RvdGFsKSA+PiAxMCk7CisJRFJNX0RFQlVHX0tNUygiTWVtb3J5IHJlc2VydmVkIGZvciBncmFw aGljcyBkZXZpY2U6ICVsbHVLLCB1c2FibGU6ICVsbHVLXG4iLAorCQkgICAgICAodTY0KWdndHQt PnN0b2xlbl9zaXplID4+IDEwLAorCQkgICAgICAodTY0KShnZ3R0LT5zdG9sZW5fc2l6ZSAtIHJl c2VydmVkX3RvdGFsKSA+PiAxMCk7CiAKIAlzdG9sZW5fdXNhYmxlX3N0YXJ0ID0gMDsKIAkvKiBX YVNraXBTdG9sZW5NZW1vcnlGaXJzdFBhZ2U6YmR3KyAqLwpAQCAtNDMxLDcgKzQyOSw3IEBAIGlu dCBpOTE1X2dlbV9pbml0X3N0b2xlbihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYp CiAKIHN0YXRpYyBzdHJ1Y3Qgc2dfdGFibGUgKgogaTkxNV9wYWdlc19jcmVhdGVfZm9yX3N0b2xl bihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAotCQkJICAgICB1MzIgb2Zmc2V0LCB1MzIgc2l6ZSkK KwkJCSAgICAgcmVzb3VyY2Vfc2l6ZV90IG9mZnNldCwgcmVzb3VyY2Vfc2l6ZV90IHNpemUpCiB7 CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwogCXN0 cnVjdCBzZ190YWJsZSAqc3Q7CkBAIC01MzUsNyArNTMzLDggQEAgX2k5MTVfZ2VtX29iamVjdF9j cmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIH0KIAogc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgotaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW4o c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1MzIgc2l6ZSkKK2k5MTVfZ2VtX29i amVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKKwkJ CSAgICAgIHJlc291cmNlX3NpemVfdCBzaXplKQogewogCXN0cnVjdCBkcm1faTkxNV9nZW1fb2Jq ZWN0ICpvYmo7CiAJc3RydWN0IGRybV9tbV9ub2RlICpzdG9sZW47CkBAIC01NjgsOSArNTY3LDkg QEAgaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LCB1MzIgc2l6ZSkKIAogc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgogaTkx NV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW5fZm9yX3ByZWFsbG9jYXRlZChzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCi0JCQkJCSAgICAgICB1MzIgc3RvbGVuX29mZnNldCwKLQkJ CQkJICAgICAgIHUzMiBndHRfb2Zmc2V0LAotCQkJCQkgICAgICAgdTMyIHNpemUpCisJCQkJCSAg ICAgICByZXNvdXJjZV9zaXplX3Qgc3RvbGVuX29mZnNldCwKKwkJCQkJICAgICAgIHJlc291cmNl X3NpemVfdCBndHRfb2Zmc2V0LAorCQkJCQkgICAgICAgcmVzb3VyY2Vfc2l6ZV90IHNpemUpCiB7 CiAJc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCA9ICZkZXZfcHJpdi0+Z2d0dDsKIAlzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqOwpAQCAtNTgzLDggKzU4Miw4IEBAIGk5MTVfZ2VtX29iamVj dF9jcmVhdGVfc3RvbGVuX2Zvcl9wcmVhbGxvY2F0ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2CiAKIAlsb2NrZGVwX2Fzc2VydF9oZWxkKCZkZXZfcHJpdi0+ZHJtLnN0cnVjdF9t dXRleCk7CiAKLQlEUk1fREVCVUdfS01TKCJjcmVhdGluZyBwcmVhbGxvY2F0ZWQgc3RvbGVuIG9i amVjdDogc3RvbGVuX29mZnNldD0leCwgZ3R0X29mZnNldD0leCwgc2l6ZT0leFxuIiwKLQkJCXN0 b2xlbl9vZmZzZXQsIGd0dF9vZmZzZXQsIHNpemUpOworCURSTV9ERUJVR19LTVMoImNyZWF0aW5n IHByZWFsbG9jYXRlZCBzdG9sZW4gb2JqZWN0OiBzdG9sZW5fb2Zmc2V0PSVwYSwgZ3R0X29mZnNl dD0lcGEsIHNpemU9JXBhXG4iLAorCQkJJnN0b2xlbl9vZmZzZXQsICZndHRfb2Zmc2V0LCAmc2l6 ZSk7CiAKIAkvKiBLSVNTIGFuZCBleHBlY3QgZXZlcnl0aGluZyB0byBiZSBwYWdlLWFsaWduZWQg Ki8KIAlpZiAoV0FSTl9PTihzaXplID09IDApIHx8CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwppbmRl eCAwMTZmZWVjYWZlOGQuLjU2OWVlZjA4ODYzZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCkBA IC03MDM0LDkgKzcwMzQsOSBAQCBzdGF0aWMgdm9pZCBjaGVycnl2aWV3X2NoZWNrX3BjdHgoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogc3RhdGljIHZvaWQgY2hlcnJ5dmlld19z ZXR1cF9wY3R4KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKIAlzdHJ1Y3Qg aTkxNV9nZ3R0ICpnZ3R0ID0gJmRldl9wcml2LT5nZ3R0OwotCXVuc2lnbmVkIGxvbmcgcGN0eF9w YWRkciwgcGFkZHI7CisJcmVzb3VyY2Vfc2l6ZV90IHBjdHhfcGFkZHIsIHBhZGRyOworCXJlc291 cmNlX3NpemVfdCBwY3R4X3NpemUgPSAzMioxMDI0OwogCXUzMiBwY2JyOwotCWludCBwY3R4X3Np emUgPSAzMioxMDI0OwogCiAJcGNiciA9IEk5MTVfUkVBRChWTFZfUENCUik7CiAJaWYgKChwY2Jy ID4+IFZMVl9QQ0JSX0FERFJfU0hJRlQpID09IDApIHsKQEAgLTcwNTksMTQgKzcwNTksMTQgQEAg c3RhdGljIHZvaWQgY2hlcnJ5dmlld19zZXR1cF9wY3R4KHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdikKIHN0YXRpYyB2b2lkIHZhbGxleXZpZXdfc2V0dXBfcGN0eChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Qg KnBjdHg7Ci0JdW5zaWduZWQgbG9uZyBwY3R4X3BhZGRyOworCXJlc291cmNlX3NpemVfdCBwY3R4 X3BhZGRyOworCXJlc291cmNlX3NpemVfdCBwY3R4X3NpemUgPSAyNCoxMDI0OwogCXUzMiBwY2Jy OwotCWludCBwY3R4X3NpemUgPSAyNCoxMDI0OwogCiAJcGNiciA9IEk5MTVfUkVBRChWTFZfUENC Uik7CiAJaWYgKHBjYnIpIHsKIAkJLyogQklPUyBzZXQgaXQgdXAgYWxyZWFkeSwgZ3JhYiB0aGUg cHJlLWFsbG9jJ2Qgc3BhY2UgKi8KLQkJaW50IHBjYnJfb2Zmc2V0OworCQlyZXNvdXJjZV9zaXpl X3QgcGNicl9vZmZzZXQ7CiAKIAkJcGNicl9vZmZzZXQgPSAocGNiciAmICh+NDA5NSkpIC0gZGV2 X3ByaXYtPmRzbS5zdGFydDsKIAkJcGN0eCA9IGk5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVu X2Zvcl9wcmVhbGxvY2F0ZWQoZGV2X3ByaXYsCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9pbnRl bC1ndHQuaCBiL2luY2x1ZGUvZHJtL2ludGVsLWd0dC5oCmluZGV4IGM1ZGI3OTc1YzY0MC4uNTU2 MDk5Y2UxYzA2IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9pbnRlbC1ndHQuaAorKysgYi9pbmNs dWRlL2RybS9pbnRlbC1ndHQuaApAQCAtNSw5ICs1LDkgQEAKICNkZWZpbmUJX0RSTV9JTlRFTF9H VFRfSAogCiB2b2lkIGludGVsX2d0dF9nZXQodTY0ICpndHRfdG90YWwsCi0JCSAgIHUzMiAqc3Rv bGVuX3NpemUsCisJCSAgIHJlc291cmNlX3NpemVfdCAqc3RvbGVuX3NpemUsCiAJCSAgIHBoeXNf YWRkcl90ICptYXBwYWJsZV9iYXNlLAotCQkgICB1NjQgKm1hcHBhYmxlX2VuZCk7CisJCSAgIHJl c291cmNlX3NpemVfdCAqbWFwcGFibGVfZW5kKTsKIAogaW50IGludGVsX2dtY2hfcHJvYmUoc3Ry dWN0IHBjaV9kZXYgKmJyaWRnZV9wZGV2LCBzdHJ1Y3QgcGNpX2RldiAqZ3B1X3BkZXYsCiAJCSAg ICAgc3RydWN0IGFncF9icmlkZ2VfZGF0YSAqYnJpZGdlKTsKLS0gCjIuMTQuMwoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==