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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 22D3EC021B8 for ; Wed, 26 Feb 2025 17:59:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=jKlMz+19wp6nTyrfwR/9TMZ067aL5UNsrJiEDXh1tpM=; b=k8Q6AiMymfxgwL ARmcDM6OWA+JqajmYfjkpiqImKVtUVl24D7a4hD+geNV8B69L0S0TCON3ZBGGlGxlsGfR9ZCMPS/o ihu9oAM1noGVHioXGMI0g8noUgy5WTPXNfU37Jd/laOAoF5rjS1KxhL5KzcSOOgrLY0O1SP5Gu5Bj k1IGvfEB/kaN1103w0K7cDhe9finJ41/5CkaY7czLadIeO64cJQQ6TZ/KoDbskFiVxGKsLMbjgbcG mSUZR27DfLyql0uiqUTQ87L6QSB3g3VKDm8Zf0/xo+bHJZ7CQDiiX3R3ROQ1cD9H8hi1M9hQt37+h PGysqF4nEdUsdf8/W70w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tnLgq-00000004oVg-3Ykn; Wed, 26 Feb 2025 17:59:24 +0000 Received: from out-176.mta0.migadu.com ([91.218.175.176]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tnLgo-00000004oUi-35wh for kvm-riscv@lists.infradead.org; Wed, 26 Feb 2025 17:59:24 +0000 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1740592754; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Xnpeo/MlQO6iHqCTtHwM8sfRxGjTdtQ4Ev/Utiqus5s=; b=aypg9SnGZewMfiVKEDUW9MxvldT9tW3Nbxj4MThu2JG+F+k8DaJ3n2Y1TSiVboTifE9syM 4hY7eT8OSg5jJvtomeyQ6+iXvNlNiGmcUu/GzRus1cgTMsb/dgI/oiXHvL2rzGL64H9sgQ Uwj8u5zEGu6GXEqJk5FdEKt2lJRi/pg= From: Andrew Jones To: kvm-riscv@lists.infradead.org Cc: atishp@rivosinc.com, cleger@rivosinc.com, jamestiotio@gmail.com Subject: [kvm-unit-tests PATCH 11/10] riscv: sbi: Add fwft pte_hw_ad_updating test Date: Wed, 26 Feb 2025 18:59:12 +0100 Message-ID: <20250226175912.30239-2-andrew.jones@linux.dev> In-Reply-To: <20250221155533.123418-12-andrew.jones@linux.dev> References: <20250221155533.123418-12-andrew.jones@linux.dev> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250226_095923_118088_F53C1163 X-CRM114-Status: GOOD ( 14.08 ) X-BeenThere: kvm-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "kvm-riscv" Errors-To: kvm-riscv-bounces+kvm-riscv=archiver.kernel.org@lists.infradead.org QWRkIFNCSSBGV0ZUIHRlc3RzIGZvciB0aGUgUFRFX0hXX0FEX1VQREFUSU5HIGZlYXR1cmUuCgpT aWduZWQtb2ZmLWJ5OiBBbmRyZXcgSm9uZXMgPGFuZHJldy5qb25lc0BsaW51eC5kZXY+Ci0tLQog bGliL3Jpc2N2L2FzbS9tbXUuaCB8ICAgMyArCiBsaWIvcmlzY3YvbW11LmMgICAgIHwgICA3ICsr CiByaXNjdi9zYmktZndmdC5jICAgIHwgMTYyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDE3MiBpbnNlcnRpb25zKCspCgpkaWZm IC0tZ2l0IGEvbGliL3Jpc2N2L2FzbS9tbXUuaCBiL2xpYi9yaXNjdi9hc20vbW11LmgKaW5kZXgg MjhjMzMyZjExNDk2Li40Y2RjMWY3N2Q4ODQgMTAwNjQ0Ci0tLSBhL2xpYi9yaXNjdi9hc20vbW11 LmgKKysrIGIvbGliL3Jpc2N2L2FzbS9tbXUuaApAQCAtMzIsNCArMzIsNyBAQCBzdGF0aWMgaW5s aW5lIHZvaWQgbG9jYWxfZmx1c2hfdGxiX3BhZ2UodW5zaWduZWQgbG9uZyBhZGRyKQogICovCiBw dGVfdCAqZ2V0X3B0ZShwZ2RfdCAqcGd0YWJsZSwgdWludHB0cl90IHZhZGRyKTsKIAorLyogVXBk YXRlIHRoZSBwZ3Byb3QgdG8gQHByb3QgZm9yIHRoZSBwdGUgb2YgdGhlIGNvcnJlc3BvbmRpbmcg QGFkZHIgKi8KK3ZvaWQgcHRlX3VwZGF0ZV9wcm90KHVuc2lnbmVkIGxvbmcgYWRkciwgcHRldmFs X3QgcHJvdCk7CisKICNlbmRpZiAvKiBfQVNNUklTQ1ZfTU1VX0hfICovCmRpZmYgLS1naXQgYS9s aWIvcmlzY3YvbW11LmMgYi9saWIvcmlzY3YvbW11LmMKaW5kZXggNTc3YzY2YWE3N2JhLi40NDM4 MzI3ZjZmZmUgMTAwNjQ0Ci0tLSBhL2xpYi9yaXNjdi9tbXUuYworKysgYi9saWIvcmlzY3YvbW11 LmMKQEAgLTU0LDYgKzU0LDEzIEBAIHB0ZV90ICpnZXRfcHRlKHBnZF90ICpwZ3RhYmxlLCB1aW50 cHRyX3QgdmFkZHIpCiAJcmV0dXJuIHB0ZXA7CiB9CiAKK3ZvaWQgcHRlX3VwZGF0ZV9wcm90KHVu c2lnbmVkIGxvbmcgYWRkciwgcHRldmFsX3QgcHJvdCkKK3sKKwlwdGVfdCAqcHRlcCA9IGdldF9w dGUoY3VycmVudF9wZ3RhYmxlKCksIGFkZHIpOworCSpwdGVwID0gX19wdGUocHRlX3ZhbCgqcHRl cCkgfCBwcm90KTsKKwlsb2NhbF9mbHVzaF90bGJfcGFnZShhZGRyKTsKK30KKwogc3RhdGljIHB0 ZXZhbF90ICpfX2luc3RhbGxfcGFnZShwZ2RfdCAqcGd0YWJsZSwgcGh5c19hZGRyX3QgcGFkZHIs CiAJCQkJdWludHB0cl90IHZhZGRyLCBwZ3Byb3RfdCBwcm90LCBib29sIGZsdXNoKQogewpkaWZm IC0tZ2l0IGEvcmlzY3Yvc2JpLWZ3ZnQuYyBiL3Jpc2N2L3NiaS1md2Z0LmMKaW5kZXggMGE3MDE5 MmIxZGE1Li4yYjY1Mjg1YzgyZmMgMTAwNjQ0Ci0tLSBhL3Jpc2N2L3NiaS1md2Z0LmMKKysrIGIv cmlzY3Yvc2JpLWZ3ZnQuYwpAQCAtNSw5ICs1LDEyIEBACiAgKiBDb3B5cmlnaHQgKEMpIDIwMjQs IFJpdm9zIEluYy4sIENsw6ltZW50IEzDqWdlciA8Y2xlZ2VyQHJpdm9zaW5jLmNvbT4KICAqLwog I2luY2x1ZGUgPGxpYmNmbGF0Lmg+CisjaW5jbHVkZSA8YWxsb2MuaD4KICNpbmNsdWRlIDxzdGRs aWIuaD4KIAogI2luY2x1ZGUgPGFzbS9jc3IuaD4KKyNpbmNsdWRlIDxhc20vaW8uaD4KKyNpbmNs dWRlIDxhc20vbW11Lmg+CiAjaW5jbHVkZSA8YXNtL3Byb2Nlc3Nvci5oPgogI2luY2x1ZGUgPGFz bS9wdHJhY2UuaD4KICNpbmNsdWRlIDxhc20vc2JpLmg+CkBAIC0xNjAsNiArMTYzLDE2NCBAQCBz dGF0aWMgdm9pZCBmd2Z0X2NoZWNrX21pc2FsaWduZWRfZXhjX2RlbGVnKHZvaWQpCiAJcmVwb3J0 X3ByZWZpeF9wb3AoKTsKIH0KIAorc3RhdGljIGJvb2wgYWR1ZV90cmlnZ2VyZWRfcmVhZCwgYWR1 ZV90cmlnZ2VyZWRfd3JpdGU7CisKK3N0YXRpYyB2b2lkIGFkdWVfcmVhZF9oYW5kbGVyKHN0cnVj dCBwdF9yZWdzICpyZWdzKQoreworCWFkdWVfdHJpZ2dlcmVkX3JlYWQgPSB0cnVlOworCXB0ZV91 cGRhdGVfcHJvdChyZWdzLT5iYWRhZGRyLCBfUEFHRV9BQ0NFU1NFRCk7Cit9CisKK3N0YXRpYyB2 b2lkIGFkdWVfd3JpdGVfaGFuZGxlcihzdHJ1Y3QgcHRfcmVncyAqcmVncykKK3sKKwlhZHVlX3Ry aWdnZXJlZF93cml0ZSA9IHRydWU7CisJcHRlX3VwZGF0ZV9wcm90KHJlZ3MtPmJhZGFkZHIsIF9Q QUdFX0FDQ0VTU0VEIHwgX1BBR0VfRElSVFkpOworfQorCitzdGF0aWMgYm9vbCBhZHVlX2NoZWNr X3B0ZShwdGV2YWxfdCBwdGUsIGJvb2wgd3JpdGUpCit7CisJcmV0dXJuIChwdGUgJiAoX1BBR0Vf QUNDRVNTRUQgfCBfUEFHRV9ESVJUWSkpID09IChfUEFHRV9BQ0NFU1NFRCB8ICh3cml0ZSA/IF9Q QUdFX0RJUlRZIDogMCkpOworfQorCitzdGF0aWMgdm9pZCBfX2FkdWVfY2hlY2soYm9vbCBod191 cGRhdGluZ19lbmFibGVkLCBib29sIHdyaXRlKQoreworCXVuc2lnbmVkIGxvbmcgKnB0ciA9IG1h bGxvYyhzaXplb2YodW5zaWduZWQgbG9uZykpOworCXB0ZV90ICpwdGVwID0gZ2V0X3B0ZShjdXJy ZW50X3BndGFibGUoKSwgKHVpbnRwdHJfdClwdHIpOworCWJvb2wgKnRyaWdnZXJlZDsKKwljb25z dCBjaGFyICpvcDsKKworCVdSSVRFX09OQ0UoYWR1ZV90cmlnZ2VyZWRfcmVhZCwgZmFsc2UpOwor CVdSSVRFX09OQ0UoYWR1ZV90cmlnZ2VyZWRfd3JpdGUsIGZhbHNlKTsKKworCSpwdGVwID0gX19w dGUocHRlX3ZhbCgqcHRlcCkgJiB+KF9QQUdFX0FDQ0VTU0VEIHwgX1BBR0VfRElSVFkpKTsKKwls b2NhbF9mbHVzaF90bGJfcGFnZSgodWludHB0cl90KXB0cik7CisKKwlpZiAod3JpdGUpIHsKKwkJ b3AgPSAid3JpdGUiOworCQl0cmlnZ2VyZWQgPSAmYWR1ZV90cmlnZ2VyZWRfd3JpdGU7CisJCXdy aXRlbCgweGRlYWRiZWVmLCBwdHIpOworCX0gZWxzZSB7CisJCW9wID0gInJlYWQiOworCQl0cmln Z2VyZWQgPSAmYWR1ZV90cmlnZ2VyZWRfcmVhZDsKKwkJcmVhZGwocHRyKTsKKwl9CisKKwlwdGVw ID0gZ2V0X3B0ZShjdXJyZW50X3BndGFibGUoKSwgKHVpbnRwdHJfdClwdHIpOworCisJcmVwb3J0 KGh3X3VwZGF0aW5nX2VuYWJsZWQgIT0gKnRyaWdnZXJlZCAmJgorCSAgICAgICBhZHVlX2NoZWNr X3B0ZShwdGVfdmFsKCpwdGVwKSwgd3JpdGUpLCAiJXMgJXMiLAorCSAgICAgICBod191cGRhdGlu Z19lbmFibGVkID8gImh3IHVwZGF0aW5nIGVuYWJsZWQiIDogImh3IHVwZGF0aW5nIGRpc2FibGVk Iiwgb3ApOworCisJZnJlZShwdHIpOworfQorCitzdGF0aWMgdm9pZCBhZHVlX2NoZWNrKGJvb2wg aHdfdXBkYXRpbmdfZW5hYmxlZCkKK3sKKwlfX2FkdWVfY2hlY2soaHdfdXBkYXRpbmdfZW5hYmxl ZCwgZmFsc2UpOworCV9fYWR1ZV9jaGVjayhod191cGRhdGluZ19lbmFibGVkLCB0cnVlKTsKK30K Kworc3RhdGljIHZvaWQgZndmdF9jaGVja19wdGVfYWRfaHdfdXBkYXRpbmcodm9pZCkKK3sKKwlz dHJ1Y3Qgc2JpcmV0IHJldDsKKwlib29sIGVuYWJsZWQ7CisKKwlyZXBvcnRfcHJlZml4X3B1c2go InB0ZV9hZF9od191cGRhdGluZyIpOworCisJcmV0ID0gZndmdF9nZXQoU0JJX0ZXRlRfUFRFX0FE X0hXX1VQREFUSU5HKTsKKwlpZiAocmV0LmVycm9yID09IFNCSV9FUlJfTk9UX1NVUFBPUlRFRCkg eworCQlyZXBvcnRfc2tpcCgibm90IHN1cHBvcnRlZCBieSBwbGF0Zm9ybSIpOworCQlyZXR1cm47 CisJfSBlbHNlIGlmICghc2JpcmV0X3JlcG9ydF9lcnJvcigmcmV0LCBTQklfU1VDQ0VTUywgImdl dCIpKSB7CisJCS8qIE5vdCBtdWNoIHdlIGNhbiBkbyB3aXRob3V0IGEgd29ya2luZyBnZXQuLi4g Ki8KKwkJcmV0dXJuOworCX0KKworCWVuYWJsZWQgPSAhIXJldC52YWx1ZTsKKwlyZXBvcnQoIWVu YWJsZWQsICJyZXNldHMgdG8gMCIpOworCisJaW5zdGFsbF9leGNlcHRpb25faGFuZGxlcihFWENf TE9BRF9QQUdFX0ZBVUxULCBhZHVlX3JlYWRfaGFuZGxlcik7CisJaW5zdGFsbF9leGNlcHRpb25f aGFuZGxlcihFWENfU1RPUkVfUEFHRV9GQVVMVCwgYWR1ZV93cml0ZV9oYW5kbGVyKTsKKworCWFk dWVfY2hlY2soZW5hYmxlZCk7CisKKwlyZXQgPSBmd2Z0X3NldChTQklfRldGVF9QVEVfQURfSFdf VVBEQVRJTkcsICFlbmFibGVkLCAwKTsKKwlpZiAoIXNiaXJldF9yZXBvcnRfZXJyb3IoJnJldCwg U0JJX1NVQ0NFU1MsICJzZXQgdG8gJWQiLCAhZW5hYmxlZCkpCisJCWdvdG8gaW52YWxfdGVzdHM7 CisJZWxzZQorCQllbmFibGVkID0gIWVuYWJsZWQ7CisKKwlyZXQgPSBmd2Z0X2dldChTQklfRldG VF9QVEVfQURfSFdfVVBEQVRJTkcpOworCXNiaXJldF9yZXBvcnQoJnJldCwgU0JJX1NVQ0NFU1Ms IGVuYWJsZWQsICJnZXQgJWQiLCBlbmFibGVkKTsKKworCWFkdWVfY2hlY2soZW5hYmxlZCk7CisK KwlyZXQgPSBmd2Z0X3NldChTQklfRldGVF9QVEVfQURfSFdfVVBEQVRJTkcsICFlbmFibGVkLCAw KTsKKwlpZiAoIXNiaXJldF9yZXBvcnRfZXJyb3IoJnJldCwgU0JJX1NVQ0NFU1MsICJzZXQgdG8g JWQgYWdhaW4iLCAhZW5hYmxlZCkpCisJCWdvdG8gaW52YWxfdGVzdHM7CisJZWxzZQorCQllbmFi bGVkID0gIWVuYWJsZWQ7CisKKwlyZXQgPSBmd2Z0X2dldChTQklfRldGVF9QVEVfQURfSFdfVVBE QVRJTkcpOworCXNiaXJldF9yZXBvcnQoJnJldCwgU0JJX1NVQ0NFU1MsIGVuYWJsZWQsICJnZXQg JWQgYWdhaW4iLCBlbmFibGVkKTsKKworCWFkdWVfY2hlY2soZW5hYmxlZCk7CisKKyNpZiBfX3Jp c2N2X3hsZW4gPiAzMgorCXJldCA9IGZ3ZnRfc2V0X3JhdyhCSVQoMzIpIHwgU0JJX0ZXRlRfUFRF X0FEX0hXX1VQREFUSU5HLCAhZW5hYmxlZCwgMCk7CisJaWYgKCFzYmlyZXRfcmVwb3J0X2Vycm9y KCZyZXQsIFNCSV9TVUNDRVNTLCAic2V0IHRvICVkIHdpdGggaGlnaCBmZWF0dXJlIGJpdHMgc2V0 IiwgIWVuYWJsZWQpKQorCQlnb3RvIGludmFsX3Rlc3RzOworCWVsc2UKKwkJZW5hYmxlZCA9ICFl bmFibGVkOworCisJcmV0ID0gZndmdF9nZXQoU0JJX0ZXRlRfUFRFX0FEX0hXX1VQREFUSU5HKTsK KwlzYmlyZXRfcmVwb3J0KCZyZXQsIFNCSV9TVUNDRVNTLCBlbmFibGVkLCAiZ2V0ICVkIGFmdGVy IHNldCB3aXRoIGhpZ2ggZmVhdHVyZSBiaXRzIHNldCIsIGVuYWJsZWQpOworCisJYWR1ZV9jaGVj ayhlbmFibGVkKTsKKyNlbmRpZgorCisJcmV0ID0gZndmdF9zZXQoU0JJX0ZXRlRfUFRFX0FEX0hX X1VQREFUSU5HLCAhZW5hYmxlZCwgMSk7CisJaWYgKCFzYmlyZXRfcmVwb3J0X2Vycm9yKCZyZXQs IFNCSV9TVUNDRVNTLCAic2V0IHRvICVkIHdpdGggbG9jayIsICFlbmFibGVkKSkKKwkJZ290byBp bnZhbF90ZXN0czsKKwllbHNlCisJCWVuYWJsZWQgPSAhZW5hYmxlZDsKKworCXJldCA9IGZ3ZnRf Z2V0KFNCSV9GV0ZUX1BURV9BRF9IV19VUERBVElORyk7CisJc2JpcmV0X3JlcG9ydCgmcmV0LCBT QklfU1VDQ0VTUywgZW5hYmxlZCwgImdldCAlZCBhZnRlciBzZXQgd2l0aCBsb2NrIiwgZW5hYmxl ZCk7CisKKwlhZHVlX2NoZWNrKGVuYWJsZWQpOworCisJcmV0ID0gZndmdF9zZXQoU0JJX0ZXRlRf UFRFX0FEX0hXX1VQREFUSU5HLCAhZW5hYmxlZCwgMCk7CisJc2JpcmV0X3JlcG9ydF9lcnJvcigm cmV0LCBTQklfRVJSX0RFTklFRF9MT0NLRUQsICJzZXQgbG9ja2VkIHRvICVkIHdpdGhvdXQgbG9j ayIsICFlbmFibGVkKTsKKworCXJldCA9IGZ3ZnRfc2V0KFNCSV9GV0ZUX1BURV9BRF9IV19VUERB VElORywgIWVuYWJsZWQsIDEpOworCXNiaXJldF9yZXBvcnRfZXJyb3IoJnJldCwgU0JJX0VSUl9E RU5JRURfTE9DS0VELCAic2V0IGxvY2tlZCB0byAlZCB3aXRoIGxvY2siLCAhZW5hYmxlZCk7CisK KwlyZXQgPSBmd2Z0X3NldChTQklfRldGVF9QVEVfQURfSFdfVVBEQVRJTkcsIGVuYWJsZWQsIDAp OworCXNiaXJldF9yZXBvcnRfZXJyb3IoJnJldCwgU0JJX0VSUl9ERU5JRURfTE9DS0VELCAic2V0 IGxvY2tlZCB0byAlZCB3aXRob3V0IGxvY2siLCBlbmFibGVkKTsKKworCXJldCA9IGZ3ZnRfZ2V0 KFNCSV9GV0ZUX1BURV9BRF9IV19VUERBVElORyk7CisJc2JpcmV0X3JlcG9ydCgmcmV0LCBTQklf U1VDQ0VTUywgZW5hYmxlZCwgImdldCBsb2NrZWQgJWQgYWZ0ZXIgc2FtZSBzZXQgd2l0aG91dCBs b2NrIiwgZW5hYmxlZCk7CisKKwlyZXQgPSBmd2Z0X3NldChTQklfRldGVF9QVEVfQURfSFdfVVBE QVRJTkcsIGVuYWJsZWQsIDEpOworCXNiaXJldF9yZXBvcnRfZXJyb3IoJnJldCwgU0JJX0VSUl9E RU5JRURfTE9DS0VELCAic2V0IGxvY2tlZCB0byAlZCB3aXRoIGxvY2siLCBlbmFibGVkKTsKKwor CXJldCA9IGZ3ZnRfZ2V0KFNCSV9GV0ZUX1BURV9BRF9IV19VUERBVElORyk7CisJc2JpcmV0X3Jl cG9ydCgmcmV0LCBTQklfU1VDQ0VTUywgZW5hYmxlZCwgImdldCBsb2NrZWQgJWQgYWZ0ZXIgc2Ft ZSBzZXQgd2l0aCBsb2NrIiwgZW5hYmxlZCk7CisKK2ludmFsX3Rlc3RzOgorCXJldCA9IGZ3ZnRf c2V0KFNCSV9GV0ZUX1BURV9BRF9IV19VUERBVElORywgMiwgMCk7CisJc2JpcmV0X3JlcG9ydF9l cnJvcigmcmV0LCBTQklfRVJSX0lOVkFMSURfUEFSQU0sICJzZXQgdG8gMiIpOworCisJcmV0ID0g ZndmdF9zZXQoU0JJX0ZXRlRfUFRFX0FEX0hXX1VQREFUSU5HLCAhZW5hYmxlZCwgMik7CisJc2Jp cmV0X3JlcG9ydF9lcnJvcigmcmV0LCBTQklfRVJSX0lOVkFMSURfUEFSQU0sICJzZXQgdG8gJWQg d2l0aCBmbGFncz0yIiwgIWVuYWJsZWQpOworCisJaW5zdGFsbF9leGNlcHRpb25faGFuZGxlcihF WENfTE9BRF9QQUdFX0ZBVUxULCBOVUxMKTsKKwlpbnN0YWxsX2V4Y2VwdGlvbl9oYW5kbGVyKEVY Q19TVE9SRV9QQUdFX0ZBVUxULCBOVUxMKTsKKworCXJlcG9ydF9wcmVmaXhfcG9wKCk7Cit9CisK IHZvaWQgY2hlY2tfZndmdCh2b2lkKQogewogCXJlcG9ydF9wcmVmaXhfcHVzaCgiZndmdCIpOwpA QCAtMTc0LDYgKzMzNSw3IEBAIHZvaWQgY2hlY2tfZndmdCh2b2lkKQogCiAJZndmdF9jaGVja19i YXNlKCk7CiAJZndmdF9jaGVja19taXNhbGlnbmVkX2V4Y19kZWxlZygpOworCWZ3ZnRfY2hlY2tf cHRlX2FkX2h3X3VwZGF0aW5nKCk7CiAKIAlyZXBvcnRfcHJlZml4X3BvcCgpOwogfQotLSAKMi40 OC4xCgoKLS0gCmt2bS1yaXNjdiBtYWlsaW5nIGxpc3QKa3ZtLXJpc2N2QGxpc3RzLmluZnJhZGVh ZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9rdm0tcmlz Y3YK