From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rex Zhu Subject: [PATCH 3/3] drm/amd/pp: Remove struct pp_gpu_power Date: Wed, 11 Apr 2018 14:31:47 +0800 Message-ID: <1523428307-7969-3-git-send-email-Rex.Zhu@amd.com> References: <1523428307-7969-1-git-send-email-Rex.Zhu@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1523428307-7969-1-git-send-email-Rex.Zhu-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: Rex Zhu VGhpcyBzdHJ1Y3QgY2FuJ3QgYmUgdXNlZCBmb3IgYWxsIGFzaWNzLgoKQ3VycmVudGx5IHNtdSBv bmx5IGNhbGN1bGF0ZSBhdmVyYWdlIGdwdSBwb3dlciBpbiByZWFsIHRpbWUuCgpmb3IgdmRkYy92 ZGRjaS9tYXggcG93ZXIsCndlIGNhbiByZWFkIHRoZW0gcGVyIDFtcyB0aHJvdWdoIHNvbWUgcmVn aXN0ZXJzLiBidXQKCjEuIHRoZSB0eXBlIG9mIHJldHVybiB2YWx1ZXMgaXMgbm90IHVuaWZpZWQu CiAgICBGb3IgVmksIHJldHVybiB0eXBlIGlzIHVpbnQuIEZvciB2ZWdhLCByZXR1cm4gdHlwZSBp cyBmbG9hdC4KCjIuIG5lZWQgdG8gYXNzaWduIHRoZSB1bml0IHRpbWUgdG8gY2FsY3VsYXRlIHRo ZSBhdmVyYWdlIHBvd2VyLgoKc28gcmVtb3ZlIHRoaXMgc3RydWN0LgoKaWYgdXNlciBuZWVkIHRv IGtub3cgdGhlIHBvd2VyIG9uIHZkZGMvdmRkY2kuCndlIGNhbiBleHBvcnQgdGhlbSB3aXRoIG5l dyBjb21tb24gaW50ZXJmYWNlL3N0cnVjdC4KClNpZ25lZC1vZmYtYnk6IFJleCBaaHUgPFJleC5a aHVAYW1kLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfa21zLmMg ICAgICAgICAgICB8ICA3ICsrLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV9wbS5jICAgICAgICAgICAgIHwgMjIgKysrKysrKy0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dw dS9kcm0vYW1kL2luY2x1ZGUva2dkX3BwX2ludGVyZmFjZS5oICAgICB8ICA3IC0tLS0tLS0KIGRy aXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3NtdTdfaHdtZ3IuYyAgIHwgMjMgKysr KysrKysrLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdtZ3Iv dmVnYTEwX2h3bWdyLmMgfCAxNyArKysrKysrLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1k L3Bvd2VycGxheS9od21nci92ZWdhMTJfaHdtZ3IuYyB8IDEzICsrKystLS0tLS0tLQogNiBmaWxl cyBjaGFuZ2VkLCAyOSBpbnNlcnRpb25zKCspLCA2MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfa21zLmMgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfa21zLmMKaW5kZXggNDg3ZDM5ZS4uMWU1OTgxOCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2ttcy5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9rbXMuYwpAQCAtNzAxLDkgKzcwMSw2IEBAIHN0 YXRpYyBpbnQgYW1kZ3B1X2luZm9faW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAq ZGF0YSwgc3RydWN0IGRybV9maWxlCiAJCX0KIAl9CiAJY2FzZSBBTURHUFVfSU5GT19TRU5TT1I6 IHsKLQkJc3RydWN0IHBwX2dwdV9wb3dlciBxdWVyeSA9IHswfTsKLQkJaW50IHF1ZXJ5X3NpemUg PSBzaXplb2YocXVlcnkpOwotCiAJCWlmICghYWRldi0+cG0uZHBtX2VuYWJsZWQpCiAJCQlyZXR1 cm4gLUVOT0VOVDsKIApAQCAtNzQ2LDEwICs3NDMsMTAgQEAgc3RhdGljIGludCBhbWRncHVfaW5m b19pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLCBzdHJ1Y3QgZHJtX2Zp bGUKIAkJCS8qIGdldCBhdmVyYWdlIEdQVSBwb3dlciAqLwogCQkJaWYgKGFtZGdwdV9kcG1fcmVh ZF9zZW5zb3IoYWRldiwKIAkJCQkJCSAgIEFNREdQVV9QUF9TRU5TT1JfR1BVX1BPV0VSLAotCQkJ CQkJICAgKHZvaWQgKikmcXVlcnksICZxdWVyeV9zaXplKSkgeworCQkJCQkJICAgKHZvaWQgKikm dWkzMiwgJnVpMzJfc2l6ZSkpIHsKIAkJCQlyZXR1cm4gLUVJTlZBTDsKIAkJCX0KLQkJCXVpMzIg PSBxdWVyeS5hdmVyYWdlX2dwdV9wb3dlciA+PiA4OworCQkJdWkzMiA+Pj0gODsKIAkJCWJyZWFr OwogCQljYXNlIEFNREdQVV9JTkZPX1NFTlNPUl9WREROQjoKIAkJCS8qIGdldCBWREROQiBpbiBt aWxsaXZvbHRzICovCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHVfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5jCmluZGV4IGU1 ZjYwZmMuLjc0NGYxMDUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2Ft ZGdwdV9wbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5jCkBA IC0xMDIwLDggKzEwMjAsOCBAQCBzdGF0aWMgc3NpemVfdCBhbWRncHVfaHdtb25fc2hvd19wb3dl cl9hdmcoc3RydWN0IGRldmljZSAqZGV2LAogewogCXN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2 ID0gZGV2X2dldF9kcnZkYXRhKGRldik7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRkZXYgPSBhZGV2 LT5kZGV2OwotCXN0cnVjdCBwcF9ncHVfcG93ZXIgcXVlcnkgPSB7MH07Ci0JaW50IHIsIHNpemUg PSBzaXplb2YocXVlcnkpOworCXUzMiBxdWVyeSA9IDA7CisJaW50IHIsIHNpemUgPSBzaXplb2Yo dTMyKTsKIAl1bnNpZ25lZCB1dzsKIAogCS8qIENhbid0IGdldCBwb3dlciB3aGVuIHRoZSBjYXJk IGlzIG9mZiAqLwpAQCAtMTA0MSw3ICsxMDQxLDcgQEAgc3RhdGljIHNzaXplX3QgYW1kZ3B1X2h3 bW9uX3Nob3dfcG93ZXJfYXZnKHN0cnVjdCBkZXZpY2UgKmRldiwKIAkJcmV0dXJuIHI7CiAKIAkv KiBjb252ZXJ0IHRvIG1pY3Jvd2F0dHMgKi8KLQl1dyA9IChxdWVyeS5hdmVyYWdlX2dwdV9wb3dl ciA+PiA4KSAqIDEwMDAwMDA7CisJdXcgPSAocXVlcnkgPj4gOCkgKiAxMDAwMDAwICsgKHF1ZXJ5 ICYgMHhmZikgKiAxMDAwOwogCiAJcmV0dXJuIHNucHJpbnRmKGJ1ZiwgUEFHRV9TSVpFLCAiJXVc biIsIHV3KTsKIH0KQEAgLTE3NTIsNyArMTc1Miw3IEBAIHZvaWQgYW1kZ3B1X3BtX2NvbXB1dGVf Y2xvY2tzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQogc3RhdGljIGludCBhbWRncHVfZGVi dWdmc19wbV9pbmZvX3BwKHN0cnVjdCBzZXFfZmlsZSAqbSwgc3RydWN0IGFtZGdwdV9kZXZpY2Ug KmFkZXYpCiB7CiAJdWludDMyX3QgdmFsdWU7Ci0Jc3RydWN0IHBwX2dwdV9wb3dlciBxdWVyeSA9 IHswfTsKKwl1aW50MzJfdCBxdWVyeSA9IDA7CiAJaW50IHNpemU7CiAKIAkvKiBzYW5pdHkgY2hl Y2sgUFAgaXMgZW5hYmxlZCAqLwpAQCAtMTc3NSwxNyArMTc3NSw5IEBAIHN0YXRpYyBpbnQgYW1k Z3B1X2RlYnVnZnNfcG1faW5mb19wcChzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHN0cnVjdCBhbWRncHVf ZGV2aWNlICphCiAJCXNlcV9wcmludGYobSwgIlx0JXUgbVYgKFZEREdGWClcbiIsIHZhbHVlKTsK IAlpZiAoIWFtZGdwdV9kcG1fcmVhZF9zZW5zb3IoYWRldiwgQU1ER1BVX1BQX1NFTlNPUl9WRERO QiwgKHZvaWQgKikmdmFsdWUsICZzaXplKSkKIAkJc2VxX3ByaW50ZihtLCAiXHQldSBtViAoVkRE TkIpXG4iLCB2YWx1ZSk7Ci0Jc2l6ZSA9IHNpemVvZihxdWVyeSk7Ci0JaWYgKCFhbWRncHVfZHBt X3JlYWRfc2Vuc29yKGFkZXYsIEFNREdQVV9QUF9TRU5TT1JfR1BVX1BPV0VSLCAodm9pZCAqKSZx dWVyeSwgJnNpemUpKSB7Ci0JCXNlcV9wcmludGYobSwgIlx0JXUuJXUgVyAoVkREQylcbiIsIHF1 ZXJ5LnZkZGNfcG93ZXIgPj4gOCwKLQkJCQlxdWVyeS52ZGRjX3Bvd2VyICYgMHhmZik7Ci0JCXNl cV9wcmludGYobSwgIlx0JXUuJXUgVyAoVkREQ0kpXG4iLCBxdWVyeS52ZGRjaV9wb3dlciA+PiA4 LAotCQkJCXF1ZXJ5LnZkZGNpX3Bvd2VyICYgMHhmZik7Ci0JCXNlcV9wcmludGYobSwgIlx0JXUu JXUgVyAobWF4IEdQVSlcbiIsIHF1ZXJ5Lm1heF9ncHVfcG93ZXIgPj4gOCwKLQkJCQlxdWVyeS5t YXhfZ3B1X3Bvd2VyICYgMHhmZik7Ci0JCXNlcV9wcmludGYobSwgIlx0JXUuJXUgVyAoYXZlcmFn ZSBHUFUpXG4iLCBxdWVyeS5hdmVyYWdlX2dwdV9wb3dlciA+PiA4LAotCQkJCXF1ZXJ5LmF2ZXJh Z2VfZ3B1X3Bvd2VyICYgMHhmZik7Ci0JfQorCXNpemUgPSBzaXplb2YodWludDMyX3QpOworCWlm ICghYW1kZ3B1X2RwbV9yZWFkX3NlbnNvcihhZGV2LCBBTURHUFVfUFBfU0VOU09SX0dQVV9QT1dF UiwgKHZvaWQgKikmcXVlcnksICZzaXplKSkKKwkJc2VxX3ByaW50ZihtLCAiXHQldS4ldSBXIChh dmVyYWdlIEdQVSlcbiIsIHF1ZXJ5ID4+IDgsIHF1ZXJ5ICYgMHhmZik7CiAJc2l6ZSA9IHNpemVv Zih2YWx1ZSk7CiAJc2VxX3ByaW50ZihtLCAiXG4iKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2FtZC9pbmNsdWRlL2tnZF9wcF9pbnRlcmZhY2UuaCBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvaW5jbHVkZS9rZ2RfcHBfaW50ZXJmYWNlLmgKaW5kZXggNWM4NDBjMC4uMWJlYzkwNyAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9pbmNsdWRlL2tnZF9wcF9pbnRlcmZhY2UuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2luY2x1ZGUva2dkX3BwX2ludGVyZmFjZS5oCkBAIC0x NDksMTMgKzE0OSw2IEBAIHN0cnVjdCBwcF9zdGF0ZXNfaW5mbyB7CiAJdWludDMyX3Qgc3RhdGVz WzE2XTsKIH07CiAKLXN0cnVjdCBwcF9ncHVfcG93ZXIgewotCXVpbnQzMl90IHZkZGNfcG93ZXI7 Ci0JdWludDMyX3QgdmRkY2lfcG93ZXI7Ci0JdWludDMyX3QgbWF4X2dwdV9wb3dlcjsKLQl1aW50 MzJfdCBhdmVyYWdlX2dwdV9wb3dlcjsKLX07Ci0KICNkZWZpbmUgUFBfR1JPVVBfTUFTSyAgICAg ICAgMHhGMDAwMDAwMAogI2RlZmluZSBQUF9HUk9VUF9TSElGVCAgICAgICAyOAogCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci9zbXU3X2h3bWdyLmMgYi9k cml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci9zbXU3X2h3bWdyLmMKaW5kZXggMjBm NWE2Zi4uNDk0YzFmZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkv aHdtZ3Ivc211N19od21nci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3 bWdyL3NtdTdfaHdtZ3IuYwpAQCAtMzM1NiwzNiArMzM1NiwzNCBAQCBzdGF0aWMgaW50IHNtdTdf Z2V0X3BwX3RhYmxlX2VudHJ5KHN0cnVjdCBwcF9od21nciAqaHdtZ3IsCiAJcmV0dXJuIDA7CiB9 CiAKLXN0YXRpYyBpbnQgc211N19nZXRfZ3B1X3Bvd2VyKHN0cnVjdCBwcF9od21nciAqaHdtZ3Is Ci0JCXN0cnVjdCBwcF9ncHVfcG93ZXIgKnF1ZXJ5KQorc3RhdGljIGludCBzbXU3X2dldF9ncHVf cG93ZXIoc3RydWN0IHBwX2h3bWdyICpod21nciwgdTMyICpxdWVyeSkKIHsKIAlpbnQgaTsKKwl1 MzIgdG1wID0gMDsKIAogCWlmICghcXVlcnkpCiAJCXJldHVybiAtRUlOVkFMOwogCi0KLQltZW1z ZXQocXVlcnksIDAsIHNpemVvZiAqcXVlcnkpOwotCiAJc211bV9zZW5kX21zZ190b19zbWNfd2l0 aF9wYXJhbWV0ZXIoaHdtZ3IsIFBQU01DX01TR19HZXRDdXJyUGtnUHdyLCAwKTsKLQlxdWVyeS0+ YXZlcmFnZV9ncHVfcG93ZXIgPSBjZ3NfcmVhZF9yZWdpc3Rlcihod21nci0+ZGV2aWNlLCBtbVNN Q19NU0dfQVJHXzApOworCXRtcCA9IGNnc19yZWFkX3JlZ2lzdGVyKGh3bWdyLT5kZXZpY2UsIG1t U01DX01TR19BUkdfMCk7CiAKLQlpZiAocXVlcnktPmF2ZXJhZ2VfZ3B1X3Bvd2VyICE9IDApCisJ aWYgKHRtcCAhPSAwKQogCQlyZXR1cm4gMDsKIAogCXNtdW1fc2VuZF9tc2dfdG9fc21jKGh3bWdy LCBQUFNNQ19NU0dfUG1TdGF0dXNMb2dTdGFydCk7CiAJY2dzX3dyaXRlX2luZF9yZWdpc3Rlciho d21nci0+ZGV2aWNlLCBDR1NfSU5EX1JFR19fU01DLAogCQkJCQkJCWl4U01VX1BNX1NUQVRVU185 NCwgMCk7CiAKLQlmb3IgKGkgPSAwOyBpIDwgMjA7IGkrKykgeworCWZvciAoaSA9IDA7IGkgPCAx MDsgaSsrKSB7CiAJCW1kZWxheSgxKTsKIAkJc211bV9zZW5kX21zZ190b19zbWMoaHdtZ3IsIFBQ U01DX01TR19QbVN0YXR1c0xvZ1NhbXBsZSk7Ci0JCXF1ZXJ5LT5hdmVyYWdlX2dwdV9wb3dlciA9 IGNnc19yZWFkX2luZF9yZWdpc3Rlcihod21nci0+ZGV2aWNlLAorCQl0bXAgPSBjZ3NfcmVhZF9p bmRfcmVnaXN0ZXIoaHdtZ3ItPmRldmljZSwKIAkJCQkJCUNHU19JTkRfUkVHX19TTUMsCiAJCQkJ CQlpeFNNVV9QTV9TVEFUVVNfOTQpOwotCQlpZiAocXVlcnktPmF2ZXJhZ2VfZ3B1X3Bvd2VyICE9 IDApCisJCWlmICh0bXAgIT0gMCkKIAkJCWJyZWFrOwogCX0KKwkqcXVlcnkgPSB0bXA7CiAKIAly ZXR1cm4gMDsKIH0KQEAgLTM0MzgsMTAgKzM0MzYsNyBAQCBzdGF0aWMgaW50IHNtdTdfcmVhZF9z ZW5zb3Ioc3RydWN0IHBwX2h3bWdyICpod21nciwgaW50IGlkeCwKIAkJKnNpemUgPSA0OwogCQly ZXR1cm4gMDsKIAljYXNlIEFNREdQVV9QUF9TRU5TT1JfR1BVX1BPV0VSOgotCQlpZiAoKnNpemUg PCBzaXplb2Yoc3RydWN0IHBwX2dwdV9wb3dlcikpCi0JCQlyZXR1cm4gLUVJTlZBTDsKLQkJKnNp emUgPSBzaXplb2Yoc3RydWN0IHBwX2dwdV9wb3dlcik7Ci0JCXJldHVybiBzbXU3X2dldF9ncHVf cG93ZXIoaHdtZ3IsIChzdHJ1Y3QgcHBfZ3B1X3Bvd2VyICopdmFsdWUpOworCQlyZXR1cm4gc211 N19nZXRfZ3B1X3Bvd2VyKGh3bWdyLCAodWludDMyX3QgKil2YWx1ZSk7CiAJY2FzZSBBTURHUFVf UFBfU0VOU09SX1ZEREdGWDoKIAkJaWYgKChkYXRhLT52cl9jb25maWcgJiAweGZmKSA9PSAweDIp CiAJCQl2YWxfdmlkID0gUEhNX1JFQURfSU5ESVJFQ1RfRklFTEQoaHdtZ3ItPmRldmljZSwKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3ZlZ2ExMF9od21n ci5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdtZ3IvdmVnYTEwX2h3bWdyLmMK aW5kZXggMTI3YzU1MC4uMGJiYzU2NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9w b3dlcnBsYXkvaHdtZ3IvdmVnYTEwX2h3bWdyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9w b3dlcnBsYXkvaHdtZ3IvdmVnYTEwX2h3bWdyLmMKQEAgLTM3ODEsMTYgKzM3ODEsMTggQEAgc3Rh dGljIHVpbnQzMl90IHZlZ2ExMF9kcG1fZ2V0X21jbGsoc3RydWN0IHBwX2h3bWdyICpod21nciwg Ym9vbCBsb3cpCiB9CiAKIHN0YXRpYyBpbnQgdmVnYTEwX2dldF9ncHVfcG93ZXIoc3RydWN0IHBw X2h3bWdyICpod21nciwKLQkJc3RydWN0IHBwX2dwdV9wb3dlciAqcXVlcnkpCisJCXVpbnQzMl90 ICpxdWVyeSkKIHsKIAl1aW50MzJfdCB2YWx1ZTsKIAorCWlmICghcXVlcnkpCisJCXJldHVybiAt RUlOVkFMOworCiAJc211bV9zZW5kX21zZ190b19zbWMoaHdtZ3IsIFBQU01DX01TR19HZXRDdXJy UGtnUHdyKTsKIAl2YWx1ZSA9IHNtdW1fZ2V0X2FyZ3VtZW50KGh3bWdyKTsKIAotCS8qIHBvd2Vy IHZhbHVlIGlzIGFuIGludGVnZXIgKi8KLQltZW1zZXQocXVlcnksIDAsIHNpemVvZiAqcXVlcnkp OwotCXF1ZXJ5LT5hdmVyYWdlX2dwdV9wb3dlciA9IHZhbHVlIDw8IDg7CisJLyogU01DIHJldHVy bmluZyBhY3R1YWwgd2F0dHMsIGtlZXAgY29uc2lzdGVudCB3aXRoIGxlZ2FjeSBhc2ljcywgbG93 IDggYml0IGFzIDggZnJhY3Rpb25hbCBiaXRzICovCisJKnF1ZXJ5ID0gdmFsdWUgPDwgODsKIAog CXJldHVybiAwOwogfQpAQCAtMzg0MCwxMiArMzg0Miw3IEBAIHN0YXRpYyBpbnQgdmVnYTEwX3Jl YWRfc2Vuc29yKHN0cnVjdCBwcF9od21nciAqaHdtZ3IsIGludCBpZHgsCiAJCSpzaXplID0gNDsK IAkJYnJlYWs7CiAJY2FzZSBBTURHUFVfUFBfU0VOU09SX0dQVV9QT1dFUjoKLQkJaWYgKCpzaXpl IDwgc2l6ZW9mKHN0cnVjdCBwcF9ncHVfcG93ZXIpKQotCQkJcmV0ID0gLUVJTlZBTDsKLQkJZWxz ZSB7Ci0JCQkqc2l6ZSA9IHNpemVvZihzdHJ1Y3QgcHBfZ3B1X3Bvd2VyKTsKLQkJCXJldCA9IHZl Z2ExMF9nZXRfZ3B1X3Bvd2VyKGh3bWdyLCAoc3RydWN0IHBwX2dwdV9wb3dlciAqKXZhbHVlKTsK LQkJfQorCQlyZXQgPSB2ZWdhMTBfZ2V0X2dwdV9wb3dlcihod21nciwgKHVpbnQzMl90ICopdmFs dWUpOwogCQlicmVhazsKIAljYXNlIEFNREdQVV9QUF9TRU5TT1JfVkRER0ZYOgogCQl2YWxfdmlk ID0gKFJSRUczMl9TT0MxNShTTVVJTywgMCwgbW1TTVVTVkkwX1BMQU5FMF9DVVJSRU5UVklEKSAm CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci92ZWdhMTJf aHdtZ3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3ZlZ2ExMl9od21n ci5jCmluZGV4IDNlMWVkMGEuLjc4MmUyMDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvcG93ZXJwbGF5L2h3bWdyL3ZlZ2ExMl9od21nci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvcG93ZXJwbGF5L2h3bWdyL3ZlZ2ExMl9od21nci5jCkBAIC0xMTEzLDggKzExMTMsNyBAQCBz dGF0aWMgdWludDMyX3QgdmVnYTEyX2RwbV9nZXRfbWNsayhzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdy LCBib29sIGxvdykKIAlyZXR1cm4gKG1lbV9jbGsgKiAxMDApOwogfQogCi1zdGF0aWMgaW50IHZl Z2ExMl9nZXRfZ3B1X3Bvd2VyKHN0cnVjdCBwcF9od21nciAqaHdtZ3IsCi0JCXN0cnVjdCBwcF9n cHVfcG93ZXIgKnF1ZXJ5KQorc3RhdGljIGludCB2ZWdhMTJfZ2V0X2dwdV9wb3dlcihzdHJ1Y3Qg cHBfaHdtZ3IgKmh3bWdyLCB1aW50MzJfdCAqcXVlcnkpCiB7CiAjaWYgMAogCXVpbnQzMl90IHZh bHVlOwpAQCAtMTEyNiw3ICsxMTI1LDcgQEAgc3RhdGljIGludCB2ZWdhMTJfZ2V0X2dwdV9wb3dl cihzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLAogCiAJdmVnYTEyX3JlYWRfYXJnX2Zyb21fc21jKGh3 bWdyLCAmdmFsdWUpOwogCS8qIHBvd2VyIHZhbHVlIGlzIGFuIGludGVnZXIgKi8KLQlxdWVyeS0+ YXZlcmFnZV9ncHVfcG93ZXIgPSB2YWx1ZSA8PCA4OworCSpxdWVyeSA9IHZhbHVlIDw8IDg7CiAj ZW5kaWYKIAlyZXR1cm4gMDsKIH0KQEAgLTEyMzUsMTIgKzEyMzQsOCBAQCBzdGF0aWMgaW50IHZl Z2ExMl9yZWFkX3NlbnNvcihzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLCBpbnQgaWR4LAogCQkqc2l6 ZSA9IDQ7CiAJCWJyZWFrOwogCWNhc2UgQU1ER1BVX1BQX1NFTlNPUl9HUFVfUE9XRVI6Ci0JCWlm ICgqc2l6ZSA8IHNpemVvZihzdHJ1Y3QgcHBfZ3B1X3Bvd2VyKSkKLQkJCXJldCA9IC1FSU5WQUw7 Ci0JCWVsc2UgewotCQkJKnNpemUgPSBzaXplb2Yoc3RydWN0IHBwX2dwdV9wb3dlcik7Ci0JCQly ZXQgPSB2ZWdhMTJfZ2V0X2dwdV9wb3dlcihod21nciwgKHN0cnVjdCBwcF9ncHVfcG93ZXIgKil2 YWx1ZSk7Ci0JCX0KKwkJcmV0ID0gdmVnYTEyX2dldF9ncHVfcG93ZXIoaHdtZ3IsICh1aW50MzJf dCAqKXZhbHVlKTsKKwogCQlicmVhazsKIAlkZWZhdWx0OgogCQlyZXQgPSAtRUlOVkFMOwotLSAK MS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmFt ZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=