From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D84A7C4332F for ; Mon, 17 Oct 2022 23:59:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231393AbiJQX6z (ORCPT ); Mon, 17 Oct 2022 19:58:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38962 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230527AbiJQX6U (ORCPT ); Mon, 17 Oct 2022 19:58:20 -0400 Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E48768680E; Mon, 17 Oct 2022 16:58:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1666051073; bh=juUo90/80vPHuf7Br7pPmfpOCEHFG9Rm2lnetqnzIHM=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=fnPIkL8W4M5bNzWcyi9a75ql9//2R5Qy5TTlZIAT+iB8WFEVVuSSmN1bSc1RtN0uY LhMTzPVAdreBkT0DkwGUWoLcGL/JFoUSTjPSLgSh0djG4HqgFFJFvcppL3qhatMWaa uXuzZuPfEHACEPBWbUEYr8maZL5rmCW/s3yzS7iQ= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from Venus.speedport.ip ([84.162.5.241]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MvbG2-1p1Q9e4Ays-00shHM; Tue, 18 Oct 2022 01:57:53 +0200 From: Lino Sanfilippo To: peterhuewe@gmx.de, jarkko@kernel.org, jgg@ziepe.ca Cc: stefanb@linux.vnet.ibm.com, linux@mniewoehner.de, linux-integrity@vger.kernel.org, linux-kernel@vger.kernel.org, jandryuk@gmail.com, pmenzel@molgen.mpg.de, l.sanfilippo@kunbus.com, LinoSanfilippo@gmx.de, lukas@wunner.de, p.rosenberger@kunbus.com Subject: [PATCH v8 08/11] tpm, tpm: Implement usage counter for locality Date: Tue, 18 Oct 2022 01:57:29 +0200 Message-Id: <20221017235732.10145-9-LinoSanfilippo@gmx.de> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20221017235732.10145-1-LinoSanfilippo@gmx.de> References: <20221017235732.10145-1-LinoSanfilippo@gmx.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 X-Provags-ID: V03:K1:pfbvcY5/MnkRaWRBLgtPcwmK2mbOel1Z3UYYqdvt3JndJu+H5cD FAoaoS0SutEuP3LCLzCNhIOkJtF2DEO6oBIoSgP+tedMAPiM0R0a84B8sVXdmgiAByjQhYy soeoP6jRc04xmrcqLujVilMFrF+HDBq/Zi5Pgz1VLTN4xzRp7Fyrd/auP6q5p9R+06L8F5R sSRpMRdC1xzQtND7q8QqQ== X-UI-Out-Filterresults: notjunk:1;V03:K0:JnTBYZ/7PB4=:KZYDysI51Ry1uIXk85o4bG 58lGLrCGw5YUPuWOMFmXUNEAlYfAyGW+4y0wnOuLnyzROILtpRqQJGFLOfldiUzsoMBbwY+sc IshNotdBUUevOyscDEvq6fpa4gEC+I70ZZ4sfCMEmUAKlfcM0erXnL4t3nw/6yKTWOH+QuPRd kLJIyG9aUFdkhRqlR2yWuRgOh2OqU7JW+e0Ws82sqHXnTzgQmlBagvidatEr6xMNO7/JAVkQp vvufnGAN432tY9nmqGchlHUHG9yDJ2ExPVH59OL9lkHC1q8G9t9L2epnE9zkbOelZQlrm3yWM d/q/wJvkapck+9f8lSXkkyX36L29vfQAgnl5UzQGWEdxuqANy4yYKA6QGOtAZtIB1hZQy+v35 iJO+3s/NESqK8B1yXwe7tT95Zkv87YPZ1ak72yNgzQ2nUC+nSaIeNMXxXZ5P6ZAe3I9KGjtsT cQldjasaVHUF0ou73OiPorxH6T3iq/R1lwUPrI54RcEx+TJ9zuSTGLsVqMGxTroeKAyHxSUFi jpwaV2qPDGgew21RFvbsRkOdwd7+ERHKsP9GTrdrnUAKTmIVryq96IrICXHbKPpG17BGDPWCM 95qU8pBAdTaB7DNXKhXNnmv9wEvUUcgAemGhYZCuLj5yN8lyLjFb+dA1UGRoJakOixRajkwWK uGcqN7QuM6iwMxxG/vJ5z3lRNdy0yFsIheA7B8y99YBCg+YThvNZhsivQGM3hvK3vikUHmqM7 lBlZ/r040/qm38vyOp4638/WoFR72kxkHo4dWoYOdE2tKLMS/TCZYQZUyWgQ3fma+cbIWm5UU FY0l8/xw+RkyQt4zQHvYtLwp6nwDWyAk/pAhwOohx4gPw419UfjwSnYOele/xrUCgrEvZA0lZ s5esI/w4tCmBuW/rKWBMktrbHfM6IdPF3DM/ci3FXTTGkoKozhGOLAgZOEgEXnLPOeMmIGPZj rATlNmgTLuvyPe6jW0/X617a+vlkZOnw3QkuJz5wAkRc6vrERw6QYgE73wYRAfhR3nwLxuolx zAGXFm2o+ggOaohgTuvyqOTXNxv4PAY5ZmbES7gDeFxyBhSa8W0/apBKC2hXDd7MzFwU46E+E KynRTv9hu8D6XOoyXhH4Qv9JImL6k214AJFGjKKRnVmUM0ZUMFkWo9haeM6iiy8ACpkaiOMHf ny4FVS9kmW/C3gpdgkHopdmFn1/fZYq5vuktEHP1a2o3RiUlHWZ9lXnD8fwSfRsK1dxky9LPA lGctsENdBn/Hy5QYIUSWTKdDjmVINVcWJRXI5ptBbWg0I7aw5ga6e3Xgnn0+LX6WNVUWPL8jb Q9hl6KxGaficrqsN63yz9KWf2mgHf8m656+Mzl3IO6HPt2ktyjxgPQATMUBzzeADcHOkPZekd JtbO525f9QKDCSM/c8hnSlO0syEkBqU8tBDp93MlOcyT+JwgIy7Xy24Ww0lDtJEIeOeyYAc3c EL0bUJMT9bNzKPWrP7/s3ndh8a27fGgrGV72540cxK4kaQtcvrvNn4Cf7b1jsgD14gY8tIT5e zZ0XvaYKFL1TPRy6BHRa7mFasUbRLAlzMGem5sPI9tP7U Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org RnJvbTogTGlubyBTYW5maWxpcHBvIDxsLnNhbmZpbGlwcG9Aa3VuYnVzLmNvbT4KCkltcGxlbWVu dCBhIHVzYWdlIGNvdW50ZXIgZm9yIHRoZSAoZGVmYXVsdCkgbG9jYWxpdHkgdXNlZCBieSB0aGUg VFBNIFRJUwpkcml2ZXI6ClJlcXVlc3QgdGhlIGxvY2FsaXR5IGZyb20gdGhlIFRQTSBpZiBpdCBo YXMgbm90IGJlZW4gY2xhaW1lZCB5ZXQsIG90aGVyd2lzZQpvbmx5IGluY3JlbWVudCB0aGUgY291 bnRlci4gQWxzbyByZWxlYXNlIHRoZSBsb2NhbGl0eSBpZiB0aGUgY291bnRlciBpcyAwCm90aGVy d2lzZSBvbmx5IGRlY3JlbWVudCB0aGUgY291bnRlci4gRW5zdXJlIHRocmVhZC1zYWZldHkgYnkg cHJvdGVjdGluZwp0aGUgY291bnRlciB3aXRoIGEgbXV0ZXguCgpUaGlzIGFsbG93cyB0byByZXF1 ZXN0IGFuZCByZWxlYXNlIHRoZSBsb2NhbGl0eSBmcm9tIGEgdGhyZWFkIGFuZCB0aGUKaW50ZXJy dXB0IGhhbmRsZXIgYXQgdGhlIHNhbWUgdGltZSB3aXRob3V0IHRoZSBkYW5nZXIgdG8gaW50ZXJm ZXJlIHdpdGgKZWFjaCBvdGhlci4KCkJ5IGRvaW5nIHRoaXMgcmVmYWN0b3IgdGhlIG5hbWVzIG9m IHRoZSBhbWVuZGVkIGZ1bmN0aW9ucyB0byB1c2UgdGhlIHByb3BlcgpwcmVmaXguCgpTaWduZWQt b2ZmLWJ5OiBMaW5vIFNhbmZpbGlwcG8gPGwuc2FuZmlsaXBwb0BrdW5idXMuY29tPgpUZXN0ZWQt Ynk6IE1pY2hhZWwgTmlld8O2aG5lciA8bGludXhAbW5pZXdvZWhuZXIuZGU+Ci0tLQogZHJpdmVy cy9jaGFyL3RwbS90cG1fdGlzX2NvcmUuYyB8IDc1ICsrKysrKysrKysrKysrKysrKysrKystLS0t LS0tLS0tLQogZHJpdmVycy9jaGFyL3RwbS90cG1fdGlzX2NvcmUuaCB8ICAyICsKIDIgZmlsZXMg Y2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9jaGFyL3RwbS90cG1fdGlzX2NvcmUuYyBiL2RyaXZlcnMvY2hhci90cG0vdHBtX3Rp c19jb3JlLmMKaW5kZXggNDMzNmY3ZWE4YzJiLi43OWRmYWI2NTk3NmYgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvY2hhci90cG0vdHBtX3Rpc19jb3JlLmMKKysrIGIvZHJpdmVycy9jaGFyL3RwbS90cG1f dGlzX2NvcmUuYwpAQCAtMTY1LDE2ICsxNjUsMjcgQEAgc3RhdGljIGJvb2wgY2hlY2tfbG9jYWxp dHkoc3RydWN0IHRwbV9jaGlwICpjaGlwLCBpbnQgbCkKIAlyZXR1cm4gZmFsc2U7CiB9CiAKLXN0 YXRpYyBpbnQgcmVsZWFzZV9sb2NhbGl0eShzdHJ1Y3QgdHBtX2NoaXAgKmNoaXAsIGludCBsKQor c3RhdGljIGludCB0cG1fdGlzX3JlbGVhc2VfbG9jYWxpdHlfbG9ja2VkKHN0cnVjdCB0cG1fdGlz X2RhdGEgKnByaXYsIGludCBsKQoreworCXRwbV90aXNfd3JpdGU4KHByaXYsIFRQTV9BQ0NFU1Mo bCksIFRQTV9BQ0NFU1NfQUNUSVZFX0xPQ0FMSVRZKTsKKworCXJldHVybiAwOworfQorCitzdGF0 aWMgaW50IHRwbV90aXNfcmVsZWFzZV9sb2NhbGl0eShzdHJ1Y3QgdHBtX2NoaXAgKmNoaXAsIGlu dCBsKQogewogCXN0cnVjdCB0cG1fdGlzX2RhdGEgKnByaXYgPSBkZXZfZ2V0X2RydmRhdGEoJmNo aXAtPmRldik7CiAKLQl0cG1fdGlzX3dyaXRlOChwcml2LCBUUE1fQUNDRVNTKGwpLCBUUE1fQUND RVNTX0FDVElWRV9MT0NBTElUWSk7CisJbXV0ZXhfbG9jaygmcHJpdi0+bG9jYWxpdHlfY291bnRf bXV0ZXgpOworCXByaXYtPmxvY2FsaXR5X2NvdW50LS07CisJaWYgKHByaXYtPmxvY2FsaXR5X2Nv dW50ID09IDApCisJCXRwbV90aXNfcmVsZWFzZV9sb2NhbGl0eV9sb2NrZWQocHJpdiwgbCk7CisJ bXV0ZXhfdW5sb2NrKCZwcml2LT5sb2NhbGl0eV9jb3VudF9tdXRleCk7CiAKIAlyZXR1cm4gMDsK IH0KIAotc3RhdGljIGludCByZXF1ZXN0X2xvY2FsaXR5KHN0cnVjdCB0cG1fY2hpcCAqY2hpcCwg aW50IGwpCitzdGF0aWMgaW50IHRwbV90aXNfcmVxdWVzdF9sb2NhbGl0eV9sb2NrZWQoc3RydWN0 IHRwbV9jaGlwICpjaGlwLCBpbnQgbCkKIHsKIAlzdHJ1Y3QgdHBtX3Rpc19kYXRhICpwcml2ID0g ZGV2X2dldF9kcnZkYXRhKCZjaGlwLT5kZXYpOwogCXVuc2lnbmVkIGxvbmcgc3RvcCwgdGltZW91 dDsKQEAgLTIxNSw2ICsyMjYsMjAgQEAgc3RhdGljIGludCByZXF1ZXN0X2xvY2FsaXR5KHN0cnVj dCB0cG1fY2hpcCAqY2hpcCwgaW50IGwpCiAJcmV0dXJuIC0xOwogfQogCitzdGF0aWMgaW50IHRw bV90aXNfcmVxdWVzdF9sb2NhbGl0eShzdHJ1Y3QgdHBtX2NoaXAgKmNoaXAsIGludCBsKQorewor CXN0cnVjdCB0cG1fdGlzX2RhdGEgKnByaXYgPSBkZXZfZ2V0X2RydmRhdGEoJmNoaXAtPmRldik7 CisJaW50IHJldCA9IDA7CisKKwltdXRleF9sb2NrKCZwcml2LT5sb2NhbGl0eV9jb3VudF9tdXRl eCk7CisJaWYgKHByaXYtPmxvY2FsaXR5X2NvdW50ID09IDApCisJCXJldCA9IHRwbV90aXNfcmVx dWVzdF9sb2NhbGl0eV9sb2NrZWQoY2hpcCwgbCk7CisJaWYgKCFyZXQpCisJCXByaXYtPmxvY2Fs aXR5X2NvdW50Kys7CisJbXV0ZXhfdW5sb2NrKCZwcml2LT5sb2NhbGl0eV9jb3VudF9tdXRleCk7 CisJcmV0dXJuIHJldDsKK30KKwogc3RhdGljIHU4IHRwbV90aXNfc3RhdHVzKHN0cnVjdCB0cG1f Y2hpcCAqY2hpcCkKIHsKIAlzdHJ1Y3QgdHBtX3Rpc19kYXRhICpwcml2ID0gZGV2X2dldF9kcnZk YXRhKCZjaGlwLT5kZXYpOwpAQCAtNjgyLDcgKzcwNyw3IEBAIHN0YXRpYyBpbnQgcHJvYmVfaXRw bShzdHJ1Y3QgdHBtX2NoaXAgKmNoaXApCiAJaWYgKHZlbmRvciAhPSBUUE1fVklEX0lOVEVMKQog CQlyZXR1cm4gMDsKIAotCWlmIChyZXF1ZXN0X2xvY2FsaXR5KGNoaXAsIDApICE9IDApCisJaWYg KHRwbV90aXNfcmVxdWVzdF9sb2NhbGl0eShjaGlwLCAwKSAhPSAwKQogCQlyZXR1cm4gLUVCVVNZ OwogCiAJcmMgPSB0cG1fdGlzX3NlbmRfZGF0YShjaGlwLCBjbWRfZ2V0dGlja3MsIGxlbik7CkBA IC03MDMsNyArNzI4LDcgQEAgc3RhdGljIGludCBwcm9iZV9pdHBtKHN0cnVjdCB0cG1fY2hpcCAq Y2hpcCkKIAogb3V0OgogCXRwbV90aXNfcmVhZHkoY2hpcCk7Ci0JcmVsZWFzZV9sb2NhbGl0eShj aGlwLCBwcml2LT5sb2NhbGl0eSk7CisJdHBtX3Rpc19yZWxlYXNlX2xvY2FsaXR5KGNoaXAsIHBy aXYtPmxvY2FsaXR5KTsKIAogCXJldHVybiByYzsKIH0KQEAgLTc2Miw3ICs3ODcsNyBAQCBzdGF0 aWMgaW50IHRwbV90aXNfZ2VuX2ludGVycnVwdChzdHJ1Y3QgdHBtX2NoaXAgKmNoaXApCiAJY2Fw X3QgY2FwOwogCWludCByZXQ7CiAKLQlyZXQgPSByZXF1ZXN0X2xvY2FsaXR5KGNoaXAsIDApOwor CXJldCA9IHRwbV90aXNfcmVxdWVzdF9sb2NhbGl0eShjaGlwLCAwKTsKIAlpZiAocmV0IDwgMCkK IAkJcmV0dXJuIHJldDsKIApAQCAtNzcxLDcgKzc5Niw3IEBAIHN0YXRpYyBpbnQgdHBtX3Rpc19n ZW5faW50ZXJydXB0KHN0cnVjdCB0cG1fY2hpcCAqY2hpcCkKIAllbHNlCiAJCXJldCA9IHRwbTFf Z2V0Y2FwKGNoaXAsIFRQTV9DQVBfUFJPUF9USVNfVElNRU9VVCwgJmNhcCwgZGVzYywgMCk7CiAK LQlyZWxlYXNlX2xvY2FsaXR5KGNoaXAsIDApOworCXRwbV90aXNfcmVsZWFzZV9sb2NhbGl0eShj aGlwLCAwKTsKIAogCXJldHVybiByZXQ7CiB9CkBAIC03OTYsMzMgKzgyMSwzMyBAQCBzdGF0aWMg aW50IHRwbV90aXNfcHJvYmVfaXJxX3NpbmdsZShzdHJ1Y3QgdHBtX2NoaXAgKmNoaXAsIHUzMiBp bnRtYXNrLAogCX0KIAlwcml2LT5pcnEgPSBpcnE7CiAKLQlyYyA9IHJlcXVlc3RfbG9jYWxpdHko Y2hpcCwgMCk7CisJcmMgPSB0cG1fdGlzX3JlcXVlc3RfbG9jYWxpdHkoY2hpcCwgMCk7CiAJaWYg KHJjIDwgMCkKIAkJcmV0dXJuIHJjOwogCiAJcmMgPSB0cG1fdGlzX3JlYWQ4KHByaXYsIFRQTV9J TlRfVkVDVE9SKHByaXYtPmxvY2FsaXR5KSwKIAkJCSAgICZvcmlnaW5hbF9pbnRfdmVjKTsKIAlp ZiAocmMgPCAwKSB7Ci0JCXJlbGVhc2VfbG9jYWxpdHkoY2hpcCwgcHJpdi0+bG9jYWxpdHkpOwor CQl0cG1fdGlzX3JlbGVhc2VfbG9jYWxpdHkoY2hpcCwgcHJpdi0+bG9jYWxpdHkpOwogCQlyZXR1 cm4gcmM7CiAJfQogCiAJcmMgPSB0cG1fdGlzX3dyaXRlOChwcml2LCBUUE1fSU5UX1ZFQ1RPUihw cml2LT5sb2NhbGl0eSksIGlycSk7CiAJaWYgKHJjIDwgMCkgewotCQlyZWxlYXNlX2xvY2FsaXR5 KGNoaXAsIHByaXYtPmxvY2FsaXR5KTsKKwkJdHBtX3Rpc19yZWxlYXNlX2xvY2FsaXR5KGNoaXAs IHByaXYtPmxvY2FsaXR5KTsKIAkJcmV0dXJuIHJjOwogCX0KIAogCXJjID0gdHBtX3Rpc19yZWFk MzIocHJpdiwgVFBNX0lOVF9TVEFUVVMocHJpdi0+bG9jYWxpdHkpLCAmaW50X3N0YXR1cyk7CiAJ aWYgKHJjIDwgMCkgewotCQlyZWxlYXNlX2xvY2FsaXR5KGNoaXAsIHByaXYtPmxvY2FsaXR5KTsK KwkJdHBtX3Rpc19yZWxlYXNlX2xvY2FsaXR5KGNoaXAsIHByaXYtPmxvY2FsaXR5KTsKIAkJcmV0 dXJuIHJjOwogCX0KIAogCS8qIENsZWFyIGFsbCBleGlzdGluZyAqLwogCXJjID0gdHBtX3Rpc193 cml0ZTMyKHByaXYsIFRQTV9JTlRfU1RBVFVTKHByaXYtPmxvY2FsaXR5KSwgaW50X3N0YXR1cyk7 CiAJaWYgKHJjIDwgMCkgewotCQlyZWxlYXNlX2xvY2FsaXR5KGNoaXAsIHByaXYtPmxvY2FsaXR5 KTsKKwkJdHBtX3Rpc19yZWxlYXNlX2xvY2FsaXR5KGNoaXAsIHByaXYtPmxvY2FsaXR5KTsKIAkJ cmV0dXJuIHJjOwogCX0KIApAQCAtODMwLDExICs4NTUsMTEgQEAgc3RhdGljIGludCB0cG1fdGlz X3Byb2JlX2lycV9zaW5nbGUoc3RydWN0IHRwbV9jaGlwICpjaGlwLCB1MzIgaW50bWFzaywKIAly YyA9IHRwbV90aXNfd3JpdGUzMihwcml2LCBUUE1fSU5UX0VOQUJMRShwcml2LT5sb2NhbGl0eSks CiAJCQkgICAgIGludG1hc2sgfCBUUE1fR0xPQkFMX0lOVF9FTkFCTEUpOwogCWlmIChyYyA8IDAp IHsKLQkJcmVsZWFzZV9sb2NhbGl0eShjaGlwLCBwcml2LT5sb2NhbGl0eSk7CisJCXRwbV90aXNf cmVsZWFzZV9sb2NhbGl0eShjaGlwLCBwcml2LT5sb2NhbGl0eSk7CiAJCXJldHVybiByYzsKIAl9 CiAKLQlyZWxlYXNlX2xvY2FsaXR5KGNoaXAsIHByaXYtPmxvY2FsaXR5KTsKKwl0cG1fdGlzX3Jl bGVhc2VfbG9jYWxpdHkoY2hpcCwgcHJpdi0+bG9jYWxpdHkpOwogCWNsZWFyX2JpdChUUE1fVElT X0lSUV9URVNURUQsICZwcml2LT5mbGFncyk7CiAKIAkvKiBHZW5lcmF0ZSBhbiBpbnRlcnJ1cHQg YnkgaGF2aW5nIHRoZSBjb3JlIGNhbGwgdGhyb3VnaCB0bwpAQCAtOTcwLDggKzk5NSw4IEBAIHN0 YXRpYyBjb25zdCBzdHJ1Y3QgdHBtX2NsYXNzX29wcyB0cG1fdGlzID0gewogCS5yZXFfY29tcGxl dGVfbWFzayA9IFRQTV9TVFNfREFUQV9BVkFJTCB8IFRQTV9TVFNfVkFMSUQsCiAJLnJlcV9jb21w bGV0ZV92YWwgPSBUUE1fU1RTX0RBVEFfQVZBSUwgfCBUUE1fU1RTX1ZBTElELAogCS5yZXFfY2Fu Y2VsZWQgPSB0cG1fdGlzX3JlcV9jYW5jZWxlZCwKLQkucmVxdWVzdF9sb2NhbGl0eSA9IHJlcXVl c3RfbG9jYWxpdHksCi0JLnJlbGlucXVpc2hfbG9jYWxpdHkgPSByZWxlYXNlX2xvY2FsaXR5LAor CS5yZXF1ZXN0X2xvY2FsaXR5ID0gdHBtX3Rpc19yZXF1ZXN0X2xvY2FsaXR5LAorCS5yZWxpbnF1 aXNoX2xvY2FsaXR5ID0gdHBtX3Rpc19yZWxlYXNlX2xvY2FsaXR5LAogCS5jbGtfZW5hYmxlID0g dHBtX3Rpc19jbGtydW5fZW5hYmxlLAogfTsKIApAQCAtMTAwNSw2ICsxMDMwLDggQEAgaW50IHRw bV90aXNfY29yZV9pbml0KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IHRwbV90aXNfZGF0YSAq cHJpdiwgaW50IGlycSwKIAlwcml2LT50aW1lb3V0X21pbiA9IFRQTV9USU1FT1VUX1VTRUNTX01J TjsKIAlwcml2LT50aW1lb3V0X21heCA9IFRQTV9USU1FT1VUX1VTRUNTX01BWDsKIAlwcml2LT5w aHlfb3BzID0gcGh5X29wczsKKwlwcml2LT5sb2NhbGl0eV9jb3VudCA9IDA7CisJbXV0ZXhfaW5p dCgmcHJpdi0+bG9jYWxpdHlfY291bnRfbXV0ZXgpOwogCiAJZGV2X3NldF9kcnZkYXRhKCZjaGlw LT5kZXYsIHByaXYpOwogCkBAIC0xMDgzLDE0ICsxMTEwLDE0IEBAIGludCB0cG1fdGlzX2NvcmVf aW5pdChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCB0cG1fdGlzX2RhdGEgKnByaXYsIGludCBp cnEsCiAKIAlpbnRtYXNrICY9IH5UUE1fR0xPQkFMX0lOVF9FTkFCTEU7CiAKLQlyYyA9IHJlcXVl c3RfbG9jYWxpdHkoY2hpcCwgMCk7CisJcmMgPSB0cG1fdGlzX3JlcXVlc3RfbG9jYWxpdHkoY2hp cCwgMCk7CiAJaWYgKHJjIDwgMCkgewogCQlyYyA9IC1FTk9ERVY7CiAJCWdvdG8gb3V0X2VycjsK IAl9CiAKIAl0cG1fdGlzX3dyaXRlMzIocHJpdiwgVFBNX0lOVF9FTkFCTEUocHJpdi0+bG9jYWxp dHkpLCBpbnRtYXNrKTsKLQlyZWxlYXNlX2xvY2FsaXR5KGNoaXAsIDApOworCXRwbV90aXNfcmVs ZWFzZV9sb2NhbGl0eShjaGlwLCAwKTsKIAogCXJjID0gdHBtX2NoaXBfc3RhcnQoY2hpcCk7CiAJ aWYgKHJjKQpAQCAtMTEyNCwxMyArMTE1MSwxMyBAQCBpbnQgdHBtX3Rpc19jb3JlX2luaXQoc3Ry dWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgdHBtX3Rpc19kYXRhICpwcml2LCBpbnQgaXJxLAogCQkg KiBwcm9wZXIgdGltZW91dHMgZm9yIHRoZSBkcml2ZXIuCiAJCSAqLwogCi0JCXJjID0gcmVxdWVz dF9sb2NhbGl0eShjaGlwLCAwKTsKKwkJcmMgPSB0cG1fdGlzX3JlcXVlc3RfbG9jYWxpdHkoY2hp cCwgMCk7CiAJCWlmIChyYyA8IDApCiAJCQlnb3RvIG91dF9lcnI7CiAKIAkJcmMgPSB0cG1fZ2V0 X3RpbWVvdXRzKGNoaXApOwogCi0JCXJlbGVhc2VfbG9jYWxpdHkoY2hpcCwgMCk7CisJCXRwbV90 aXNfcmVsZWFzZV9sb2NhbGl0eShjaGlwLCAwKTsKIAogCQlpZiAocmMpIHsKIAkJCWRldl9lcnIo ZGV2LCAiQ291bGQgbm90IGdldCBUUE0gdGltZW91dHMgYW5kIGR1cmF0aW9uc1xuIik7CkBAIC0x MTUwLDExICsxMTc3LDExIEBAIGludCB0cG1fdGlzX2NvcmVfaW5pdChzdHJ1Y3QgZGV2aWNlICpk ZXYsIHN0cnVjdCB0cG1fdGlzX2RhdGEgKnByaXYsIGludCBpcnEsCiAJCQlkZXZfZXJyKCZjaGlw LT5kZXYsIEZXX0JVRwogCQkJCQkiVFBNIGludGVycnVwdCBub3Qgd29ya2luZywgcG9sbGluZyBp bnN0ZWFkXG4iKTsKIAotCQkJcmMgPSByZXF1ZXN0X2xvY2FsaXR5KGNoaXAsIDApOworCQkJcmMg PSB0cG1fdGlzX3JlcXVlc3RfbG9jYWxpdHkoY2hpcCwgMCk7CiAJCQlpZiAocmMgPCAwKQogCQkJ CWdvdG8gb3V0X2VycjsKIAkJCWRpc2FibGVfaW50ZXJydXB0cyhjaGlwKTsKLQkJCXJlbGVhc2Vf bG9jYWxpdHkoY2hpcCwgMCk7CisJCQl0cG1fdGlzX3JlbGVhc2VfbG9jYWxpdHkoY2hpcCwgMCk7 CiAJCX0KIAl9CiAKQEAgLTEyMjEsMTMgKzEyNDgsMTMgQEAgaW50IHRwbV90aXNfcmVzdW1lKHN0 cnVjdCBkZXZpY2UgKmRldikKIAkgKiBhbiBlcnJvciBjb2RlIGJ1dCBmb3IgdW5rbm93biByZWFz b24gaXQgaXNuJ3QgaGFuZGxlZC4KIAkgKi8KIAlpZiAoIShjaGlwLT5mbGFncyAmIFRQTV9DSElQ X0ZMQUdfVFBNMikpIHsKLQkJcmV0ID0gcmVxdWVzdF9sb2NhbGl0eShjaGlwLCAwKTsKKwkJcmV0 ID0gdHBtX3Rpc19yZXF1ZXN0X2xvY2FsaXR5KGNoaXAsIDApOwogCQlpZiAocmV0IDwgMCkKIAkJ CXJldHVybiByZXQ7CiAKIAkJdHBtMV9kb19zZWxmdGVzdChjaGlwKTsKIAotCQlyZWxlYXNlX2xv Y2FsaXR5KGNoaXAsIDApOworCQl0cG1fdGlzX3JlbGVhc2VfbG9jYWxpdHkoY2hpcCwgMCk7CiAJ fQogCiAJcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2NoYXIvdHBtL3RwbV90aXNfY29y ZS5oIGIvZHJpdmVycy9jaGFyL3RwbS90cG1fdGlzX2NvcmUuaAppbmRleCAyZGVlZjExYzg4ZGIu LjEzYmRjZjM4ZTU2ZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9jaGFyL3RwbS90cG1fdGlzX2NvcmUu aAorKysgYi9kcml2ZXJzL2NoYXIvdHBtL3RwbV90aXNfY29yZS5oCkBAIC05MSw2ICs5MSw4IEBA IGVudW0gdHBtX3Rpc19mbGFncyB7CiAKIHN0cnVjdCB0cG1fdGlzX2RhdGEgewogCXUxNiBtYW51 ZmFjdHVyZXJfaWQ7CisJc3RydWN0IG11dGV4IGxvY2FsaXR5X2NvdW50X211dGV4OworCXVuc2ln bmVkIGludCBsb2NhbGl0eV9jb3VudDsKIAlpbnQgbG9jYWxpdHk7CiAJaW50IGlycTsKIAl1bnNp Z25lZCBpbnQgaW50X21hc2s7Ci0tIAoyLjM2LjEKCg==