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 lists.gnu.org (lists.gnu.org [209.51.188.17]) (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 1282EEB64D9 for ; Wed, 14 Jun 2023 22:58:36 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q9ZQ7-00089X-6i; Wed, 14 Jun 2023 18:56:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q9ZQ4-000875-G2; Wed, 14 Jun 2023 18:56:52 -0400 Received: from smtp-fw-80007.amazon.com ([99.78.197.218]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q9ZQ1-0000ie-Jb; Wed, 14 Jun 2023 18:56:51 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1686783410; x=1718319410; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=D5JuQYhhAZ0aCVTL7rtuhKR6Hvcto8zoysOTN8YUiac=; b=YoW1ot//dnb92ftK6v+7gALHsYD1WR6UNutKlRnyqyU/PyjuhLA0QqMx QRR5utOsguXpmoIZH2Vvh5dqmukSCxsE6lDmBytR8KlYcSfwbAiJmpVMN S+seaw29Gcu0Aue9doiFJS5l3JK761Uh9brQToneoPPyqa3LSdoS07aDS A=; X-IronPort-AV: E=Sophos;i="6.00,243,1681171200"; d="scan'208";a="220937793" Received: from pdx4-co-svc-p1-lb2-vlan3.amazon.com (HELO email-inbound-relay-iad-1d-m6i4x-d8e96288.us-east-1.amazon.com) ([10.25.36.214]) by smtp-border-fw-80007.pdx80.corp.amazon.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jun 2023 22:56:43 +0000 Received: from EX19MTAUWA002.ant.amazon.com (iad12-ws-svc-p26-lb9-vlan3.iad.amazon.com [10.40.163.38]) by email-inbound-relay-iad-1d-m6i4x-d8e96288.us-east-1.amazon.com (Postfix) with ESMTPS id 609E7808CD; Wed, 14 Jun 2023 22:56:40 +0000 (UTC) Received: from EX19D020UWC004.ant.amazon.com (10.13.138.149) by EX19MTAUWA002.ant.amazon.com (10.250.64.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Wed, 14 Jun 2023 22:56:38 +0000 Received: from dev-dsk-graf-1a-5ce218e4.eu-west-1.amazon.com (10.253.83.51) by EX19D020UWC004.ant.amazon.com (10.13.138.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Wed, 14 Jun 2023 22:56:36 +0000 From: Alexander Graf To: CC: , , Cameron Esfahani , Roman Bolshakov , Stefan Hajnoczi , "Michael S. Tsirkin" , Kevin Wolf , Hanna Reitz , Marcel Apfelbaum , Paolo Bonzini , "Peter Maydell" Subject: [PATCH 09/12] hw/vmapple/bdif: Introduce vmapple backdoor interface Date: Wed, 14 Jun 2023 22:56:26 +0000 Message-ID: <20230614225626.97734-5-graf@amazon.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230614225626.97734-1-graf@amazon.com> References: <20230614224038.86148-1-graf> <20230614225626.97734-1-graf@amazon.com> MIME-Version: 1.0 X-Originating-IP: [10.253.83.51] X-ClientProxiedBy: EX19D040UWB004.ant.amazon.com (10.13.138.91) To EX19D020UWC004.ant.amazon.com (10.13.138.149) Precedence: Bulk Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Received-SPF: pass client-ip=99.78.197.218; envelope-from=prvs=52269c73c=graf@amazon.de; helo=smtp-fw-80007.amazon.com X-Spam_score_int: -40 X-Spam_score: -4.1 X-Spam_bar: ---- X-Spam_report: (-4.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org VGhlIFZNQXBwbGUgbWFjaGluZSBleHBvc2VzIEFVWCBhbmQgUk9PVCBibG9jayBkZXZpY2VzIChh cyB3ZWxsIGFzIFVTQiBPVEcKZW11bGF0aW9uKSB2aWEgdmlydGlvLXBjaSBhcyB3ZWxsIGFzIGEg c3BlY2lhbCwgc2ltcGxlIGJhY2tkb29yIHBsYXRmb3JtCmRldmljZS4KClRoaXMgcGF0Y2ggaW1w bGVtZW50cyB0aGlzIGJhY2tkb29yIHBsYXRmb3JtIGRldmljZSB0byB0aGUgYmVzdCBvZiBteQp1 bmRlcnN0YW5kaW5nLiBJIGxlZnQgb3V0IGFueSBVU0IgT1RHIHBhcnRzOyB0aGV5J3JlIG9ubHkg bmVlZGVkIGZvcgpndWVzdCByZWNvdmVyeSBhbmQgSSBkb24ndCB1bmRlcnN0YW5kIHRoZSBwcm90 b2NvbCB5ZXQuCgpTaWduZWQtb2ZmLWJ5OiBBbGV4YW5kZXIgR3JhZiA8Z3JhZkBhbWF6b24uY29t PgotLS0KIGh3L3ZtYXBwbGUvS2NvbmZpZyAgICAgICAgfCAgIDIgKwogaHcvdm1hcHBsZS9iZGlm LmMgICAgICAgICB8IDI0NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwog aHcvdm1hcHBsZS9tZXNvbi5idWlsZCAgICB8ICAgMSArCiBody92bWFwcGxlL3RyYWNlLWV2ZW50 cyAgIHwgICA1ICsKIGluY2x1ZGUvaHcvdm1hcHBsZS9iZGlmLmggfCAgMzEgKysrKysKIDUgZmls ZXMgY2hhbmdlZCwgMjg0IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBody92bWFw cGxlL2JkaWYuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvaHcvdm1hcHBsZS9iZGlmLmgK CmRpZmYgLS1naXQgYS9ody92bWFwcGxlL0tjb25maWcgYi9ody92bWFwcGxlL0tjb25maWcKaW5k ZXggYTczNTA0ZDU5OS4uMzg4YTJiYzYwYyAxMDA2NDQKLS0tIGEvaHcvdm1hcHBsZS9LY29uZmln CisrKyBiL2h3L3ZtYXBwbGUvS2NvbmZpZwpAQCAtMSwzICsxLDUgQEAKIGNvbmZpZyBWTUFQUExF X0FFUwogICAgIGJvb2wKIAorY29uZmlnIFZNQVBQTEVfQkRJRgorICAgIGJvb2wKZGlmZiAtLWdp dCBhL2h3L3ZtYXBwbGUvYmRpZi5jIGIvaHcvdm1hcHBsZS9iZGlmLmMKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uMzZiNTkxNWZmMwotLS0gL2Rldi9udWxsCisrKyBiL2h3 L3ZtYXBwbGUvYmRpZi5jCkBAIC0wLDAgKzEsMjQ1IEBACisvKgorICogVk1BcHBsZSBCYWNrZG9v ciBJbnRlcmZhY2UKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAyMyBBbWF6b24uY29tLCBJbmMuIG9y IGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICoKKyAqIFRoaXMgd29yayBp cyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHUEwsIHZlcnNpb24gMiBvciBs YXRlci4KKyAqIFNlZSB0aGUgQ09QWUlORyBmaWxlIGluIHRoZSB0b3AtbGV2ZWwgZGlyZWN0b3J5 LgorICovCisKKyNpbmNsdWRlICJxZW11L29zZGVwLmgiCisjaW5jbHVkZSAiaHcvdm1hcHBsZS9i ZGlmLmgiCisjaW5jbHVkZSAicWVtdS9sb2cuaCIKKyNpbmNsdWRlICJxZW11L21vZHVsZS5oIgor I2luY2x1ZGUgInFhcGkvZXJyb3IuaCIKKyNpbmNsdWRlICJ0cmFjZS5oIgorI2luY2x1ZGUgImh3 L2Jsb2NrL2Jsb2NrLmgiCisjaW5jbHVkZSAic3lzZW11L2Jsb2NrLWJhY2tlbmQuaCIKKworI2Rl ZmluZSBSRUdfREVWSURfTUFTSyAgICAgIDB4ZmZmZjAwMDAKKyNkZWZpbmUgREVWSURfUk9PVCAg ICAgICAgICAweDAwMDAwMDAwCisjZGVmaW5lIERFVklEX0FVWCAgICAgICAgICAgMHgwMDAxMDAw MAorI2RlZmluZSBERVZJRF9VU0IgICAgICAgICAgIDB4MDAxMDAwMDAKKworI2RlZmluZSBSRUdf U1RBVFVTICAgICAgICAgIDB4MAorI2RlZmluZSBSRUdfU1RBVFVTX0FDVElWRSAgICAgQklUKDAp CisjZGVmaW5lIFJFR19DRkcgICAgICAgICAgICAgMHg0CisjZGVmaW5lIFJFR19DRkdfQUNUSVZF ICAgICAgICBCSVQoMSkKKyNkZWZpbmUgUkVHX1VOSzEgICAgICAgICAgICAweDgKKyNkZWZpbmUg UkVHX0JVU1kgICAgICAgICAgICAweDEwCisjZGVmaW5lIFJFR19CVVNZX1JFQURZICAgICAgICBC SVQoMCkKKyNkZWZpbmUgUkVHX1VOSzIgICAgICAgICAgICAweDQwMAorI2RlZmluZSBSRUdfQ01E ICAgICAgICAgICAgIDB4NDA4CisjZGVmaW5lIFJFR19ORVhUX0RFVklDRSAgICAgMHg0MjAKKyNk ZWZpbmUgUkVHX1VOSzMgICAgICAgICAgICAweDQzNAorCit0eXBlZGVmIHN0cnVjdCB2YmxrX3Nl Y3RvciB7CisgICAgdWludDMyX3QgcGFkOworICAgIHVpbnQzMl90IHBhZDI7CisgICAgdWludDMy X3Qgc2VjdG9yOworICAgIHVpbnQzMl90IHBhZDM7Cit9IFZibGtTZWN0b3I7CisKK3R5cGVkZWYg c3RydWN0IHZibGtfcmVxX2NtZCB7CisgICAgdWludDY0X3QgYWRkcjsKKyAgICB1aW50MzJfdCBs ZW47CisgICAgdWludDMyX3QgZmxhZ3M7Cit9IFZibGtSZXFDbWQ7CisKK3R5cGVkZWYgc3RydWN0 IHZibGtfcmVxIHsKKyAgICBWYmxrUmVxQ21kIHNlY3RvcjsKKyAgICBWYmxrUmVxQ21kIGRhdGE7 CisgICAgVmJsa1JlcUNtZCByZXR2YWw7Cit9IFZibGtSZXE7CisKKyNkZWZpbmUgVkJMS19EQVRB X0ZMQUdTX1JFQUQgIDB4MDAwMzAwMDEKKyNkZWZpbmUgVkJMS19EQVRBX0ZMQUdTX1dSSVRFIDB4 MDAwMTAwMDEKKworI2RlZmluZSBWQkxLX1JFVF9TVUNDRVNTICAwCisjZGVmaW5lIFZCTEtfUkVU X0ZBSUxFRCAgIDEKKworc3RhdGljIHVpbnQ2NF90IGJkaWZfcmVhZCh2b2lkICpvcGFxdWUsIGh3 YWRkciBvZmZzZXQsIHVuc2lnbmVkIHNpemUpCit7CisgICAgdWludDY0X3QgcmV0ID0gLTE7Cisg ICAgdWludDY0X3QgZGV2aWQgPSAob2Zmc2V0ICYgUkVHX0RFVklEX01BU0spOworCisgICAgc3dp dGNoIChvZmZzZXQgJiB+UkVHX0RFVklEX01BU0spIHsKKyAgICBjYXNlIFJFR19TVEFUVVM6Cisg ICAgICAgIHJldCA9IFJFR19TVEFUVVNfQUNUSVZFOworICAgICAgICBicmVhazsKKyAgICBjYXNl IFJFR19DRkc6CisgICAgICAgIHJldCA9IFJFR19DRkdfQUNUSVZFOworICAgICAgICBicmVhazsK KyAgICBjYXNlIFJFR19VTksxOgorICAgICAgICByZXQgPSAweDQyMDsKKyAgICAgICAgYnJlYWs7 CisgICAgY2FzZSBSRUdfQlVTWToKKyAgICAgICAgcmV0ID0gUkVHX0JVU1lfUkVBRFk7CisgICAg ICAgIGJyZWFrOworICAgIGNhc2UgUkVHX1VOSzI6CisgICAgICAgIHJldCA9IDB4MTsKKyAgICAg ICAgYnJlYWs7CisgICAgY2FzZSBSRUdfVU5LMzoKKyAgICAgICAgcmV0ID0gMHgwOworICAgICAg ICBicmVhazsKKyAgICBjYXNlIFJFR19ORVhUX0RFVklDRToKKyAgICAgICAgc3dpdGNoIChkZXZp ZCkgeworICAgICAgICBjYXNlIERFVklEX1JPT1Q6CisgICAgICAgICAgICByZXQgPSAweDgwMDAw MDA7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBERVZJRF9BVVg6CisgICAgICAg ICAgICByZXQgPSAweDEwMDAwOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAg ICAgYnJlYWs7CisgICAgfQorCisgICAgdHJhY2VfYmRpZl9yZWFkKG9mZnNldCwgc2l6ZSwgcmV0 KTsKKyAgICByZXR1cm4gcmV0OworfQorCitzdGF0aWMgdm9pZCBsZTJjcHVfc2VjdG9yKFZibGtT ZWN0b3IgKnNlY3RvcikKK3sKKyAgICBzZWN0b3ItPnNlY3RvciA9IGxlMzJfdG9fY3B1KHNlY3Rv ci0+c2VjdG9yKTsKK30KKworc3RhdGljIHZvaWQgbGUyY3B1X3JlcWNtZChWYmxrUmVxQ21kICpj bWQpCit7CisgICAgY21kLT5hZGRyID0gbGU2NF90b19jcHUoY21kLT5hZGRyKTsKKyAgICBjbWQt PmxlbiA9IGxlMzJfdG9fY3B1KGNtZC0+bGVuKTsKKyAgICBjbWQtPmZsYWdzID0gbGUzMl90b19j cHUoY21kLT5mbGFncyk7Cit9CisKK3N0YXRpYyB2b2lkIGxlMmNwdV9yZXEoVmJsa1JlcSAqcmVx KQoreworICAgIGxlMmNwdV9yZXFjbWQoJnJlcS0+c2VjdG9yKTsKKyAgICBsZTJjcHVfcmVxY21k KCZyZXEtPmRhdGEpOworICAgIGxlMmNwdV9yZXFjbWQoJnJlcS0+cmV0dmFsKTsKK30KKworc3Rh dGljIHZvaWQgdmJsa19jbWQodWludDY0X3QgZGV2aWQsIEJsb2NrQmFja2VuZCAqYmxrLCB1aW50 NjRfdCB2YWx1ZSwKKyAgICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90IHN0YXRpY19vZmYpCit7 CisgICAgVmJsa1JlcSByZXE7CisgICAgVmJsa1NlY3RvciBzZWN0b3I7CisgICAgdWludDY0X3Qg b2ZmID0gMDsKKyAgICBjaGFyICpidWYgPSBOVUxMOworICAgIHVpbnQ4X3QgcmV0ID0gVkJMS19S RVRfRkFJTEVEOworICAgIGludCByOworCisgICAgY3B1X3BoeXNpY2FsX21lbW9yeV9yZWFkKHZh bHVlLCAmcmVxLCBzaXplb2YocmVxKSk7CisgICAgbGUyY3B1X3JlcSgmcmVxKTsKKworICAgIGlm IChyZXEuc2VjdG9yLmxlbiAhPSBzaXplb2Yoc2VjdG9yKSkgeworICAgICAgICByZXQgPSBWQkxL X1JFVF9GQUlMRUQ7CisgICAgICAgIGdvdG8gb3V0OworICAgIH0KKworICAgIC8qIFJlYWQgdGhl IHZibGsgY29tbWFuZCAqLworICAgIGNwdV9waHlzaWNhbF9tZW1vcnlfcmVhZChyZXEuc2VjdG9y LmFkZHIsICZzZWN0b3IsIHNpemVvZihzZWN0b3IpKTsKKyAgICBsZTJjcHVfc2VjdG9yKCZzZWN0 b3IpOworCisgICAgb2ZmID0gc2VjdG9yLnNlY3RvciAqIDUxMlVMTCArIHN0YXRpY19vZmY7CisK KyAgICAvKiBTYW5pdHkgY2hlY2sgdGhhdCB3ZSdyZSBub3QgYWxsb2NhdGluZyBib2d1cyBzaXpl cyAqLworICAgIGlmIChyZXEuZGF0YS5sZW4gPiAoMTI4ICogMTAyNCAqIDEwMjQpKSB7CisgICAg ICAgIGdvdG8gb3V0OworICAgIH0KKworICAgIGJ1ZiA9IGdfbWFsbG9jMChyZXEuZGF0YS5sZW4p OworICAgIHN3aXRjaCAocmVxLmRhdGEuZmxhZ3MpIHsKKyAgICBjYXNlIFZCTEtfREFUQV9GTEFH U19SRUFEOgorICAgICAgICByID0gYmxrX3ByZWFkKGJsaywgb2ZmLCByZXEuZGF0YS5sZW4sIGJ1 ZiwgMCk7CisgICAgICAgIHRyYWNlX2JkaWZfdmJsa19yZWFkKGRldmlkID09IERFVklEX0FVWCA/ ICJhdXgiIDogInJvb3QiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXEuZGF0YS5h ZGRyLCBvZmYsIHJlcS5kYXRhLmxlbiwgcik7CisgICAgICAgIGlmIChyIDwgMCkgeworICAgICAg ICAgICAgZ290byBvdXQ7CisgICAgICAgIH0KKyAgICAgICAgY3B1X3BoeXNpY2FsX21lbW9yeV93 cml0ZShyZXEuZGF0YS5hZGRyLCBidWYsIHJlcS5kYXRhLmxlbik7CisgICAgICAgIHJldCA9IFZC TEtfUkVUX1NVQ0NFU1M7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgVkJMS19EQVRBX0ZMQUdT X1dSSVRFOgorICAgICAgICAvKiBOb3QgbmVlZGVkLCBpQm9vdCBvbmx5IHJlYWRzICovCisgICAg ICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGJyZWFrOworICAgIH0KKworb3V0Ogor ICAgIGdfZnJlZShidWYpOworICAgIGNwdV9waHlzaWNhbF9tZW1vcnlfd3JpdGUocmVxLnJldHZh bC5hZGRyLCAmcmV0LCAxKTsKK30KKworc3RhdGljIHZvaWQgYmRpZl93cml0ZSh2b2lkICpvcGFx dWUsIGh3YWRkciBvZmZzZXQsCisgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90IHZhbHVl LCB1bnNpZ25lZCBzaXplKQoreworICAgIFZNQXBwbGVCZGlmU3RhdGUgKnMgPSBvcGFxdWU7Cisg ICAgdWludDY0X3QgZGV2aWQgPSAob2Zmc2V0ICYgUkVHX0RFVklEX01BU0spOworCisgICAgdHJh Y2VfYmRpZl93cml0ZShvZmZzZXQsIHNpemUsIHZhbHVlKTsKKworICAgIHN3aXRjaCAob2Zmc2V0 ICYgflJFR19ERVZJRF9NQVNLKSB7CisgICAgY2FzZSBSRUdfQ01EOgorICAgICAgICBzd2l0Y2gg KGRldmlkKSB7CisgICAgICAgIGNhc2UgREVWSURfUk9PVDoKKyAgICAgICAgICAgIHZibGtfY21k KGRldmlkLCBzLT5yb290LCB2YWx1ZSwgMHgwKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg ICBjYXNlIERFVklEX0FVWDoKKyAgICAgICAgICAgIHZibGtfY21kKGRldmlkLCBzLT5hdXgsIHZh bHVlLCAweDApOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7 CisgICAgfQorfQorCitzdGF0aWMgY29uc3QgTWVtb3J5UmVnaW9uT3BzIGJkaWZfb3BzID0gewor ICAgIC5yZWFkID0gYmRpZl9yZWFkLAorICAgIC53cml0ZSA9IGJkaWZfd3JpdGUsCisgICAgLmVu ZGlhbm5lc3MgPSBERVZJQ0VfTkFUSVZFX0VORElBTiwKKyAgICAudmFsaWQgPSB7CisgICAgICAg IC5taW5fYWNjZXNzX3NpemUgPSAxLAorICAgICAgICAubWF4X2FjY2Vzc19zaXplID0gOCwKKyAg ICB9LAorICAgIC5pbXBsID0geworICAgICAgICAubWluX2FjY2Vzc19zaXplID0gMSwKKyAgICAg ICAgLm1heF9hY2Nlc3Nfc2l6ZSA9IDgsCisgICAgfSwKK307CisKK3N0YXRpYyB2b2lkIGJkaWZf aW5pdChPYmplY3QgKm9iaikKK3sKKyAgICBWTUFwcGxlQmRpZlN0YXRlICpzID0gVk1BUFBMRV9C RElGKG9iaik7CisKKyAgICBtZW1vcnlfcmVnaW9uX2luaXRfaW8oJnMtPm1taW8sIG9iaiwgJmJk aWZfb3BzLCBvYmosCisgICAgICAgICAgICAgICAgICAgICAgICAgIlZNQXBwbGUgQmFja2Rvb3Ig SW50ZXJmYWNlIiwgVk1BUFBMRV9CRElGX1NJWkUpOworICAgIHN5c2J1c19pbml0X21taW8oU1lT X0JVU19ERVZJQ0Uob2JqKSwgJnMtPm1taW8pOworfQorCitzdGF0aWMgUHJvcGVydHkgYmRpZl9w cm9wZXJ0aWVzW10gPSB7CisgICAgREVGSU5FX1BST1BfRFJJVkUoImF1eCIsIFZNQXBwbGVCZGlm U3RhdGUsIGF1eCksCisgICAgREVGSU5FX1BST1BfRFJJVkUoInJvb3QiLCBWTUFwcGxlQmRpZlN0 YXRlLCByb290KSwKKyAgICBERUZJTkVfUFJPUF9FTkRfT0ZfTElTVCgpLAorfTsKKworc3RhdGlj IHZvaWQgYmRpZl9jbGFzc19pbml0KE9iamVjdENsYXNzICprbGFzcywgdm9pZCAqZGF0YSkKK3sK KyAgICBEZXZpY2VDbGFzcyAqZGMgPSBERVZJQ0VfQ0xBU1Moa2xhc3MpOworCisgICAgZGMtPmRl c2MgPSAiVk1BcHBsZSBCYWNrZG9vciBJbnRlcmZhY2UiOworICAgIGRldmljZV9jbGFzc19zZXRf cHJvcHMoZGMsIGJkaWZfcHJvcGVydGllcyk7Cit9CisKK3N0YXRpYyBjb25zdCBUeXBlSW5mbyBi ZGlmX2luZm8gPSB7CisgICAgLm5hbWUgICAgICAgICAgPSBUWVBFX1ZNQVBQTEVfQkRJRiwKKyAg ICAucGFyZW50ICAgICAgICA9IFRZUEVfU1lTX0JVU19ERVZJQ0UsCisgICAgLmluc3RhbmNlX3Np emUgPSBzaXplb2YoVk1BcHBsZUJkaWZTdGF0ZSksCisgICAgLmluc3RhbmNlX2luaXQgPSBiZGlm X2luaXQsCisgICAgLmNsYXNzX2luaXQgICAgPSBiZGlmX2NsYXNzX2luaXQsCit9OworCitzdGF0 aWMgdm9pZCBiZGlmX3JlZ2lzdGVyX3R5cGVzKHZvaWQpCit7CisgICAgdHlwZV9yZWdpc3Rlcl9z dGF0aWMoJmJkaWZfaW5mbyk7Cit9CisKK3R5cGVfaW5pdChiZGlmX3JlZ2lzdGVyX3R5cGVzKQpk aWZmIC0tZ2l0IGEvaHcvdm1hcHBsZS9tZXNvbi5idWlsZCBiL2h3L3ZtYXBwbGUvbWVzb24uYnVp bGQKaW5kZXggOWI5YmE1NDhhOS4uZjI2YWU2MDJlYiAxMDA2NDQKLS0tIGEvaHcvdm1hcHBsZS9t ZXNvbi5idWlsZAorKysgYi9ody92bWFwcGxlL21lc29uLmJ1aWxkCkBAIC0xICsxLDIgQEAKIHNv ZnRtbXVfc3MuYWRkKHdoZW46ICdDT05GSUdfVk1BUFBMRV9BRVMnLCAgaWZfdHJ1ZTogZmlsZXMo J2Flcy5jJykpCitzb2Z0bW11X3NzLmFkZCh3aGVuOiAnQ09ORklHX1ZNQVBQTEVfQkRJRicsIGlm X3RydWU6IGZpbGVzKCdiZGlmLmMnKSkKZGlmZiAtLWdpdCBhL2h3L3ZtYXBwbGUvdHJhY2UtZXZl bnRzIGIvaHcvdm1hcHBsZS90cmFjZS1ldmVudHMKaW5kZXggMDM1ODVjZGYwZi4uNDVjNjlkZTJl MCAxMDA2NDQKLS0tIGEvaHcvdm1hcHBsZS90cmFjZS1ldmVudHMKKysrIGIvaHcvdm1hcHBsZS90 cmFjZS1ldmVudHMKQEAgLTE4LDMgKzE4LDggQEAgYWVzXzJfcmVhZCh1aW50NjRfdCBvZmZzZXQs IHVpbnQ2NF90IHJlcykgIm9mZnNldD0weCUiUFJJeDY0IiByZXM9MHglIlBSSXg2NAogYWVzXzJf d3JpdGVfdW5rbm93bih1aW50NjRfdCBvZmZzZXQpICJvZmZzZXQ9MHglIlBSSXg2NAogYWVzXzJf d3JpdGUodWludDY0X3Qgb2Zmc2V0LCB1aW50NjRfdCB2YWwpICJvZmZzZXQ9MHglIlBSSXg2NCIg dmFsPTB4JSJQUkl4NjQKIGFlc19kdW1wX2RhdGEoY29uc3QgY2hhciAqZGVzYywgY29uc3QgY2hh ciAqaGV4KSAiJXMlcyIKKworIyBiZGlmLmMKK2JkaWZfcmVhZCh1aW50NjRfdCBvZmZzZXQsIHVp bnQzMl90IHNpemUsIHVpbnQ2NF90IHZhbHVlKSAib2Zmc2V0PTB4JSJQUkl4NjQiIHNpemU9MHgl eCB2YWx1ZT0weCUiUFJJeDY0CitiZGlmX3dyaXRlKHVpbnQ2NF90IG9mZnNldCwgdWludDMyX3Qg c2l6ZSwgdWludDY0X3QgdmFsdWUpICJvZmZzZXQ9MHglIlBSSXg2NCIgc2l6ZT0weCV4IHZhbHVl PTB4JSJQUkl4NjQKK2JkaWZfdmJsa19yZWFkKGNvbnN0IGNoYXIgKmRldiwgdWludDY0X3QgYWRk ciwgdWludDY0X3Qgb2Zmc2V0LCB1aW50MzJfdCBsZW4sIGludCByKSAiZGV2PSVzIGFkZHI9MHgl IlBSSXg2NCIgb2ZmPTB4JSJQUkl4NjQiIHNpemU9MHgleCByPSVkIgpkaWZmIC0tZ2l0IGEvaW5j bHVkZS9ody92bWFwcGxlL2JkaWYuaCBiL2luY2x1ZGUvaHcvdm1hcHBsZS9iZGlmLmgKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uNjVlZTQzNDU3YgotLS0gL2Rldi9udWxs CisrKyBiL2luY2x1ZGUvaHcvdm1hcHBsZS9iZGlmLmgKQEAgLTAsMCArMSwzMSBAQAorLyoKKyAq IFZNQXBwbGUgQmFja2Rvb3IgSW50ZXJmYWNlCisgKgorICogQ29weXJpZ2h0IMKpIDIwMjMgQW1h em9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKyAq CisgKiBUaGlzIHdvcmsgaXMgbGljZW5zZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR1BM LCB2ZXJzaW9uIDIgb3IgbGF0ZXIuCisgKiBTZWUgdGhlIENPUFlJTkcgZmlsZSBpbiB0aGUgdG9w LWxldmVsIGRpcmVjdG9yeS4KKyAqLworCisjaWZuZGVmIEhXX1ZNQVBQTEVfQkRJRl9ICisjZGVm aW5lIEhXX1ZNQVBQTEVfQkRJRl9ICisKKyNpbmNsdWRlICJody9zeXNidXMuaCIKKyNpbmNsdWRl ICJxb20vb2JqZWN0LmgiCisKKyNkZWZpbmUgVFlQRV9WTUFQUExFX0JESUYgInZtYXBwbGUtYmRp ZiIKK09CSkVDVF9ERUNMQVJFX1NJTVBMRV9UWVBFKFZNQXBwbGVCZGlmU3RhdGUsIFZNQVBQTEVf QkRJRikKKworc3RydWN0IFZNQXBwbGVCZGlmU3RhdGUgeworICAgIC8qIDxwcml2YXRlPiAqLwor ICAgIFN5c0J1c0RldmljZSBwYXJlbnRfb2JqOworCisgICAgLyogPHB1YmxpYz4gKi8KKyAgICBC bG9ja0JhY2tlbmQgKmF1eDsKKyAgICBCbG9ja0JhY2tlbmQgKnJvb3Q7CisgICAgTWVtb3J5UmVn aW9uIG1taW87Cit9OworCisjZGVmaW5lIFZNQVBQTEVfQkRJRl9TSVpFIDB4MDAyMDAwMDAKKwor I2VuZGlmIC8qIEhXX1ZNQVBQTEVfQkRJRl9IICovCi0tIAoyLjM5LjIgKEFwcGxlIEdpdC0xNDMp CgoKCgpBbWF6b24gRGV2ZWxvcG1lbnQgQ2VudGVyIEdlcm1hbnkgR21iSApLcmF1c2Vuc3RyLiAz OAoxMDExNyBCZXJsaW4KR2VzY2hhZWZ0c2Z1ZWhydW5nOiBDaHJpc3RpYW4gU2NobGFlZ2VyLCBK b25hdGhhbiBXZWlzcwpFaW5nZXRyYWdlbiBhbSBBbXRzZ2VyaWNodCBDaGFybG90dGVuYnVyZyB1 bnRlciBIUkIgMTQ5MTczIEIKU2l0ejogQmVybGluClVzdC1JRDogREUgMjg5IDIzNyA4NzkKCgo=