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 X-Spam-Level: X-Spam-Status: No, score=-3.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EEA8CC7618B for ; Thu, 25 Jul 2019 13:32:55 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BFE852190F for ; Thu, 25 Jul 2019 13:32:55 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BFE852190F Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hqdrK-0007Y4-Pn; Thu, 25 Jul 2019 13:32:38 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hqdrJ-0007Xt-3U for xen-devel@lists.xenproject.org; Thu, 25 Jul 2019 13:32:37 +0000 X-Inumbo-ID: a799dcc6-aee0-11e9-90aa-639d42ffd07b Received: from m9a0002g.houston.softwaregrp.com (unknown [15.124.64.67]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id a799dcc6-aee0-11e9-90aa-639d42ffd07b; Thu, 25 Jul 2019 13:32:32 +0000 (UTC) Received: FROM m9a0002g.houston.softwaregrp.com (15.121.0.190) BY m9a0002g.houston.softwaregrp.com WITH ESMTP; Thu, 25 Jul 2019 13:32:32 +0000 Received: from M9W0067.microfocus.com (2002:f79:be::f79:be) by M9W0067.microfocus.com (2002:f79:be::f79:be) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1591.10; Thu, 25 Jul 2019 13:30:12 +0000 Received: from NAM05-BY2-obe.outbound.protection.outlook.com (15.124.72.13) by M9W0067.microfocus.com (15.121.0.190) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1591.10 via Frontend Transport; Thu, 25 Jul 2019 13:30:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MLpZTKgbcqHRT52byFzdUGeVZNnZ1sOB+7GVAfGeRIS3DtHD3C/9E8deHWIzkSNSt2KkGsT1FwXmNvNYXbL1P+EH4UqwvxTdW7G1OyhxxAdJgq4ibA5QtnO7IWesdBCG6Giyj3LefXsSiNgbYeV2vydvRPfax5v9+E/ATBtFGrOhw4Lb/jT3gumif8h/KI8MBiI8syeMGyYw+1wpfzy0Gl1TURa3G69FTkQnDdlCz7OeV4RPBkNK2sjLC9CHrYSdsnDj2UnjnYnpx5p7gwAbLIMPbHJOPYaiurl7sVw0TLhCk9PSFwrVk3X2/SYNE0o0PYA4r/iqE0TYnmJH3LafCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0CADi5a8+LBlOADfhsq4q4HCc7ZVdPFX9aghCBAm2xc=; b=SsqxEWj7qqzYeYAcGt3isG9AGVluwEbsGivdt3+BKEvPVhmbaste0Di1o/2GjJ1zpWrQ26WKRiEJFCriNMQjGgye/S69fowW9LvY1hzBCrJY/458v0L5/YkTDKkAizIhsJqVgiGoEdamydc3mbFmtXKYy8efqLldxhw2hLIBZH16buZ0+JmWVLDwDYy+OQFwTYd+Y9m/qs0w9pP8qghktRDPo3rY7ATun/gM6eGAGKFW5kgSsgbG9nEsJKwqZwY0hVS2rLHW9hW+No/b5jZhJfjzkUNpaXM5mlYU67vn08ytmio9xstcSLcjszG9XOHfra9Mh64MtIzxHvha+6l2BQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1;spf=pass smtp.mailfrom=suse.com;dmarc=pass action=none header.from=suse.com;dkim=pass header.d=suse.com;arc=none Received: from BY5PR18MB3394.namprd18.prod.outlook.com (10.255.139.95) by BY5PR18MB3297.namprd18.prod.outlook.com (10.255.163.221) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2115.10; Thu, 25 Jul 2019 13:30:10 +0000 Received: from BY5PR18MB3394.namprd18.prod.outlook.com ([fe80::a4f0:4f46:c076:f74b]) by BY5PR18MB3394.namprd18.prod.outlook.com ([fe80::a4f0:4f46:c076:f74b%7]) with mapi id 15.20.2115.005; Thu, 25 Jul 2019 13:30:10 +0000 From: Jan Beulich To: "xen-devel@lists.xenproject.org" Thread-Topic: [PATCH v4 03/12] AMD/IOMMU: use bit field for IRTE Thread-Index: AQHVQu0VoTRlTMFGGECqlXoZBbx1cQ== Date: Thu, 25 Jul 2019 13:30:10 +0000 Message-ID: <12881c67-924c-6c38-9966-5de534a60001@suse.com> References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: LO2P265CA0454.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:e::34) To BY5PR18MB3394.namprd18.prod.outlook.com (2603:10b6:a03:194::31) authentication-results: spf=none (sender IP is ) smtp.mailfrom=JBeulich@suse.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [87.234.252.170] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 77664d6e-342a-451b-a065-08d711043769 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:BY5PR18MB3297; x-ms-traffictypediagnostic: BY5PR18MB3297: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5797; x-forefront-prvs: 0109D382B0 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(39860400002)(366004)(136003)(396003)(376002)(346002)(189003)(199004)(6436002)(53936002)(2906002)(386003)(6506007)(2501003)(86362001)(478600001)(5660300002)(64756008)(4326008)(66556008)(305945005)(6486002)(31696002)(486006)(25786009)(66066001)(6512007)(102836004)(80792005)(66946007)(5640700003)(14454004)(26005)(66446008)(7736002)(14444005)(446003)(52116002)(99286004)(76176011)(54906003)(6116002)(3846002)(31686004)(316002)(81166006)(81156014)(6916009)(8676002)(8936002)(68736007)(2616005)(66476007)(11346002)(256004)(71190400001)(71200400001)(36756003)(476003)(2351001)(186003); DIR:OUT; SFP:1102; SCL:1; SRVR:BY5PR18MB3297; H:BY5PR18MB3394.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: suse.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: xLUtyFAvV7e59L8/M3ck0y2XTexpFwp/ebUyH5ltgv0f2qUWRz0nIc7Ld2S4s0AHl9V9MBzpAWErOf42YUiBv22sJHnS7Q7JMqultG3U1hefWxe7WnOrvdblK08/1pDjamjWVNbMiBXdFsP59GnZUpXEiCvrcZVbpdzmjYldOPYPK5ftk4+gQEAyoe1UbSvN16hbv0E4J9iP7vbekTYLnlmLDlaMgY0K7NSGqAD/wbuq4Hi/UBYoG/0OHNrt6D3JgiWsP4JPxieAKQnAxEBrDog4O67JYkGVGoWutCxf5+vGiSB4/7vo3aRYrQKuoplywP9rBsRIHdR4ul8NjZP7Npi7rWCp/aL9gwXI7OXLyM/ojjLsDBpAmI083MwHdbOyZWhsnFBFPb21UYG+u1lhI9dlSwxr7oWm/JqDPFyLC8c= Content-ID: <6554CDC30DC6C644BC915A709FFDD372@namprd18.prod.outlook.com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 77664d6e-342a-451b-a065-08d711043769 X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Jul 2019 13:30:10.5174 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 856b813c-16e5-49a5-85ec-6f081e13b527 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: JBeulich@suse.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR18MB3297 X-OriginatorOrg: suse.com Subject: [Xen-devel] [PATCH v4 03/12] AMD/IOMMU: use bit field for IRTE X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Andrew Cooper , Brian Woods , Suravee Suthikulpanit Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" QXQgdGhlIHNhbWUgdGltZSByZXN0cmljdCBpdHMgc2NvcGUgdG8ganVzdCB0aGUgc2luZ2xlIHNv dXJjZSBmaWxlDQphY3R1YWxseSB1c2luZyBpdCwgYW5kIGFic3RyYWN0IGFjY2Vzc2VzIGJ5IGlu dHJvZHVjaW5nIGEgdW5pb24gb2YNCnBvaW50ZXJzLiAoQSB1bmlvbiBvZiB0aGUgYWN0dWFsIHRh YmxlIGVudHJpZXMgaXMgbm90IHVzZWQgdG8gbWFrZSBpdA0KaW1wb3NzaWJsZSB0byBbd3Jvbmds eSwgb25jZSB0aGUgMTI4LWJpdCBmb3JtIGdldHMgYWRkZWRdIHBlcmZvcm0NCnBvaW50ZXIgYXJp dGhtZXRpYyAvIGFycmF5IGFjY2Vzc2VzIG9uIGRlcml2ZWQgdHlwZXMuKQ0KDQpBbHNvIG1vdmUg YXdheSBmcm9tIHVwZGF0aW5nIHRoZSBlbnRyaWVzIHBpZWNlbWVhbDogQ29uc3RydWN0IGEgZnVs bCBuZXcNCmVudHJ5LCBhbmQgd3JpdGUgaXQgb3V0Lg0KDQpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1 bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQpBY2tlZC1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3 LmNvb3BlcjNAY2l0cml4LmNvbT4NCkFja2VkLWJ5OiBCcmlhbiBXb29kcyA8YnJpYW4ud29vZHNA YW1kLmNvbT4NCi0tLQ0KdjQ6IFJlLWJhc2UuIERvIGF3YXkgd2l0aCBzdGFuZGFsb25lIHN0cnVj dCBpcnRlX2Jhc2ljLg0KdjM6IFN3aXRjaCBib29sZWFuIGJpdGZpZWxkcyB0byBib29sLg0KdjI6 IG5hbWUge2dldCxmcmVlfV9pbnRyZW1hcF9lbnRyeSgpJ3MgbGFzdCBwYXJhbWV0ZXIgImluZGV4 IiBpbnN0ZWFkIG9mDQogICAgICJvZmZzZXQiLiBJbnRyb2R1Y2UgdW5pb24gaXJ0ZTMyLg0KDQot LS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfaW50ci5jDQorKysgYi94ZW4v ZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfaW50ci5jDQpAQCAtMjQsNiArMjQsMjYgQEAN CiAgI2luY2x1ZGUgPHhlbi9rZXloYW5kbGVyLmg+DQogICNpbmNsdWRlIDx4ZW4vc29mdGlycS5o Pg0KICANCit1bmlvbiBpcnRlMzIgew0KKyAgICB1aW50MzJfdCByYXc7DQorICAgIHN0cnVjdCB7 DQorICAgICAgICBib29sIHJlbWFwX2VuOjE7DQorICAgICAgICBib29sIHN1cF9pb19wZjoxOw0K KyAgICAgICAgdW5zaWduZWQgaW50IGludF90eXBlOjM7DQorICAgICAgICBib29sIHJxX2VvaTox Ow0KKyAgICAgICAgYm9vbCBkbToxOw0KKyAgICAgICAgYm9vbCBndWVzdF9tb2RlOjE7IC8qIE1C WiAqLw0KKyAgICAgICAgdW5zaWduZWQgaW50IGRlc3Q6ODsNCisgICAgICAgIHVuc2lnbmVkIGlu dCB2ZWN0b3I6ODsNCisgICAgICAgIHVuc2lnbmVkIGludCA6ODsNCisgICAgfSBmbGRzOw0KK307 DQorDQordW5pb24gaXJ0ZV9wdHIgew0KKyAgICB2b2lkICpwdHI7DQorICAgIHVuaW9uIGlydGUz MiAqcHRyMzI7DQorfTsNCisNCiAgI2RlZmluZSBJTlRSRU1BUF9UQUJMRV9PUkRFUiAgICAxDQog ICNkZWZpbmUgSU5UUkVNQVBfTEVOR1RIIDB4Qg0KICAjZGVmaW5lIElOVFJFTUFQX0VOVFJJRVMg KDEgPDwgSU5UUkVNQVBfTEVOR1RIKQ0KQEAgLTEwMiw0NyArMTIyLDQ1IEBAIHN0YXRpYyB1bnNp Z25lZCBpbnQgYWxsb2NfaW50cmVtYXBfZW50cnkNCiAgICAgIHJldHVybiBzbG90Ow0KICB9DQog IA0KLXN0YXRpYyB1MzIgKmdldF9pbnRyZW1hcF9lbnRyeShpbnQgc2VnLCBpbnQgYmRmLCBpbnQg b2Zmc2V0KQ0KK3N0YXRpYyB1bmlvbiBpcnRlX3B0ciBnZXRfaW50cmVtYXBfZW50cnkodW5zaWdu ZWQgaW50IHNlZywgdW5zaWduZWQgaW50IGJkZiwNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBpbmRleCkNCiAgew0KLSAgICB1MzIgKnRhYmxl ID0gZ2V0X2l2cnNfbWFwcGluZ3Moc2VnKVtiZGZdLmludHJlbWFwX3RhYmxlOw0KKyAgICB1bmlv biBpcnRlX3B0ciB0YWJsZSA9IHsNCisgICAgICAgIC5wdHIgPSBnZXRfaXZyc19tYXBwaW5ncyhz ZWcpW2JkZl0uaW50cmVtYXBfdGFibGUNCisgICAgfTsNCisNCisgICAgQVNTRVJUKHRhYmxlLnB0 ciAmJiAoaW5kZXggPCBJTlRSRU1BUF9FTlRSSUVTKSk7DQogIA0KLSAgICBBU1NFUlQoICh0YWJs ZSAhPSBOVUxMKSAmJiAob2Zmc2V0IDwgSU5UUkVNQVBfRU5UUklFUykgKTsNCisgICAgdGFibGUu cHRyMzIgKz0gaW5kZXg7DQogIA0KLSAgICByZXR1cm4gdGFibGUgKyBvZmZzZXQ7DQorICAgIHJl dHVybiB0YWJsZTsNCiAgfQ0KICANCi1zdGF0aWMgdm9pZCBmcmVlX2ludHJlbWFwX2VudHJ5KGlu dCBzZWcsIGludCBiZGYsIGludCBvZmZzZXQpDQotew0KLSAgICB1MzIgKmVudHJ5ID0gZ2V0X2lu dHJlbWFwX2VudHJ5KHNlZywgYmRmLCBvZmZzZXQpOw0KLQ0KLSAgICBtZW1zZXQoZW50cnksIDAs IHNpemVvZih1MzIpKTsNCi0gICAgX19jbGVhcl9iaXQob2Zmc2V0LCBnZXRfaXZyc19tYXBwaW5n cyhzZWcpW2JkZl0uaW50cmVtYXBfaW51c2UpOw0KLX0NCi0NCi1zdGF0aWMgdm9pZCB1cGRhdGVf aW50cmVtYXBfZW50cnkodTMyKiBlbnRyeSwgdTggdmVjdG9yLCB1OCBpbnRfdHlwZSwNCi0gICAg dTggZGVzdF9tb2RlLCB1OCBkZXN0KQ0KLXsNCi0gICAgc2V0X2ZpZWxkX2luX3JlZ191MzIoSU9N TVVfQ09OVFJPTF9FTkFCTEVELCAwLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTlRf UkVNQVBfRU5UUllfUkVNQVBFTl9NQVNLLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ TlRfUkVNQVBfRU5UUllfUkVNQVBFTl9TSElGVCwgZW50cnkpOw0KLSAgICBzZXRfZmllbGRfaW5f cmVnX3UzMihJT01NVV9DT05UUk9MX0RJU0FCTEVELCAqZW50cnksDQotICAgICAgICAgICAgICAg ICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9TVVBJT1BGX01BU0ssDQotICAgICAgICAgICAg ICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9TVVBJT1BGX1NISUZULCBlbnRyeSk7DQot ICAgIHNldF9maWVsZF9pbl9yZWdfdTMyKGludF90eXBlLCAqZW50cnksDQotICAgICAgICAgICAg ICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBFX01BU0ssDQotICAgICAgICAg ICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBFX1NISUZULCBlbnRyeSk7 DQotICAgIHNldF9maWVsZF9pbl9yZWdfdTMyKElPTU1VX0NPTlRST0xfRElTQUJMRUQsICplbnRy eSwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQX0VOVFJZX1JFUUVPSV9N QVNLLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTlRfUkVNQVBfRU5UUllfUkVRRU9J X1NISUZULCBlbnRyeSk7DQotICAgIHNldF9maWVsZF9pbl9yZWdfdTMyKCh1MzIpZGVzdF9tb2Rl LCAqZW50cnksDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9E TV9NQVNLLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTlRfUkVNQVBfRU5UUllfRE1f U0hJRlQsIGVudHJ5KTsNCi0gICAgc2V0X2ZpZWxkX2luX3JlZ191MzIoKHUzMilkZXN0LCAqZW50 cnksDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9ERVNUX01B U1QsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9ERVNUX1NI SUZULCBlbnRyeSk7DQotICAgIHNldF9maWVsZF9pbl9yZWdfdTMyKCh1MzIpdmVjdG9yLCAqZW50 cnksDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9WRUNUT1Jf TUFTSywNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQX0VOVFJZX1ZFQ1RP Ul9TSElGVCwgZW50cnkpOw0KK3N0YXRpYyB2b2lkIGZyZWVfaW50cmVtYXBfZW50cnkodW5zaWdu ZWQgaW50IHNlZywgdW5zaWduZWQgaW50IGJkZiwNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHVuc2lnbmVkIGludCBpbmRleCkNCit7DQorICAgIHVuaW9uIGlydGVfcHRyIGVudHJ5 ID0gZ2V0X2ludHJlbWFwX2VudHJ5KHNlZywgYmRmLCBpbmRleCk7DQorDQorICAgIEFDQ0VTU19P TkNFKGVudHJ5LnB0cjMyLT5yYXcpID0gMDsNCisNCisgICAgX19jbGVhcl9iaXQoaW5kZXgsIGdl dF9pdnJzX21hcHBpbmdzKHNlZylbYmRmXS5pbnRyZW1hcF9pbnVzZSk7DQorfQ0KKw0KK3N0YXRp YyB2b2lkIHVwZGF0ZV9pbnRyZW1hcF9lbnRyeSh1bmlvbiBpcnRlX3B0ciBlbnRyeSwgdW5zaWdu ZWQgaW50IHZlY3RvciwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu ZWQgaW50IGludF90eXBlLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp Z25lZCBpbnQgZGVzdF9tb2RlLCB1bnNpZ25lZCBpbnQgZGVzdCkNCit7DQorICAgIHVuaW9uIGly dGUzMiBpcnRlID0gew0KKyAgICAgICAgLmZsZHMgPSB7DQorICAgICAgICAgICAgLnJlbWFwX2Vu ID0gdHJ1ZSwNCisgICAgICAgICAgICAuaW50X3R5cGUgPSBpbnRfdHlwZSwNCisgICAgICAgICAg ICAuZG0gPSBkZXN0X21vZGUsDQorICAgICAgICAgICAgLmRlc3QgPSBkZXN0LA0KKyAgICAgICAg ICAgIC52ZWN0b3IgPSB2ZWN0b3IsDQorICAgICAgICB9LA0KKyAgICB9Ow0KKw0KKyAgICBBQ0NF U1NfT05DRShlbnRyeS5wdHIzMi0+cmF3KSA9IGlydGUucmF3Ow0KICB9DQogIA0KICBzdGF0aWMg aW5saW5lIGludCBnZXRfcnRlX2luZGV4KGNvbnN0IHN0cnVjdCBJT19BUElDX3JvdXRlX2VudHJ5 ICpydGUpDQpAQCAtMTY0LDcgKzE4Miw3IEBAIHN0YXRpYyBpbnQgdXBkYXRlX2ludHJlbWFwX2Vu dHJ5X2Zyb21faW8NCiAgICAgIHUxNiAqaW5kZXgpDQogIHsNCiAgICAgIHVuc2lnbmVkIGxvbmcg ZmxhZ3M7DQotICAgIHUzMiogZW50cnk7DQorICAgIHVuaW9uIGlydGVfcHRyIGVudHJ5Ow0KICAg ICAgdTggZGVsaXZlcnlfbW9kZSwgZGVzdCwgdmVjdG9yLCBkZXN0X21vZGU7DQogICAgICBpbnQg cmVxX2lkOw0KICAgICAgc3BpbmxvY2tfdCAqbG9jazsNCkBAIC0yMDIsMTIgKzIyMCw4IEBAIHN0 YXRpYyBpbnQgdXBkYXRlX2ludHJlbWFwX2VudHJ5X2Zyb21faW8NCiAgICAgICAgICAgKiBzbyBu ZWVkIHRvIHJlY292ZXIgdmVjdG9yIGFuZCBkZWxpdmVyeSBtb2RlIGZyb20gSVJURS4NCiAgICAg ICAgICAgKi8NCiAgICAgICAgICBBU1NFUlQoZ2V0X3J0ZV9pbmRleChydGUpID09IG9mZnNldCk7 DQotICAgICAgICB2ZWN0b3IgPSBnZXRfZmllbGRfZnJvbV9yZWdfdTMyKCplbnRyeSwNCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQX0VOVFJZX1ZFQ1RP Ul9NQVNLLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTlRfUkVN QVBfRU5UUllfVkVDVE9SX1NISUZUKTsNCi0gICAgICAgIGRlbGl2ZXJ5X21vZGUgPSBnZXRfZmll bGRfZnJvbV9yZWdfdTMyKCplbnRyeSwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBFX01BU0ssDQotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTlRfUkVNQVBfRU5UUllfSU5U VFlQRV9TSElGVCk7DQorICAgICAgICB2ZWN0b3IgPSBlbnRyeS5wdHIzMi0+Zmxkcy52ZWN0b3I7 DQorICAgICAgICBkZWxpdmVyeV9tb2RlID0gZW50cnkucHRyMzItPmZsZHMuaW50X3R5cGU7DQog ICAgICB9DQogICAgICB1cGRhdGVfaW50cmVtYXBfZW50cnkoZW50cnksIHZlY3RvciwgZGVsaXZl cnlfbW9kZSwgZGVzdF9tb2RlLCBkZXN0KTsNCiAgDQpAQCAtMjI5LDcgKzI0Myw3IEBAIGludCBf X2luaXQgYW1kX2lvbW11X3NldHVwX2lvYXBpY19yZW1hcHANCiAgew0KICAgICAgc3RydWN0IElP X0FQSUNfcm91dGVfZW50cnkgcnRlOw0KICAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsNCi0gICAg dTMyKiBlbnRyeTsNCisgICAgdW5pb24gaXJ0ZV9wdHIgZW50cnk7DQogICAgICBpbnQgYXBpYywg cGluOw0KICAgICAgdTggZGVsaXZlcnlfbW9kZSwgZGVzdCwgdmVjdG9yLCBkZXN0X21vZGU7DQog ICAgICB1MTYgc2VnLCBiZGYsIHJlcV9pZDsNCkBAIC00MDgsMTYgKzQyMiwxNCBAQCB1bnNpZ25l ZCBpbnQgYW1kX2lvbW11X3JlYWRfaW9hcGljX2Zyb21fDQogICAgICAgICAgdTE2IGJkZiA9IGlv YXBpY19zYmRmW2lkeF0uYmRmOw0KICAgICAgICAgIHUxNiBzZWcgPSBpb2FwaWNfc2JkZltpZHhd LnNlZzsNCiAgICAgICAgICB1MTYgcmVxX2lkID0gZ2V0X2ludHJlbWFwX3JlcXVlc3Rvcl9pZChz ZWcsIGJkZik7DQotICAgICAgICBjb25zdCB1MzIgKmVudHJ5ID0gZ2V0X2ludHJlbWFwX2VudHJ5 KHNlZywgcmVxX2lkLCBvZmZzZXQpOw0KKyAgICAgICAgdW5pb24gaXJ0ZV9wdHIgZW50cnkgPSBn ZXRfaW50cmVtYXBfZW50cnkoc2VnLCByZXFfaWQsIG9mZnNldCk7DQogIA0KICAgICAgICAgIEFT U0VSVChvZmZzZXQgPT0gKHZhbCAmIChJTlRSRU1BUF9FTlRSSUVTIC0gMSkpKTsNCiAgICAgICAg ICB2YWwgJj0gfihJTlRSRU1BUF9FTlRSSUVTIC0gMSk7DQotICAgICAgICB2YWwgfD0gZ2V0X2Zp ZWxkX2Zyb21fcmVnX3UzMigqZW50cnksDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBJTlRfUkVNQVBfRU5UUllfSU5UVFlQRV9NQVNLLA0KLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQX0VOVFJZX0lOVFRZUEVfU0hJRlQpIDw8IDg7 DQotICAgICAgICB2YWwgfD0gZ2V0X2ZpZWxkX2Zyb21fcmVnX3UzMigqZW50cnksDQotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTlRfUkVNQVBfRU5UUllfVkVDVE9SX01B U0ssDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTlRfUkVNQVBfRU5U UllfVkVDVE9SX1NISUZUKTsNCisgICAgICAgIHZhbCB8PSBNQVNLX0lOU1IoZW50cnkucHRyMzIt PmZsZHMuaW50X3R5cGUsDQorICAgICAgICAgICAgICAgICAgICAgICAgIElPX0FQSUNfUkVESVJf REVMSVZfTU9ERV9NQVNLKTsNCisgICAgICAgIHZhbCB8PSBNQVNLX0lOU1IoZW50cnkucHRyMzIt PmZsZHMudmVjdG9yLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICBJT19BUElDX1JFRElSX1ZF Q1RPUl9NQVNLKTsNCiAgICAgIH0NCiAgDQogICAgICByZXR1cm4gdmFsOw0KQEAgLTQyOCw3ICs0 NDAsNyBAQCBzdGF0aWMgaW50IHVwZGF0ZV9pbnRyZW1hcF9lbnRyeV9mcm9tX21zDQogICAgICBp bnQgKnJlbWFwX2luZGV4LCBjb25zdCBzdHJ1Y3QgbXNpX21zZyAqbXNnLCB1MzIgKmRhdGEpDQog IHsNCiAgICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7DQotICAgIHUzMiogZW50cnk7DQorICAgIHVu aW9uIGlydGVfcHRyIGVudHJ5Ow0KICAgICAgdTE2IHJlcV9pZCwgYWxpYXNfaWQ7DQogICAgICB1 OCBkZWxpdmVyeV9tb2RlLCBkZXN0LCB2ZWN0b3IsIGRlc3RfbW9kZTsNCiAgICAgIHNwaW5sb2Nr X3QgKmxvY2s7DQpAQCAtNTgyLDcgKzU5NCw3IEBAIHZvaWQgYW1kX2lvbW11X3JlYWRfbXNpX2Zy b21faXJlKA0KICAgICAgY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYgPSBtc2lfZGVzYy0+ZGV2 Ow0KICAgICAgdTE2IGJkZiA9IHBkZXYgPyBQQ0lfQkRGMihwZGV2LT5idXMsIHBkZXYtPmRldmZu KSA6IGhwZXRfc2JkZi5iZGY7DQogICAgICB1MTYgc2VnID0gcGRldiA/IHBkZXYtPnNlZyA6IGhw ZXRfc2JkZi5zZWc7DQotICAgIGNvbnN0IHUzMiAqZW50cnk7DQorICAgIHVuaW9uIGlydGVfcHRy IGVudHJ5Ow0KICANCiAgICAgIGlmICggSVNfRVJSX09SX05VTEwoX2ZpbmRfaW9tbXVfZm9yX2Rl dmljZShzZWcsIGJkZikpICkNCiAgICAgICAgICByZXR1cm47DQpAQCAtNTk4LDEyICs2MTAsMTAg QEAgdm9pZCBhbWRfaW9tbXVfcmVhZF9tc2lfZnJvbV9pcmUoDQogICAgICB9DQogIA0KICAgICAg bXNnLT5kYXRhICY9IH4oSU5UUkVNQVBfRU5UUklFUyAtIDEpOw0KLSAgICBtc2ctPmRhdGEgfD0g Z2V0X2ZpZWxkX2Zyb21fcmVnX3UzMigqZW50cnksDQotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBFX01BU0ssDQotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBFX1NI SUZUKSA8PCA4Ow0KLSAgICBtc2ctPmRhdGEgfD0gZ2V0X2ZpZWxkX2Zyb21fcmVnX3UzMigqZW50 cnksDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9F TlRSWV9WRUNUT1JfTUFTSywNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgSU5UX1JFTUFQX0VOVFJZX1ZFQ1RPUl9TSElGVCk7DQorICAgIG1zZy0+ZGF0YSB8PSBNQVNL X0lOU1IoZW50cnkucHRyMzItPmZsZHMuaW50X3R5cGUsDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgTVNJX0RBVEFfREVMSVZFUllfTU9ERV9NQVNLKTsNCisgICAgbXNnLT5kYXRhIHw9IE1B U0tfSU5TUihlbnRyeS5wdHIzMi0+Zmxkcy52ZWN0b3IsDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgTVNJX0RBVEFfVkVDVE9SX01BU0spOw0KICB9DQogIA0KICBpbnQgX19pbml0IGFtZF9p b21tdV9mcmVlX2ludHJlbWFwX3RhYmxlKA0KLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0v c3ZtL2FtZC1pb21tdS1kZWZzLmgNCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3N2bS9h bWQtaW9tbXUtZGVmcy5oDQpAQCAtNDY5LDIyICs0NjksNiBAQCBzdHJ1Y3QgYW1kX2lvbW11X3B0 ZSB7DQogICNkZWZpbmUgSU9NTVVfQ09OVFJPTF9ESVNBQkxFRAkwDQogICNkZWZpbmUgSU9NTVVf Q09OVFJPTF9FTkFCTEVECTENCiAgDQotLyogaW50ZXJydXB0IHJlbWFwcGluZyB0YWJsZSAqLw0K LSNkZWZpbmUgSU5UX1JFTUFQX0VOVFJZX1JFTUFQRU5fTUFTSyAgICAweDAwMDAwMDAxDQotI2Rl ZmluZSBJTlRfUkVNQVBfRU5UUllfUkVNQVBFTl9TSElGVCAgIDANCi0jZGVmaW5lIElOVF9SRU1B UF9FTlRSWV9TVVBJT1BGX01BU0sgICAgMHgwMDAwMDAwMg0KLSNkZWZpbmUgSU5UX1JFTUFQX0VO VFJZX1NVUElPUEZfU0hJRlQgICAxDQotI2RlZmluZSBJTlRfUkVNQVBfRU5UUllfSU5UVFlQRV9N QVNLICAgIDB4MDAwMDAwMUMNCi0jZGVmaW5lIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBFX1NISUZU ICAgMg0KLSNkZWZpbmUgSU5UX1JFTUFQX0VOVFJZX1JFUUVPSV9NQVNLICAgICAweDAwMDAwMDIw DQotI2RlZmluZSBJTlRfUkVNQVBfRU5UUllfUkVRRU9JX1NISUZUICAgIDUNCi0jZGVmaW5lIElO VF9SRU1BUF9FTlRSWV9ETV9NQVNLICAgICAgICAgMHgwMDAwMDA0MA0KLSNkZWZpbmUgSU5UX1JF TUFQX0VOVFJZX0RNX1NISUZUICAgICAgICA2DQotI2RlZmluZSBJTlRfUkVNQVBfRU5UUllfREVT VF9NQVNUICAgICAgIDB4MDAwMEZGMDANCi0jZGVmaW5lIElOVF9SRU1BUF9FTlRSWV9ERVNUX1NI SUZUICAgICAgOA0KLSNkZWZpbmUgSU5UX1JFTUFQX0VOVFJZX1ZFQ1RPUl9NQVNLICAgICAweDAw RkYwMDAwDQotI2RlZmluZSBJTlRfUkVNQVBfRU5UUllfVkVDVE9SX1NISUZUICAgIDE2DQotDQog ICNkZWZpbmUgSU5WX0lPTU1VX0FMTF9QQUdFU19BRERSRVNTICAgICAgKCgxVUxMIDw8IDYzKSAt IDEpDQogIA0KICAjZGVmaW5lIElPTU1VX1JJTkdfQlVGRkVSX1BUUl9NQVNLICAgICAgICAgICAg ICAgICAgMHgwMDA3RkZGMA0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9q ZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVu LWRldmVs