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.5 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS,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 02191C7618F for ; Fri, 19 Jul 2019 18:40:18 +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 BD52521849 for ; Fri, 19 Jul 2019 18:40:17 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amdcloud.onmicrosoft.com header.i=@amdcloud.onmicrosoft.com header.b="OYNGa/7+" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BD52521849 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amd.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 1hoXnW-0006Kh-Ls; Fri, 19 Jul 2019 18:40:02 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hoXnU-0006CX-Lv for xen-devel@lists.xenproject.org; Fri, 19 Jul 2019 18:40:00 +0000 X-Inumbo-ID: 9c85edd3-aa54-11e9-8980-bc764e045a96 Received: from NAM03-DM3-obe.outbound.protection.outlook.com (unknown [2a01:111:f400:fe49::61d]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id 9c85edd3-aa54-11e9-8980-bc764e045a96; Fri, 19 Jul 2019 18:39:59 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OaNo+olMRtS7vMCl+N/Mv1PjnxbcNi2rWTARCIQ0t3itY0iRkCW7MvDZxpGPyNoLd7CN4lnMSqMO+3CObnNBn7dbOEmBpJcgu2cORrkfQR80xE8IDIXLloeAzpd6FMACfA7jeKkkCGmK3BGug9qGFqmpRwxGOfq4VBkRaCewYbLOVo8vufwyVL6LJ/mFDzy061M0l3qIQkLEXuKEHx+TamV/ZDH3OvXpL1tRpSu7EzzMjOvYDoVuhYXzkETnGHL4bPKVlZBmBTWBD14xe/1kGRRC44DXEbrtKZIYx5RsmF4m/3z55Qcrj7FW/YfuJ/a/vszSjcW/5VkMziH64mOYbQ== 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=6LzfU+xCAUVGULLP8Wt23Xsi7yvsmoMAhsEGkjBxLUk=; b=ipBgJiv5lFTlvcFXOJtH/BtOWe3GYaO1rDCp1RV9E+Xha8zcwmMMgXfdMLmxSwel0VCrIAXflBJUvpyoF4QC1hklMQGfveh8AoOXO30FBnCtpzPsc8GkKurvoVp7O9YhwhqD2KzMmBljSrcBvzutC0h4EjoLkGfzXdL0TX/qnsolgEmCDCFtqAytmzG0n6prOLnpzAEafeIRi9Wh1z6WSIKtT1CV+r4T/L11l2rY3d9hyoppHUiaOkgE787S8cV9o06sJ8xEQEgBgBZcyvw5LC0FmRd2DS81Gev5Td/MBfraxiKEwe/Y9RreOlphSfBXw9YYO5pUpwqTMAiUj5TO7Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1;spf=pass smtp.mailfrom=amd.com;dmarc=pass action=none header.from=amd.com;dkim=pass header.d=amd.com;arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amdcloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6LzfU+xCAUVGULLP8Wt23Xsi7yvsmoMAhsEGkjBxLUk=; b=OYNGa/7+gdkzhV74TVxjQRrY1VZfJ5M8r/XPM4GHERgGIpwcnKd0U3aUn9x6QYtQkxjFpfcGhAie0he728yVGC9c64PCfcnFNSeQEwQ2QvnYBWLo/Pf4dyyzWhrfi9EdkdPFa0BFhfALYfqqvglLdf0eXKv61GL7bgR6ShKO3KQ= Received: from DM6PR12MB3515.namprd12.prod.outlook.com (20.179.106.151) by DM6PR12MB2953.namprd12.prod.outlook.com (20.179.104.95) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2094.14; Fri, 19 Jul 2019 18:39:56 +0000 Received: from DM6PR12MB3515.namprd12.prod.outlook.com ([fe80::3576:d8b0:7554:adc]) by DM6PR12MB3515.namprd12.prod.outlook.com ([fe80::3576:d8b0:7554:adc%7]) with mapi id 15.20.2094.013; Fri, 19 Jul 2019 18:39:56 +0000 From: "Woods, Brian" To: Jan Beulich Thread-Topic: [PATCH v3 11/14] AMD/IOMMU: adjust setup of internal interrupt for x2APIC mode Thread-Index: AQHVO/VC8coqBYC9t0mF4DgC//tp8qbSSssA Date: Fri, 19 Jul 2019 18:39:56 +0000 Message-ID: <20190719183953.GI4496@amd.com> References: <6272c301-a905-38cf-dd1a-645f3d703241@suse.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: SN6PR15CA0012.namprd15.prod.outlook.com (2603:10b6:805:16::25) To DM6PR12MB3515.namprd12.prod.outlook.com (2603:10b6:5:18a::23) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Brian.Woods@amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [165.204.77.1] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8c7cbf62-a008-4682-a9f4-08d70c787f24 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(4618075)(2017052603328)(7193020); SRVR:DM6PR12MB2953; x-ms-traffictypediagnostic: DM6PR12MB2953: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5516; x-forefront-prvs: 01039C93E4 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(366004)(396003)(346002)(39860400002)(136003)(376002)(199004)(189003)(6436002)(316002)(305945005)(6916009)(6486002)(2906002)(14454004)(4326008)(54906003)(86362001)(53936002)(6512007)(6246003)(8676002)(33656002)(1076003)(3846002)(36756003)(71190400001)(71200400001)(478600001)(66476007)(66556008)(64756008)(66446008)(66946007)(66066001)(25786009)(6116002)(5660300002)(81156014)(81166006)(52116002)(7736002)(446003)(256004)(14444005)(11346002)(68736007)(8936002)(486006)(26005)(99286004)(186003)(476003)(6506007)(386003)(102836004)(2616005)(229853002)(76176011); DIR:OUT; SFP:1101; SCL:1; SRVR:DM6PR12MB2953; H:DM6PR12MB3515.namprd12.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: amd.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: EouAgdLP3YA1yZJHL3cr/sZROnGhybHQTt81x0slZEGwUuhpSbTi6+Iz+HCG/UIxDMkxVLnjV+aOXqvNFTFZZ5HgNj8AMA6zzSiaPeQw+EhxcF4jm2Q6do1Pw2fcl78YqYT2ioRZpU/7P4YFMxPg+vr5CyS3a4tBfVNyoTDOQ75Q3cU8eNMCp51x669z+Vp8NgeeGt8D6CCjep/rQckHl8cM0CNrINmv22pwsn8wT7ct1kfGov8JCM55zOY5Bz97gLeGYGX5hDsZRFJXgOCGyQcl+JiJQR6eTQlL5Z8ik3CYmt8hpOFBtR0I8mih5RpIhGjnKhYj82h9C73ffpFTcYdfY3QESaNd9v5uGK+fqjnjP1Ii7IQRDXVfvX5XWCPeffls85nxL84VmZSvyhfH61jsQ5weTdefDTNxnsM2FQU= Content-ID: <989841B59C0ED142A3F7FC72E25B557B@namprd12.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8c7cbf62-a008-4682-a9f4-08d70c787f24 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Jul 2019 18:39:56.6971 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: brwoods@amd.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB2953 Subject: Re: [Xen-devel] [PATCH v3 11/14] AMD/IOMMU: adjust setup of internal interrupt for x2APIC mode 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: "xen-devel@lists.xenproject.org" , "Woods, Brian" , "Suthikulpanit, Suravee" , Andrew Cooper Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" T24gVHVlLCBKdWwgMTYsIDIwMTkgYXQgMDQ6Mzk6NThQTSArMDAwMCwgSmFuIEJldWxpY2ggd3Jv dGU6Cj4gSW4gb3JkZXIgdG8gYmUgYWJsZSB0byBleHByZXNzIGFsbCBwb3NzaWJsZSBkZXN0aW5h dGlvbnMgd2UgbmVlZCB0byBtYWtlCj4gdXNlIG9mIHRoaXMgbm9uLU1TSS1jYXBhYmlsaXR5IGJh c2VkIG1lY2hhbmlzbS4gVGhlIG5ldyBJUlEgY29udHJvbGxlcgo+IHN0cnVjdHVyZSBjYW4gcmUt dXNlIGNlcnRhaW4gTVNJIGZ1bmN0aW9ucywgdGhvdWdoLgo+IAo+IEZvciBub3cgZ2VuZXJhbCBh bmQgUFBSIGludGVycnVwdHMgc3RpbGwgc2hhcmUgYSBzaW5nbGUgdmVjdG9yLCBJUlEsIGFuZAo+ IGhlbmNlIGhhbmRsZXIuCj4gCj4gU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNo QHN1c2UuY29tPgo+IFJldmlld2VkLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0Bj aXRyaXguY29tPgoKQWNrZWQtYnk6IEJyaWFuIFdvb2RzIDxicmlhbi53b29kc0BhbWQuY29tPgoK PiAtLS0KPiB2MzogUmUtYmFzZS4KPiAKPiAtLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9h bWQvaW9tbXVfaW5pdC5jCj4gKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11 X2luaXQuYwo+IEBAIC00NzIsNiArNDcyLDQ0IEBAIHN0YXRpYyBod19pcnFfY29udHJvbGxlciBp b21tdV9tYXNrYWJsZV8KPiAgICAgICAuc2V0X2FmZmluaXR5ID0gc2V0X21zaV9hZmZpbml0eSwK PiAgIH07Cj4gICAKPiArc3RhdGljIHZvaWQgc2V0X3gyYXBpY19hZmZpbml0eShzdHJ1Y3QgaXJx X2Rlc2MgKmRlc2MsIGNvbnN0IGNwdW1hc2tfdCAqbWFzaykKPiArewo+ICsgICAgc3RydWN0IGFt ZF9pb21tdSAqaW9tbXUgPSBkZXNjLT5hY3Rpb24tPmRldl9pZDsKPiArICAgIHVuc2lnbmVkIGlu dCBkZXN0ID0gc2V0X2Rlc2NfYWZmaW5pdHkoZGVzYywgbWFzayk7Cj4gKyAgICB1bmlvbiBhbWRf aW9tbXVfeDJhcGljX2NvbnRyb2wgY3RybCA9IHt9Owo+ICsgICAgdW5zaWduZWQgbG9uZyBmbGFn czsKPiArCj4gKyAgICBpZiAoIGRlc3QgPT0gQkFEX0FQSUNJRCApCj4gKyAgICAgICAgcmV0dXJu Owo+ICsKPiArICAgIG1zaV9jb21wb3NlX21zZyhkZXNjLT5hcmNoLnZlY3RvciwgTlVMTCwgJmlv bW11LT5tc2kubXNnKTsKPiArICAgIGlvbW11LT5tc2kubXNnLmRlc3QzMiA9IGRlc3Q7Cj4gKwo+ ICsgICAgY3RybC5kZXN0X21vZGUgPSBNQVNLX0VYVFIoaW9tbXUtPm1zaS5tc2cuYWRkcmVzc19s bywKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1TSV9BRERSX0RFU1RNT0RFX01B U0spOwo+ICsgICAgY3RybC5pbnRfdHlwZSA9IE1BU0tfRVhUUihpb21tdS0+bXNpLm1zZy5kYXRh LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNU0lfREFUQV9ERUxJVkVSWV9NT0RF X01BU0spOwo+ICsgICAgY3RybC52ZWN0b3IgPSBkZXNjLT5hcmNoLnZlY3RvcjsKPiArICAgIGN0 cmwuZGVzdF9sbyA9IGRlc3Q7Cj4gKyAgICBjdHJsLmRlc3RfaGkgPSBkZXN0ID4+IDI0Owo+ICsK PiArICAgIHNwaW5fbG9ja19pcnFzYXZlKCZpb21tdS0+bG9jaywgZmxhZ3MpOwo+ICsgICAgd3Jp dGVxKGN0cmwucmF3LCBpb21tdS0+bW1pb19iYXNlICsgSU9NTVVfWFRfSU5UX0NUUkxfTU1JT19P RkZTRVQpOwo+ICsgICAgd3JpdGVxKGN0cmwucmF3LCBpb21tdS0+bW1pb19iYXNlICsgSU9NTVVf WFRfUFBSX0lOVF9DVFJMX01NSU9fT0ZGU0VUKTsKPiArICAgIHNwaW5fdW5sb2NrX2lycXJlc3Rv cmUoJmlvbW11LT5sb2NrLCBmbGFncyk7Cj4gK30KPiArCj4gK3N0YXRpYyBod19pcnFfY29udHJv bGxlciBpb21tdV94MmFwaWNfdHlwZSA9IHsKPiArICAgIC50eXBlbmFtZSAgICAgPSAiSU9NTVUt eDJBUElDIiwKPiArICAgIC5zdGFydHVwICAgICAgPSBpcnFfc3RhcnR1cF9ub25lLAo+ICsgICAg LnNodXRkb3duICAgICA9IGlycV9zaHV0ZG93bl9ub25lLAo+ICsgICAgLmVuYWJsZSAgICAgICA9 IGlycV9lbmFibGVfbm9uZSwKPiArICAgIC5kaXNhYmxlICAgICAgPSBpcnFfZGlzYWJsZV9ub25l LAo+ICsgICAgLmFjayAgICAgICAgICA9IGFja19ub25tYXNrYWJsZV9tc2lfaXJxLAo+ICsgICAg LmVuZCAgICAgICAgICA9IGVuZF9ub25tYXNrYWJsZV9tc2lfaXJxLAo+ICsgICAgLnNldF9hZmZp bml0eSA9IHNldF94MmFwaWNfYWZmaW5pdHksCj4gK307Cj4gKwo+ICAgc3RhdGljIHZvaWQgcGFy c2VfZXZlbnRfbG9nX2VudHJ5KHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCB1MzIgZW50cnlbXSkK PiAgIHsKPiAgICAgICB1MTYgZG9tYWluX2lkLCBkZXZpY2VfaWQsIGZsYWdzOwo+IEBAIC03MjYs OCArNzY0LDYgQEAgc3RhdGljIHZvaWQgaW9tbXVfaW50ZXJydXB0X2hhbmRsZXIoaW50Cj4gICBz dGF0aWMgYm9vbF90IF9faW5pdCBzZXRfaW9tbXVfaW50ZXJydXB0X2hhbmRsZXIoc3RydWN0IGFt ZF9pb21tdSAqaW9tbXUpCj4gICB7Cj4gICAgICAgaW50IGlycSwgcmV0Owo+IC0gICAgaHdfaXJx X2NvbnRyb2xsZXIgKmhhbmRsZXI7Cj4gLSAgICB1MTYgY29udHJvbDsKPiAgIAo+ICAgICAgIGly cSA9IGNyZWF0ZV9pcnEoTlVNQV9OT19OT0RFKTsKPiAgICAgICBpZiAoIGlycSA8PSAwICkKPiBA QCAtNzQ3LDIwICs3ODMsNDMgQEAgc3RhdGljIGJvb2xfdCBfX2luaXQgc2V0X2lvbW11X2ludGVy cnVwdAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgUENJX1NMT1QoaW9tbXUtPmJkZiksIFBD SV9GVU5DKGlvbW11LT5iZGYpKTsKPiAgICAgICAgICAgcmV0dXJuIDA7Cj4gICAgICAgfQo+IC0g ICAgY29udHJvbCA9IHBjaV9jb25mX3JlYWQxNihpb21tdS0+c2VnLCBQQ0lfQlVTKGlvbW11LT5i ZGYpLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQQ0lfU0xPVChpb21tdS0+YmRm KSwgUENJX0ZVTkMoaW9tbXUtPmJkZiksCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGlvbW11LT5tc2kubXNpX2F0dHJpYi5wb3MgKyBQQ0lfTVNJX0ZMQUdTKTsKPiAtICAgIGlvbW11 LT5tc2kubXNpLm52ZWMgPSAxOwo+IC0gICAgaWYgKCBpc19tYXNrX2JpdF9zdXBwb3J0KGNvbnRy b2wpICkKPiAtICAgIHsKPiAtICAgICAgICBpb21tdS0+bXNpLm1zaV9hdHRyaWIubWFza2JpdCA9 IDE7Cj4gLSAgICAgICAgaW9tbXUtPm1zaS5tc2kubXBvcyA9IG1zaV9tYXNrX2JpdHNfcmVnKGlv bW11LT5tc2kubXNpX2F0dHJpYi5wb3MsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGlzXzY0Yml0X2FkZHJlc3MoY29udHJvbCkpOwo+IC0gICAgICAg IGhhbmRsZXIgPSAmaW9tbXVfbWFza2FibGVfbXNpX3R5cGU7Cj4gKwo+ICsgICAgaWYgKCBpb21t dS0+Y3RybC5pbnRfY2FwX3h0X2VuICkKPiArICAgIHsKPiArICAgICAgICBzdHJ1Y3QgaXJxX2Rl c2MgKmRlc2MgPSBpcnFfdG9fZGVzYyhpcnEpOwo+ICsKPiArICAgICAgICBpb21tdS0+bXNpLm1z aV9hdHRyaWIucG9zID0gTVNJX1RZUEVfSU9NTVU7Cj4gKyAgICAgICAgaW9tbXUtPm1zaS5tc2lf YXR0cmliLm1hc2tiaXQgPSAwOwo+ICsgICAgICAgIGlvbW11LT5tc2kubXNpX2F0dHJpYi5pc182 NCA9IDE7Cj4gKwo+ICsgICAgICAgIGRlc2MtPm1zaV9kZXNjID0gJmlvbW11LT5tc2k7Cj4gKyAg ICAgICAgZGVzYy0+aGFuZGxlciA9ICZpb21tdV94MmFwaWNfdHlwZTsKPiArCj4gKyAgICAgICAg cmV0ID0gMDsKPiAgICAgICB9Cj4gICAgICAgZWxzZQo+IC0gICAgICAgIGhhbmRsZXIgPSAmaW9t bXVfbXNpX3R5cGU7Cj4gLSAgICByZXQgPSBfX3NldHVwX21zaV9pcnEoaXJxX3RvX2Rlc2MoaXJx KSwgJmlvbW11LT5tc2ksIGhhbmRsZXIpOwo+ICsgICAgewo+ICsgICAgICAgIGh3X2lycV9jb250 cm9sbGVyICpoYW5kbGVyOwo+ICsgICAgICAgIHUxNiBjb250cm9sOwo+ICsKPiArICAgICAgICBj b250cm9sID0gcGNpX2NvbmZfcmVhZDE2KGlvbW11LT5zZWcsIFBDSV9CVVMoaW9tbXUtPmJkZiks Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQQ0lfU0xPVChpb21tdS0+YmRm KSwgUENJX0ZVTkMoaW9tbXUtPmJkZiksCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpb21tdS0+bXNpLm1zaV9hdHRyaWIucG9zICsgUENJX01TSV9GTEFHUyk7Cj4gKwo+ICsg ICAgICAgIGlvbW11LT5tc2kubXNpLm52ZWMgPSAxOwo+ICsgICAgICAgIGlmICggaXNfbWFza19i aXRfc3VwcG9ydChjb250cm9sKSApCj4gKyAgICAgICAgewo+ICsgICAgICAgICAgICBpb21tdS0+ bXNpLm1zaV9hdHRyaWIubWFza2JpdCA9IDE7Cj4gKyAgICAgICAgICAgIGlvbW11LT5tc2kubXNp Lm1wb3MgPSBtc2lfbWFza19iaXRzX3JlZyhpb21tdS0+bXNpLm1zaV9hdHRyaWIucG9zLAo+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNfNjRi aXRfYWRkcmVzcyhjb250cm9sKSk7Cj4gKyAgICAgICAgICAgIGhhbmRsZXIgPSAmaW9tbXVfbWFz a2FibGVfbXNpX3R5cGU7Cj4gKyAgICAgICAgfQo+ICsgICAgICAgIGVsc2UKPiArICAgICAgICAg ICAgaGFuZGxlciA9ICZpb21tdV9tc2lfdHlwZTsKPiArCj4gKyAgICAgICAgcmV0ID0gX19zZXR1 cF9tc2lfaXJxKGlycV90b19kZXNjKGlycSksICZpb21tdS0+bXNpLCBoYW5kbGVyKTsKPiArICAg IH0KPiArCj4gICAgICAgaWYgKCAhcmV0ICkKPiAgICAgICAgICAgcmV0ID0gcmVxdWVzdF9pcnEo aXJxLCAwLCBpb21tdV9pbnRlcnJ1cHRfaGFuZGxlciwgImFtZF9pb21tdSIsIGlvbW11KTsKPiAg ICAgICBpZiAoIHJldCApCj4gQEAgLTgzOCw4ICs4OTcsMTkgQEAgc3RhdGljIHZvaWQgZW5hYmxl X2lvbW11KHN0cnVjdCBhbWRfaW9tbQo+ICAgICAgICAgICBzdHJ1Y3QgaXJxX2Rlc2MgKmRlc2Mg PSBpcnFfdG9fZGVzYyhpb21tdS0+bXNpLmlycSk7Cj4gICAKPiAgICAgICAgICAgc3Bpbl9sb2Nr KCZkZXNjLT5sb2NrKTsKPiAtICAgICAgICBzZXRfbXNpX2FmZmluaXR5KGRlc2MsIE5VTEwpOwo+ IC0gICAgICAgIHNwaW5fdW5sb2NrKCZkZXNjLT5sb2NrKTsKPiArCj4gKyAgICAgICAgaWYgKCBp b21tdS0+Y3RybC5pbnRfY2FwX3h0X2VuICkKPiArICAgICAgICB7Cj4gKyAgICAgICAgICAgIHNl dF94MmFwaWNfYWZmaW5pdHkoZGVzYywgTlVMTCk7Cj4gKyAgICAgICAgICAgIHNwaW5fdW5sb2Nr KCZkZXNjLT5sb2NrKTsKPiArICAgICAgICB9Cj4gKyAgICAgICAgZWxzZQo+ICsgICAgICAgIHsK PiArICAgICAgICAgICAgc2V0X21zaV9hZmZpbml0eShkZXNjLCBOVUxMKTsKPiArICAgICAgICAg ICAgc3Bpbl91bmxvY2soJmRlc2MtPmxvY2spOwo+ICsKPiArICAgICAgICAgICAgYW1kX2lvbW11 X21zaV9lbmFibGUoaW9tbXUsIElPTU1VX0NPTlRST0xfRU5BQkxFRCk7Cj4gKyAgICAgICAgfQo+ ICAgICAgIH0KPiAgIAo+ICAgICAgIGFtZF9pb21tdV9tc2lfZW5hYmxlKGlvbW11LCBJT01NVV9D T05UUk9MX0VOQUJMRUQpOwo+IEBAIC04NzksNyArOTQ5LDkgQEAgc3RhdGljIHZvaWQgZGlzYWJs ZV9pb21tdShzdHJ1Y3QgYW1kX2lvbQo+ICAgICAgICAgICByZXR1cm47Cj4gICAgICAgfQo+ICAg Cj4gLSAgICBhbWRfaW9tbXVfbXNpX2VuYWJsZShpb21tdSwgSU9NTVVfQ09OVFJPTF9ESVNBQkxF RCk7Cj4gKyAgICBpZiAoICFpb21tdS0+Y3RybC5pbnRfY2FwX3h0X2VuICkKPiArICAgICAgICBh bWRfaW9tbXVfbXNpX2VuYWJsZShpb21tdSwgSU9NTVVfQ09OVFJPTF9ESVNBQkxFRCk7Cj4gKwo+ ICAgICAgIHNldF9pb21tdV9jb21tYW5kX2J1ZmZlcl9jb250cm9sKGlvbW11LCBJT01NVV9DT05U Uk9MX0RJU0FCTEVEKTsKPiAgICAgICBzZXRfaW9tbXVfZXZlbnRfbG9nX2NvbnRyb2woaW9tbXUs IElPTU1VX0NPTlRST0xfRElTQUJMRUQpOwo+ICAgCj4gLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4 Ni9odm0vc3ZtL2FtZC1pb21tdS1kZWZzLmgKPiArKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2h2 bS9zdm0vYW1kLWlvbW11LWRlZnMuaAo+IEBAIC00MTYsNiArNDE2LDI1IEBAIHVuaW9uIGFtZF9p b21tdV9leHRfZmVhdHVyZXMgewo+ICAgICAgIH0gZmxkczsKPiAgIH07Cj4gICAKPiArLyogeDJB UElDIENvbnRyb2wgUmVnaXN0ZXJzICovCj4gKyNkZWZpbmUgSU9NTVVfWFRfSU5UX0NUUkxfTU1J T19PRkZTRVQJCTB4MDE3MAo+ICsjZGVmaW5lIElPTU1VX1hUX1BQUl9JTlRfQ1RSTF9NTUlPX09G RlNFVAkweDAxNzgKPiArI2RlZmluZSBJT01NVV9YVF9HQV9JTlRfQ1RSTF9NTUlPX09GRlNFVAkw eDAxODAKPiArCj4gK3VuaW9uIGFtZF9pb21tdV94MmFwaWNfY29udHJvbCB7Cj4gKyAgICB1aW50 NjRfdCByYXc7Cj4gKyAgICBzdHJ1Y3Qgewo+ICsgICAgICAgIHVuc2lnbmVkIGludCA6MjsKPiAr ICAgICAgICB1bnNpZ25lZCBpbnQgZGVzdF9tb2RlOjE7Cj4gKyAgICAgICAgdW5zaWduZWQgaW50 IDo1Owo+ICsgICAgICAgIHVuc2lnbmVkIGludCBkZXN0X2xvOjI0Owo+ICsgICAgICAgIHVuc2ln bmVkIGludCB2ZWN0b3I6ODsKPiArICAgICAgICB1bnNpZ25lZCBpbnQgaW50X3R5cGU6MTsgLyog RE0gaW4gSU9NTVUgc3BlYyAzLjA0ICovCj4gKyAgICAgICAgdW5zaWduZWQgaW50IDoxNTsKPiAr ICAgICAgICB1bnNpZ25lZCBpbnQgZGVzdF9oaTo4Owo+ICsgICAgfTsKPiArfTsKPiArCj4gICAv KiBTdGF0dXMgUmVnaXN0ZXIqLwo+ICAgI2RlZmluZSBJT01NVV9TVEFUVVNfTU1JT19PRkZTRVQJ CTB4MjAyMAo+ICAgI2RlZmluZSBJT01NVV9TVEFUVVNfRVZFTlRfT1ZFUkZMT1dfTUFTSwkweDAw MDAwMDAxCj4gCgotLSAKQnJpYW4gV29vZHMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3Rz LnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0 aW5mby94ZW4tZGV2ZWw=