From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tom St Denis Subject: [PATCH] drm/amd/amdgpu: Update read_sensor calls to have size parameter (v2) Date: Fri, 10 Feb 2017 07:17:49 -0500 Message-ID: <20170210121749.2545-2-tom.stdenis@amd.com> References: <20170210121749.2545-1-tom.stdenis@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170210121749.2545-1-tom.stdenis-5C7GfCeVMHo@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Tom St Denis VGhpcyB1cGRhdGUgYWxsb3dzIHNlbnNvcnMgdG8gcmV0dXJuIG1vcmUgdGhhbiAxIHZhbHVlIGFu ZAppbmRpY2F0ZXMgdG8gdGhlIGNhbGxlciBob3cgbWFueSBieXRlcyBhcmUgd3JpdHRlbi4KClRo ZSBkZWJ1Z2ZzIGludGVyZmFjZSBoYXMgYmVlbiB1cGRhdGVkIHRvIGhhbmRsZSByZWFkaW5nIGFs bApvZiB0aGUgdmFsdWVzLiAgU2ltcGx5IHNlZWsgdG8gdGhlIGVudW0gdmFsdWUgKG11bHRpcGxp ZWQKYnkgNCkgYW5kIHRoZW4gcmVhZCBhcyBtYW55IGJ5dGVzIGFzIHRoZSBzZW5zb3IgcHJvdmlk ZXMuCgoodjIpOiAgRG9uJ3Qgc2V0IHNpemUgdG8gNCBiZWZvcmUgcmVhZGluZyBHUFVfUE9XRVIK ClNpZ25lZC1vZmYtYnk6IFRvbSBTdCBEZW5pcyA8dG9tLnN0ZGVuaXNAYW1kLmNvbT4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMgICAgICAgIHwgMjYgKysr KysrKysrKysrKysrLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZHBt LmggICAgICAgICAgIHwgIDQgKystLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1 X3BtLmMgICAgICAgICAgICB8IDI4ICsrKysrKysrKysrKystLS0tLS0tLS0tCiBkcml2ZXJzL2dw dS9kcm0vYW1kL3Bvd2VycGxheS9hbWRfcG93ZXJwbGF5LmMgICAgIHwgIDUgKystLQogZHJpdmVy cy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdtZ3IvY3pfaHdtZ3IuYyAgICB8ICA4ICsrKysrKy0K IGRyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3NtdTdfaHdtZ3IuYyAgfCAxNiAr KysrKysrKysrKystCiBkcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9pbmMvYW1kX3Bvd2Vy cGxheS5oIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2luYy9od21nci5o ICAgICAgICAgfCAgMiArLQogOCBmaWxlcyBjaGFuZ2VkLCA2NCBpbnNlcnRpb25zKCspLCAyNyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHVfZGV2aWNlLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMK aW5kZXggMGQzM2JjOTRhZmI1Li43OGQxZjQwNDU1MzkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kZXZpY2UuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfZGV2aWNlLmMKQEAgLTMxOTIsMjQgKzMxOTIsMzYgQEAgc3RhdGljIHNz aXplX3QgYW1kZ3B1X2RlYnVnZnNfc2Vuc29yX3JlYWQoc3RydWN0IGZpbGUgKmYsIGNoYXIgX191 c2VyICpidWYsCiAJCQkJCXNpemVfdCBzaXplLCBsb2ZmX3QgKnBvcykKIHsKIAlzdHJ1Y3QgYW1k Z3B1X2RldmljZSAqYWRldiA9IGYtPmZfaW5vZGUtPmlfcHJpdmF0ZTsKLQlpbnQgaWR4LCByOwot CWludDMyX3QgdmFsdWU7CisJaW50IGlkeCwgeCwgb3V0c2l6ZSwgciwgdmFsdWVzaXplOworCXVp bnQzMl90IHZhbHVlc1sxNl07CiAKLQlpZiAoc2l6ZSAhPSA0IHx8ICpwb3MgJiAweDMpCisJaWYg KHNpemUgJiAzIHx8ICpwb3MgJiAweDMpCiAJCXJldHVybiAtRUlOVkFMOwogCiAJLyogY29udmVy dCBvZmZzZXQgdG8gc2Vuc29yIG51bWJlciAqLwogCWlkeCA9ICpwb3MgPj4gMjsKIAorCXZhbHVl c2l6ZSA9IHNpemVvZih2YWx1ZXMpOwogCWlmIChhZGV2LT5wb3dlcnBsYXkucHBfZnVuY3MgJiYg YWRldi0+cG93ZXJwbGF5LnBwX2Z1bmNzLT5yZWFkX3NlbnNvcikKLQkJciA9IGFkZXYtPnBvd2Vy cGxheS5wcF9mdW5jcy0+cmVhZF9zZW5zb3IoYWRldi0+cG93ZXJwbGF5LnBwX2hhbmRsZSwgaWR4 LCAmdmFsdWUpOworCQlyID0gYWRldi0+cG93ZXJwbGF5LnBwX2Z1bmNzLT5yZWFkX3NlbnNvcihh ZGV2LT5wb3dlcnBsYXkucHBfaGFuZGxlLCBpZHgsICZ2YWx1ZXNbMF0sICZ2YWx1ZXNpemUpOwog CWVsc2UKIAkJcmV0dXJuIC1FSU5WQUw7CiAKLQlpZiAoIXIpCi0JCXIgPSBwdXRfdXNlcih2YWx1 ZSwgKGludDMyX3QgKilidWYpOworCWlmIChzaXplID4gdmFsdWVzaXplKQorCQlyZXR1cm4gLUVJ TlZBTDsKKworCW91dHNpemUgPSAwOworCXggPSAwOworCWlmICghcikgeworCQl3aGlsZSAoc2l6 ZSkgeworCQkJciA9IHB1dF91c2VyKHZhbHVlc1t4KytdLCAoaW50MzJfdCAqKWJ1Zik7CisJCQli dWYgKz0gNDsKKwkJCXNpemUgLT0gNDsKKwkJCW91dHNpemUgKz0gNDsKKwkJfQorCX0KIAotCXJl dHVybiAhciA/IDQgOiByOworCXJldHVybiAhciA/IG91dHNpemUgOiByOwogfQogCiBzdGF0aWMg c3NpemVfdCBhbWRncHVfZGVidWdmc193YXZlX3JlYWQoc3RydWN0IGZpbGUgKmYsIGNoYXIgX191 c2VyICpidWYsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVf ZHBtLmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZHBtLmgKaW5kZXggMTRm ZWY1Y2YzNTY2Li45ODY5OGRjZjE1YzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV9kcG0uaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHVfZHBtLmgKQEAgLTI5MCw5ICsyOTAsOSBAQCBzdHJ1Y3QgYW1kZ3B1X2RwbV9mdW5jcyB7CiAj ZGVmaW5lIGFtZGdwdV9kcG1fdmJsYW5rX3Rvb19zaG9ydChhZGV2KSAoYWRldiktPnBtLmZ1bmNz LT52YmxhbmtfdG9vX3Nob3J0KChhZGV2KSkKICNkZWZpbmUgYW1kZ3B1X2RwbV9lbmFibGVfYmFw bShhZGV2LCBlKSAoYWRldiktPnBtLmZ1bmNzLT5lbmFibGVfYmFwbSgoYWRldiksIChlKSkKIAot I2RlZmluZSBhbWRncHVfZHBtX3JlYWRfc2Vuc29yKGFkZXYsIGlkeCwgdmFsdWUpIFwKKyNkZWZp bmUgYW1kZ3B1X2RwbV9yZWFkX3NlbnNvcihhZGV2LCBpZHgsIHZhbHVlLCBzaXplKSBcCiAJKChh ZGV2KS0+cHBfZW5hYmxlZCA/IFwKLQkJKGFkZXYpLT5wb3dlcnBsYXkucHBfZnVuY3MtPnJlYWRf c2Vuc29yKGFkZXYtPnBvd2VycGxheS5wcF9oYW5kbGUsIChpZHgpLCAodmFsdWUpKSA6IFwKKwkJ KGFkZXYpLT5wb3dlcnBsYXkucHBfZnVuY3MtPnJlYWRfc2Vuc29yKGFkZXYtPnBvd2VycGxheS5w cF9oYW5kbGUsIChpZHgpLCAodmFsdWUpLCAoc2l6ZSkpIDogXAogCQktRUlOVkFMKQogCiAjZGVm aW5lIGFtZGdwdV9kcG1fZ2V0X3RlbXBlcmF0dXJlKGFkZXYpIFwKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X3BtLmMKaW5kZXggMzkyYmM3MTZlNGJkLi5lMjdkMmVmNzUzMWIgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5jCkBAIC0xNTMyLDYgKzE1MzIsNyBAQCBz dGF0aWMgaW50IGFtZGdwdV9kZWJ1Z2ZzX3BtX2luZm9fcHAoc3RydWN0IHNlcV9maWxlICptLCBz dHJ1Y3QgYW1kZ3B1X2RldmljZSAqYQogewogCXVpbnQzMl90IHZhbHVlOwogCXN0cnVjdCBwcF9n cHVfcG93ZXIgcXVlcnkgPSB7MH07CisJaW50IHNpemU7CiAKIAkvKiBzYW5pdHkgY2hlY2sgUFAg aXMgZW5hYmxlZCAqLwogCWlmICghKGFkZXYtPnBvd2VycGxheS5wcF9mdW5jcyAmJgpAQCAtMTUz OSwxNiArMTU0MCwxOCBAQCBzdGF0aWMgaW50IGFtZGdwdV9kZWJ1Z2ZzX3BtX2luZm9fcHAoc3Ry dWN0IHNlcV9maWxlICptLCBzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYQogCSAgICAgIHJldHVybiAt RUlOVkFMOwogCiAJLyogR1BVIENsb2NrcyAqLworCXNpemUgPSBzaXplb2YodmFsdWUpOwogCXNl cV9wcmludGYobSwgIkdGWCBDbG9ja3MgYW5kIFBvd2VyOlxuIik7Ci0JaWYgKCFhbWRncHVfZHBt X3JlYWRfc2Vuc29yKGFkZXYsIEFNREdQVV9QUF9TRU5TT1JfR0ZYX01DTEssICh2b2lkICopJnZh bHVlKSkKKwlpZiAoIWFtZGdwdV9kcG1fcmVhZF9zZW5zb3IoYWRldiwgQU1ER1BVX1BQX1NFTlNP Ul9HRlhfTUNMSywgKHZvaWQgKikmdmFsdWUsICZzaXplKSkKIAkJc2VxX3ByaW50ZihtLCAiXHQl dSBNSHogKE1DTEspXG4iLCB2YWx1ZS8xMDApOwotCWlmICghYW1kZ3B1X2RwbV9yZWFkX3NlbnNv cihhZGV2LCBBTURHUFVfUFBfU0VOU09SX0dGWF9TQ0xLLCAodm9pZCAqKSZ2YWx1ZSkpCisJaWYg KCFhbWRncHVfZHBtX3JlYWRfc2Vuc29yKGFkZXYsIEFNREdQVV9QUF9TRU5TT1JfR0ZYX1NDTEss ICh2b2lkICopJnZhbHVlLCAmc2l6ZSkpCiAJCXNlcV9wcmludGYobSwgIlx0JXUgTUh6IChTQ0xL KVxuIiwgdmFsdWUvMTAwKTsKLQlpZiAoIWFtZGdwdV9kcG1fcmVhZF9zZW5zb3IoYWRldiwgQU1E R1BVX1BQX1NFTlNPUl9WRERHRlgsICh2b2lkICopJnZhbHVlKSkKKwlpZiAoIWFtZGdwdV9kcG1f cmVhZF9zZW5zb3IoYWRldiwgQU1ER1BVX1BQX1NFTlNPUl9WRERHRlgsICh2b2lkICopJnZhbHVl LCAmc2l6ZSkpCiAJCXNlcV9wcmludGYobSwgIlx0JXUgbVYgKFZEREdGWClcbiIsIHZhbHVlKTsK LQlpZiAoIWFtZGdwdV9kcG1fcmVhZF9zZW5zb3IoYWRldiwgQU1ER1BVX1BQX1NFTlNPUl9WRERO QiwgKHZvaWQgKikmdmFsdWUpKQorCWlmICghYW1kZ3B1X2RwbV9yZWFkX3NlbnNvcihhZGV2LCBB TURHUFVfUFBfU0VOU09SX1ZERE5CLCAodm9pZCAqKSZ2YWx1ZSwgJnNpemUpKQogCQlzZXFfcHJp bnRmKG0sICJcdCV1IG1WIChWREROQilcbiIsIHZhbHVlKTsKLQlpZiAoIWFtZGdwdV9kcG1fcmVh ZF9zZW5zb3IoYWRldiwgQU1ER1BVX1BQX1NFTlNPUl9HUFVfUE9XRVIsICh2b2lkICopJnF1ZXJ5 KSkgeworCXNpemUgPSBzaXplb2YocXVlcnkpOworCWlmICghYW1kZ3B1X2RwbV9yZWFkX3NlbnNv cihhZGV2LCBBTURHUFVfUFBfU0VOU09SX0dQVV9QT1dFUiwgKHZvaWQgKikmcXVlcnksICZzaXpl KSkgewogCQlzZXFfcHJpbnRmKG0sICJcdCV1LiV1IFcgKFZEREMpXG4iLCBxdWVyeS52ZGRjX3Bv d2VyID4+IDgsCiAJCQkJcXVlcnkudmRkY19wb3dlciAmIDB4ZmYpOwogCQlzZXFfcHJpbnRmKG0s ICJcdCV1LiV1IFcgKFZERENJKVxuIiwgcXVlcnkudmRkY2lfcG93ZXIgPj4gOCwKQEAgLTE1NTgs MzggKzE1NjEsMzkgQEAgc3RhdGljIGludCBhbWRncHVfZGVidWdmc19wbV9pbmZvX3BwKHN0cnVj dCBzZXFfZmlsZSAqbSwgc3RydWN0IGFtZGdwdV9kZXZpY2UgKmEKIAkJc2VxX3ByaW50ZihtLCAi XHQldS4ldSBXIChhdmVyYWdlIEdQVSlcbiIsIHF1ZXJ5LmF2ZXJhZ2VfZ3B1X3Bvd2VyID4+IDgs CiAJCQkJcXVlcnkuYXZlcmFnZV9ncHVfcG93ZXIgJiAweGZmKTsKIAl9CisJc2l6ZSA9IHNpemVv Zih2YWx1ZSk7CiAJc2VxX3ByaW50ZihtLCAiXG4iKTsKIAogCS8qIEdQVSBUZW1wICovCi0JaWYg KCFhbWRncHVfZHBtX3JlYWRfc2Vuc29yKGFkZXYsIEFNREdQVV9QUF9TRU5TT1JfR1BVX1RFTVAs ICh2b2lkICopJnZhbHVlKSkKKwlpZiAoIWFtZGdwdV9kcG1fcmVhZF9zZW5zb3IoYWRldiwgQU1E R1BVX1BQX1NFTlNPUl9HUFVfVEVNUCwgKHZvaWQgKikmdmFsdWUsICZzaXplKSkKIAkJc2VxX3By aW50ZihtLCAiR1BVIFRlbXBlcmF0dXJlOiAldSBDXG4iLCB2YWx1ZS8xMDAwKTsKIAogCS8qIEdQ VSBMb2FkICovCi0JaWYgKCFhbWRncHVfZHBtX3JlYWRfc2Vuc29yKGFkZXYsIEFNREdQVV9QUF9T RU5TT1JfR1BVX0xPQUQsICh2b2lkICopJnZhbHVlKSkKKwlpZiAoIWFtZGdwdV9kcG1fcmVhZF9z ZW5zb3IoYWRldiwgQU1ER1BVX1BQX1NFTlNPUl9HUFVfTE9BRCwgKHZvaWQgKikmdmFsdWUsICZz aXplKSkKIAkJc2VxX3ByaW50ZihtLCAiR1BVIExvYWQ6ICV1ICUlXG4iLCB2YWx1ZSk7CiAJc2Vx X3ByaW50ZihtLCAiXG4iKTsKIAogCS8qIFVWRCBjbG9ja3MgKi8KLQlpZiAoIWFtZGdwdV9kcG1f cmVhZF9zZW5zb3IoYWRldiwgQU1ER1BVX1BQX1NFTlNPUl9VVkRfUE9XRVIsICh2b2lkICopJnZh bHVlKSkgeworCWlmICghYW1kZ3B1X2RwbV9yZWFkX3NlbnNvcihhZGV2LCBBTURHUFVfUFBfU0VO U09SX1VWRF9QT1dFUiwgKHZvaWQgKikmdmFsdWUsICZzaXplKSkgewogCQlpZiAoIXZhbHVlKSB7 CiAJCQlzZXFfcHJpbnRmKG0sICJVVkQ6IERpc2FibGVkXG4iKTsKIAkJfSBlbHNlIHsKIAkJCXNl cV9wcmludGYobSwgIlVWRDogRW5hYmxlZFxuIik7Ci0JCQlpZiAoIWFtZGdwdV9kcG1fcmVhZF9z ZW5zb3IoYWRldiwgQU1ER1BVX1BQX1NFTlNPUl9VVkRfRENMSywgKHZvaWQgKikmdmFsdWUpKQor CQkJaWYgKCFhbWRncHVfZHBtX3JlYWRfc2Vuc29yKGFkZXYsIEFNREdQVV9QUF9TRU5TT1JfVVZE X0RDTEssICh2b2lkICopJnZhbHVlLCAmc2l6ZSkpCiAJCQkJc2VxX3ByaW50ZihtLCAiXHQldSBN SHogKERDTEspXG4iLCB2YWx1ZS8xMDApOwotCQkJaWYgKCFhbWRncHVfZHBtX3JlYWRfc2Vuc29y KGFkZXYsIEFNREdQVV9QUF9TRU5TT1JfVVZEX1ZDTEssICh2b2lkICopJnZhbHVlKSkKKwkJCWlm ICghYW1kZ3B1X2RwbV9yZWFkX3NlbnNvcihhZGV2LCBBTURHUFVfUFBfU0VOU09SX1VWRF9WQ0xL LCAodm9pZCAqKSZ2YWx1ZSwgJnNpemUpKQogCQkJCXNlcV9wcmludGYobSwgIlx0JXUgTUh6IChW Q0xLKVxuIiwgdmFsdWUvMTAwKTsKIAkJfQogCX0KIAlzZXFfcHJpbnRmKG0sICJcbiIpOwogCiAJ LyogVkNFIGNsb2NrcyAqLwotCWlmICghYW1kZ3B1X2RwbV9yZWFkX3NlbnNvcihhZGV2LCBBTURH UFVfUFBfU0VOU09SX1ZDRV9QT1dFUiwgKHZvaWQgKikmdmFsdWUpKSB7CisJaWYgKCFhbWRncHVf ZHBtX3JlYWRfc2Vuc29yKGFkZXYsIEFNREdQVV9QUF9TRU5TT1JfVkNFX1BPV0VSLCAodm9pZCAq KSZ2YWx1ZSwgJnNpemUpKSB7CiAJCWlmICghdmFsdWUpIHsKIAkJCXNlcV9wcmludGYobSwgIlZD RTogRGlzYWJsZWRcbiIpOwogCQl9IGVsc2UgewogCQkJc2VxX3ByaW50ZihtLCAiVkNFOiBFbmFi bGVkXG4iKTsKLQkJCWlmICghYW1kZ3B1X2RwbV9yZWFkX3NlbnNvcihhZGV2LCBBTURHUFVfUFBf U0VOU09SX1ZDRV9FQ0NMSywgKHZvaWQgKikmdmFsdWUpKQorCQkJaWYgKCFhbWRncHVfZHBtX3Jl YWRfc2Vuc29yKGFkZXYsIEFNREdQVV9QUF9TRU5TT1JfVkNFX0VDQ0xLLCAodm9pZCAqKSZ2YWx1 ZSwgJnNpemUpKQogCQkJCXNlcV9wcmludGYobSwgIlx0JXUgTUh6IChFQ0NMSylcbiIsIHZhbHVl LzEwMCk7CiAJCX0KIAl9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxh eS9hbWRfcG93ZXJwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9hbWRfcG93 ZXJwbGF5LmMKaW5kZXggODFlNjg1NmZmYTExLi5mZGU4ZmNkNDZiNTggMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2FtZF9wb3dlcnBsYXkuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vYW1kL3Bvd2VycGxheS9hbWRfcG93ZXJwbGF5LmMKQEAgLTg4MCw3ICs4ODAsOCBA QCBzdGF0aWMgaW50IHBwX2RwbV9zZXRfbWNsa19vZCh2b2lkICpoYW5kbGUsIHVpbnQzMl90IHZh bHVlKQogCXJldHVybiBod21nci0+aHdtZ3JfZnVuYy0+c2V0X21jbGtfb2QoaHdtZ3IsIHZhbHVl KTsKIH0KIAotc3RhdGljIGludCBwcF9kcG1fcmVhZF9zZW5zb3Iodm9pZCAqaGFuZGxlLCBpbnQg aWR4LCB2b2lkICp2YWx1ZSkKK3N0YXRpYyBpbnQgcHBfZHBtX3JlYWRfc2Vuc29yKHZvaWQgKmhh bmRsZSwgaW50IGlkeCwKKwkJCSAgICAgIHZvaWQgKnZhbHVlLCBpbnQgKnNpemUpCiB7CiAJc3Ry dWN0IHBwX2h3bWdyICpod21ncjsKIAlzdHJ1Y3QgcHBfaW5zdGFuY2UgKnBwX2hhbmRsZSA9IChz dHJ1Y3QgcHBfaW5zdGFuY2UgKiloYW5kbGU7CkBAIC04OTgsNyArODk5LDcgQEAgc3RhdGljIGlu dCBwcF9kcG1fcmVhZF9zZW5zb3Iodm9pZCAqaGFuZGxlLCBpbnQgaWR4LCB2b2lkICp2YWx1ZSkK IAkJcmV0dXJuIDA7CiAJfQogCi0JcmV0dXJuIGh3bWdyLT5od21ncl9mdW5jLT5yZWFkX3NlbnNv cihod21nciwgaWR4LCB2YWx1ZSk7CisJcmV0dXJuIGh3bWdyLT5od21ncl9mdW5jLT5yZWFkX3Nl bnNvcihod21nciwgaWR4LCB2YWx1ZSwgc2l6ZSk7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgYW1kX3Zj ZV9zdGF0ZSoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdy L2N6X2h3bWdyLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci9jel9od21n ci5jCmluZGV4IGVkYzMwMjlkZjc4NS4uN2FhNWNhODE1YTNhIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci9jel9od21nci5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL2N6X2h3bWdyLmMKQEAgLTE4MTMsNyArMTgxMyw4IEBA IHN0YXRpYyBpbnQgY3pfdGhlcm1hbF9nZXRfdGVtcGVyYXR1cmUoc3RydWN0IHBwX2h3bWdyICpo d21ncikKIAlyZXR1cm4gYWN0dWFsX3RlbXA7CiB9CiAKLXN0YXRpYyBpbnQgY3pfcmVhZF9zZW5z b3Ioc3RydWN0IHBwX2h3bWdyICpod21nciwgaW50IGlkeCwgdm9pZCAqdmFsdWUpCitzdGF0aWMg aW50IGN6X3JlYWRfc2Vuc29yKHN0cnVjdCBwcF9od21nciAqaHdtZ3IsIGludCBpZHgsCisJCQkg IHZvaWQgKnZhbHVlLCBpbnQgKnNpemUpCiB7CiAJc3RydWN0IGN6X2h3bWdyICpjel9od21nciA9 IChzdHJ1Y3QgY3pfaHdtZ3IgKikoaHdtZ3ItPmJhY2tlbmQpOwogCkBAIC0xODM3LDYgKzE4Mzgs MTEgQEAgc3RhdGljIGludCBjel9yZWFkX3NlbnNvcihzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLCBp bnQgaWR4LCB2b2lkICp2YWx1ZSkKIAl1aW50MTZfdCB2ZGRuYiwgdmRkZ2Z4OwogCWludCByZXN1 bHQ7CiAKKwkvKiBzaXplIG11c3QgYmUgYXQgbGVhc3QgNCBieXRlcyBmb3IgYWxsIHNlbnNvcnMg Ki8KKwlpZiAoKnNpemUgPCA0KQorCQlyZXR1cm4gLUVJTlZBTDsKKwkqc2l6ZSA9IDQ7CisKIAlz d2l0Y2ggKGlkeCkgewogCWNhc2UgQU1ER1BVX1BQX1NFTlNPUl9HRlhfU0NMSzoKIAkJaWYgKHNj bGtfaW5kZXggPCBOVU1fU0NMS19MRVZFTFMpIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvcG93ZXJwbGF5L2h3bWdyL3NtdTdfaHdtZ3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQv cG93ZXJwbGF5L2h3bWdyL3NtdTdfaHdtZ3IuYwppbmRleCBjYzc1MDZkOGYzYjAuLmJhNzFiZTEy YWE5NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdtZ3Ivc211 N19od21nci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3NtdTdf aHdtZ3IuYwpAQCAtMzMxMSwyMiArMzMxMSwyOSBAQCBzdGF0aWMgaW50IHNtdTdfZ2V0X2dwdV9w b3dlcihzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50 IHNtdTdfcmVhZF9zZW5zb3Ioc3RydWN0IHBwX2h3bWdyICpod21nciwgaW50IGlkeCwgdm9pZCAq dmFsdWUpCitzdGF0aWMgaW50IHNtdTdfcmVhZF9zZW5zb3Ioc3RydWN0IHBwX2h3bWdyICpod21n ciwgaW50IGlkeCwKKwkJCSAgICB2b2lkICp2YWx1ZSwgaW50ICpzaXplKQogewogCXVpbnQzMl90 IHNjbGssIG1jbGssIGFjdGl2aXR5X3BlcmNlbnQ7CiAJdWludDMyX3Qgb2Zmc2V0OwogCXN0cnVj dCBzbXU3X2h3bWdyICpkYXRhID0gKHN0cnVjdCBzbXU3X2h3bWdyICopKGh3bWdyLT5iYWNrZW5k KTsKIAorCS8qIHNpemUgbXVzdCBiZSBhdCBsZWFzdCA0IGJ5dGVzIGZvciBhbGwgc2Vuc29ycyAq LworCWlmICgqc2l6ZSA8IDQpCisJCXJldHVybiAtRUlOVkFMOworCiAJc3dpdGNoIChpZHgpIHsK IAljYXNlIEFNREdQVV9QUF9TRU5TT1JfR0ZYX1NDTEs6CiAJCXNtdW1fc2VuZF9tc2dfdG9fc21j KGh3bWdyLT5zbXVtZ3IsIFBQU01DX01TR19BUElfR2V0U2Nsa0ZyZXF1ZW5jeSk7CiAJCXNjbGsg PSBjZ3NfcmVhZF9yZWdpc3Rlcihod21nci0+ZGV2aWNlLCBtbVNNQ19NU0dfQVJHXzApOwogCQkq KCh1aW50MzJfdCAqKXZhbHVlKSA9IHNjbGs7CisJCSpzaXplID0gNDsKIAkJcmV0dXJuIDA7CiAJ Y2FzZSBBTURHUFVfUFBfU0VOU09SX0dGWF9NQ0xLOgogCQlzbXVtX3NlbmRfbXNnX3RvX3NtYyho d21nci0+c211bWdyLCBQUFNNQ19NU0dfQVBJX0dldE1jbGtGcmVxdWVuY3kpOwogCQltY2xrID0g Y2dzX3JlYWRfcmVnaXN0ZXIoaHdtZ3ItPmRldmljZSwgbW1TTUNfTVNHX0FSR18wKTsKIAkJKigo dWludDMyX3QgKil2YWx1ZSkgPSBtY2xrOworCQkqc2l6ZSA9IDQ7CiAJCXJldHVybiAwOwogCWNh c2UgQU1ER1BVX1BQX1NFTlNPUl9HUFVfTE9BRDoKIAkJb2Zmc2V0ID0gZGF0YS0+c29mdF9yZWdz X3N0YXJ0ICsgc211bV9nZXRfb2Zmc2V0b2YoaHdtZ3ItPnNtdW1nciwKQEAgLTMzMzcsMTcgKzMz NDQsMjQgQEAgc3RhdGljIGludCBzbXU3X3JlYWRfc2Vuc29yKHN0cnVjdCBwcF9od21nciAqaHdt Z3IsIGludCBpZHgsIHZvaWQgKnZhbHVlKQogCQlhY3Rpdml0eV9wZXJjZW50ICs9IDB4ODA7CiAJ CWFjdGl2aXR5X3BlcmNlbnQgPj49IDg7CiAJCSooKHVpbnQzMl90ICopdmFsdWUpID0gYWN0aXZp dHlfcGVyY2VudCA+IDEwMCA/IDEwMCA6IGFjdGl2aXR5X3BlcmNlbnQ7CisJCSpzaXplID0gNDsK IAkJcmV0dXJuIDA7CiAJY2FzZSBBTURHUFVfUFBfU0VOU09SX0dQVV9URU1QOgogCQkqKCh1aW50 MzJfdCAqKXZhbHVlKSA9IHNtdTdfdGhlcm1hbF9nZXRfdGVtcGVyYXR1cmUoaHdtZ3IpOworCQkq c2l6ZSA9IDQ7CiAJCXJldHVybiAwOwogCWNhc2UgQU1ER1BVX1BQX1NFTlNPUl9VVkRfUE9XRVI6 CiAJCSooKHVpbnQzMl90ICopdmFsdWUpID0gZGF0YS0+dXZkX3Bvd2VyX2dhdGVkID8gMCA6IDE7 CisJCSpzaXplID0gNDsKIAkJcmV0dXJuIDA7CiAJY2FzZSBBTURHUFVfUFBfU0VOU09SX1ZDRV9Q T1dFUjoKIAkJKigodWludDMyX3QgKil2YWx1ZSkgPSBkYXRhLT52Y2VfcG93ZXJfZ2F0ZWQgPyAw IDogMTsKKwkJKnNpemUgPSA0OwogCQlyZXR1cm4gMDsKIAljYXNlIEFNREdQVV9QUF9TRU5TT1Jf R1BVX1BPV0VSOgorCQlpZiAoKnNpemUgPCBzaXplb2Yoc3RydWN0IHBwX2dwdV9wb3dlcikpCisJ CQlyZXR1cm4gLUVJTlZBTDsKKwkJKnNpemUgPSBzaXplb2Yoc3RydWN0IHBwX2dwdV9wb3dlcik7 CiAJCXJldHVybiBzbXU3X2dldF9ncHVfcG93ZXIoaHdtZ3IsIChzdHJ1Y3QgcHBfZ3B1X3Bvd2Vy ICopdmFsdWUpOwogCWRlZmF1bHQ6CiAJCXJldHVybiAtRUlOVkFMOwpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaW5jL2FtZF9wb3dlcnBsYXkuaCBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvcG93ZXJwbGF5L2luYy9hbWRfcG93ZXJwbGF5LmgKaW5kZXggYWI5OTAxM2Vi YTc3Li5jMGJmM2FmNjg0NmQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJw bGF5L2luYy9hbWRfcG93ZXJwbGF5LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBs YXkvaW5jL2FtZF9wb3dlcnBsYXkuaApAQCAtMzY3LDcgKzM2Nyw3IEBAIHN0cnVjdCBhbWRfcG93 ZXJwbGF5X2Z1bmNzIHsKIAlpbnQgKCpzZXRfc2Nsa19vZCkodm9pZCAqaGFuZGxlLCB1aW50MzJf dCB2YWx1ZSk7CiAJaW50ICgqZ2V0X21jbGtfb2QpKHZvaWQgKmhhbmRsZSk7CiAJaW50ICgqc2V0 X21jbGtfb2QpKHZvaWQgKmhhbmRsZSwgdWludDMyX3QgdmFsdWUpOwotCWludCAoKnJlYWRfc2Vu c29yKSh2b2lkICpoYW5kbGUsIGludCBpZHgsIHZvaWQgKnZhbHVlKTsKKwlpbnQgKCpyZWFkX3Nl bnNvcikodm9pZCAqaGFuZGxlLCBpbnQgaWR4LCB2b2lkICp2YWx1ZSwgaW50ICpzaXplKTsKIAlz dHJ1Y3QgYW1kX3ZjZV9zdGF0ZSogKCpnZXRfdmNlX2Nsb2NrX3N0YXRlKSh2b2lkICpoYW5kbGUs IHVuc2lnbmVkIGlkeCk7CiAJaW50ICgqcmVzZXRfcG93ZXJfcHJvZmlsZV9zdGF0ZSkodm9pZCAq aGFuZGxlLAogCQkJc3RydWN0IGFtZF9wcF9wcm9maWxlICpyZXF1ZXN0KTsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2luYy9od21nci5oIGIvZHJpdmVycy9ncHUv ZHJtL2FtZC9wb3dlcnBsYXkvaW5jL2h3bWdyLmgKaW5kZXggZmEzYmY1MGVmZjgyLi44Y2Y1YWVk MDU1YjYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2luYy9od21n ci5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2luYy9od21nci5oCkBAIC0z NTUsNyArMzU1LDcgQEAgc3RydWN0IHBwX2h3bWdyX2Z1bmMgewogCWludCAoKnNldF9zY2xrX29k KShzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLCB1aW50MzJfdCB2YWx1ZSk7CiAJaW50ICgqZ2V0X21j bGtfb2QpKHN0cnVjdCBwcF9od21nciAqaHdtZ3IpOwogCWludCAoKnNldF9tY2xrX29kKShzdHJ1 Y3QgcHBfaHdtZ3IgKmh3bWdyLCB1aW50MzJfdCB2YWx1ZSk7Ci0JaW50ICgqcmVhZF9zZW5zb3Ip KHN0cnVjdCBwcF9od21nciAqaHdtZ3IsIGludCBpZHgsIHZvaWQgKnZhbHVlKTsKKwlpbnQgKCpy ZWFkX3NlbnNvcikoc3RydWN0IHBwX2h3bWdyICpod21nciwgaW50IGlkeCwgdm9pZCAqdmFsdWUs IGludCAqc2l6ZSk7CiAJaW50ICgqcmVxdWVzdF9maXJtd2FyZSkoc3RydWN0IHBwX2h3bWdyICpo d21ncik7CiAJaW50ICgqcmVsZWFzZV9maXJtd2FyZSkoc3RydWN0IHBwX2h3bWdyICpod21ncik7 CiAJaW50ICgqc2V0X3Bvd2VyX3Byb2ZpbGVfc3RhdGUpKHN0cnVjdCBwcF9od21nciAqaHdtZ3Is Ci0tIAoyLjExLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=