From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1B39B41DCC; Sat, 4 Mar 2023 06:08:24 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A87E440E25; Sat, 4 Mar 2023 06:08:23 +0100 (CET) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2058.outbound.protection.outlook.com [40.107.20.58]) by mails.dpdk.org (Postfix) with ESMTP id C214F400D7 for ; Sat, 4 Mar 2023 06:08:22 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RXvQJ+g07J1hpvnQQvTMxaclN0OF9hRHTrdI8MQetxM=; b=KgwuilV5FS/BgXb25aZYTQpwT2aeVDGS1294ry4LDccCyT/ivCJHkEm3aAk3o38VNcNtVyVo67xsecMLE6tWEH5b/qJ2dESO9zPpigtIB6ovR7n1rMn20XnCOPpXZbU2YaLVnhFNDYaJ8SUPqcPI2KmXKCpqzuJoV3BpMb/HPco= Received: from AM5PR1001CA0014.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:206:2::27) by PA4PR08MB7620.eurprd08.prod.outlook.com (2603:10a6:102:261::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6156.23; Sat, 4 Mar 2023 05:08:20 +0000 Received: from VI1EUR03FT023.eop-EUR03.prod.protection.outlook.com (2603:10a6:206:2:cafe::98) by AM5PR1001CA0014.outlook.office365.com (2603:10a6:206:2::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6156.23 via Frontend Transport; Sat, 4 Mar 2023 05:08:20 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VI1EUR03FT023.mail.protection.outlook.com (100.127.144.226) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6156.23 via Frontend Transport; Sat, 4 Mar 2023 05:08:19 +0000 Received: ("Tessian outbound 2ba0ed2ebb9f:v135"); Sat, 04 Mar 2023 05:08:19 +0000 X-CR-MTA-TID: 64aa7808 Received: from 37450e029b92.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 323E7944-09E1-48A8-B2B2-FAB3E36C7BDF.1; Sat, 04 Mar 2023 05:08:13 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 37450e029b92.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Sat, 04 Mar 2023 05:08:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=O2Bnh7YMme1KAWuCRTC4eK/g+c+fDSbpF5S1LYEnW2QrEMIkmO1/JuujheEyKsa1d3tK44DxpLBQdplq71eYQ0RmF0hWxkNpld8oC2yReF79QTBVI3Qfl1zuL6WDj70G1jVVQAWqIP4pXFGE59dn6qVZ9UXKafBogvT+c6H9TNDcJZGArF/e8zpo1hb6yX7zGSnvOdYi0cXy4WXqU9NTFUKeTbl9blXAuAxT3l2VEkmBUUS6OW2qNcESJlRMzbUhQtwKhfmGuUIzg5cx2OofE3HPBl93afliuJri4K5JJHm47EK5h+pzCTdO7G6t5E/ZTBN4Lf9G1KI+JiIlsZqYNw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=RXvQJ+g07J1hpvnQQvTMxaclN0OF9hRHTrdI8MQetxM=; b=CKqOK6iNXiD20KuRqyvFO8jR2Nak3VilaV9Gzo8SHbifMamRWkayC3K5tF32G+XM85/1RcbZDsVZU3mMAGego4Qv/upe2JzQxIVHsyS89Iv+2GnmZP1L2iMKxnSXhBK9xo6d5wkIS7eLq/gvrdi3BM0d3qMro/YJUdl9kO+BQntf4yIxx8Gy0Qw5MlJdJc7Kkl2SbWBsvIfElbA5p9hYqcMeU2d78e/s5qabVO4jMtRJ2InGMGKtFO7ddEN7PBiIKBaNQgL5htbJfi3EbKIfOFJ4py3PcS6pcEGBVs6m1HdrE6Vcm2gBhfie2qEqR6TfQAwx5ibju5LTYYW7PfpBPw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RXvQJ+g07J1hpvnQQvTMxaclN0OF9hRHTrdI8MQetxM=; b=KgwuilV5FS/BgXb25aZYTQpwT2aeVDGS1294ry4LDccCyT/ivCJHkEm3aAk3o38VNcNtVyVo67xsecMLE6tWEH5b/qJ2dESO9zPpigtIB6ovR7n1rMn20XnCOPpXZbU2YaLVnhFNDYaJ8SUPqcPI2KmXKCpqzuJoV3BpMb/HPco= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by PAVPR08MB9673.eurprd08.prod.outlook.com (2603:10a6:102:31c::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6156.23; Sat, 4 Mar 2023 05:08:10 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::910e:e35f:b1eb:ae9]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::910e:e35f:b1eb:ae9%5]) with mapi id 15.20.6156.023; Sat, 4 Mar 2023 05:08:10 +0000 From: Honnappa Nagarahalli To: Konstantin Ananyev , "dev@dpdk.org" , Chengwen Feng , "thomas@monjalon.net" , Ferruh Yigit , Andrew Rybchenko , Kalesh AP , "Ajit Khaparde (ajit.khaparde@broadcom.com)" CC: nd , nd Subject: RE: [PATCH 1/5] ethdev: fix race-condition of proactive error handling mode Thread-Topic: [PATCH 1/5] ethdev: fix race-condition of proactive error handling mode Thread-Index: AQHZS+vQExpR5AcJek+fR6H0lQR6ea7oHPFAgAAXgYCAAdrnUA== Date: Sat, 4 Mar 2023 05:08:09 +0000 Message-ID: References: <20230301030610.49468-1-fengchengwen@huawei.com> <20230301030610.49468-2-fengchengwen@huawei.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 1E1023D2C8D55940A36869DAEE243BF3.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DBAPR08MB5814:EE_|PAVPR08MB9673:EE_|VI1EUR03FT023:EE_|PA4PR08MB7620:EE_ X-MS-Office365-Filtering-Correlation-Id: c7baa4ac-7ded-4566-b18d-08db1c6e78a9 x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 50TfOvpUQh26S/aLqCgUJiQYdRZ2WTTUpkqzkJdumNhh8cWlVJkTMutQzeyXV5yZV+FyUqNayDCNPV6oXf6o0uYO4J156kxEAUilq+oY+o33Rs/UUfDv5AU3Z7JKInJczeCQUawdqB0itIdwTITneoZ5FGXy+BmS8JBHrIFMdjE2S1yaFw5/K3iTyqt9o3ONfANohvpLef6DoDlFW9evIBLXhZZuiOcK0/I75l+8K1ZqEUQKf49J6mgbfT9uY/O+dsqlKsFCk9t48FHf81ed099GHMbtX5W+vixoH207Xrz5d5+X2LfC331viQ2txxcU+HUJKlyCfsCzFu59Ep/UBW9G2QbHeJamzsFpX46tKvQORfGHt4Cg1yYGGU9JYOfP83sOQWaRQ7KEpDUm0lrAlLCbbWhQjg9ZAhPTsJVW67ov4dCTIxTj5+llBO0OCvt5eCpSLDCIyd+ioGFy/1dIYO3sUu+tecBUL4AfPiqwuqJH2RBZylrf2SHVYLC8moeP2rwJkHBKPfnVTDHPHV+0TJ28IUmtR9w+dge0ihijEH+5MUfkyyG5Y3mN4JXmYDyiUIJ/PR9iFK3NHK+vGPuClTwKsI16X28Ttm3Y1htJEl0QvcVkhr7GVl3xrqw256la/ON6vMctiaG5IBAOcUIuD47rnjM0BlIGC4gboP0oQMON+GlPGLb5CzQOzPg1RP1B X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230025)(4636009)(346002)(376002)(366004)(396003)(39860400002)(136003)(451199018)(8936002)(52536014)(76116006)(5660300002)(30864003)(64756008)(66556008)(66946007)(66476007)(66446008)(41300700001)(2906002)(8676002)(4326008)(54906003)(110136005)(316002)(478600001)(7696005)(71200400001)(26005)(6506007)(53546011)(966005)(122000001)(33656002)(86362001)(83380400001)(38070700005)(55016003)(186003)(38100700002)(9686003); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9673 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VI1EUR03FT023.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 8c1a11a3-c95c-4ac0-af74-08db1c6e72ac X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QJOKj8AVEDMVNuIUF7tnNqylhL5p36u46QDMYOlg7Z+17vbzXAWtcCHbVFiX0Zl8wVdtkw+Pmtfj4QDRwMmCXUK6ximWEbfEx7e0q8MAHykb3QF5K5IhQOrkJJbp0vxQ6KIq/N8jO0hfTYS1u3cXIlFI2/nE8Sje7gwpwoawwRRvhp4M/9HkkXtkDzIgi9aBQJz1fWmNrxwcQ3oINFeu1GC4sQXPbzfDX9w8Fx2nbRi3g6HcFWjqLUPP3JQd1XQ18FJzNnd9rx5KXjNAWWaS7gCY5H1iGBozMAvyN97s9arDSim52VF6jVNx/25OD85Q3zlxiljnx/yUXDHAbD1h6a2P8lCSdi43y8hMOUiV5LnsPQjW6SB1BA6GmD9trhBCMYRBZIIkX8OkAx7SPcds3YAtFJ13qDxz1OYxFrhb+68qnA9mcbAmZPYN4rX+y09FdEt5axn4wyAIZWYi7+ej9fW+PVJCi418ZD4VSdxC4L/QfXnUKsb/RbFEPuWqNIHufho2ivmk1EVStVfv6f5S7u9x8jfdDxdixkle0k8wb7HpWfV6hWfLKqVfCsq6WqhMi8l04r1C1/Pf8kO3r2yU1PJWtluKd7wldAS8isaiQaXgnjyzrDAwGqgCUP1pfkOv1IGQPE0vuIZKOwl8NtGF7r99GUXBj51TZrkgz/gfbgsjT6JPb6qDfy7IuNzmguPcstZg8KBGKSTGD0ajRFTU+/U2ZxLJoRqb/kehsAFl/BU= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230025)(4636009)(136003)(376002)(39860400002)(396003)(346002)(451199018)(36840700001)(46966006)(40470700004)(53546011)(26005)(6506007)(478600001)(356005)(2906002)(47076005)(55016003)(7696005)(40480700001)(9686003)(186003)(40460700003)(36860700001)(81166007)(52536014)(8936002)(966005)(336012)(82740400003)(8676002)(4326008)(70206006)(70586007)(82310400005)(41300700001)(33656002)(5660300002)(30864003)(316002)(86362001)(54906003)(110136005)(83380400001)(23180200003); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Mar 2023 05:08:19.8018 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c7baa4ac-7ded-4566-b18d-08db1c6e78a9 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: VI1EUR03FT023.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7620 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogS29uc3RhbnRpbiBBbmFu eWV2IDxrb25zdGFudGluLnYuYW5hbnlldkB5YW5kZXgucnU+DQo+IFNlbnQ6IFRodXJzZGF5LCBN YXJjaCAyLCAyMDIzIDY6MjIgUE0NCj4gVG86IGRldkBkcGRrLm9yZw0KPiBTdWJqZWN0OiBSZTog W1BBVENIIDEvNV0gZXRoZGV2OiBmaXggcmFjZS1jb25kaXRpb24gb2YgcHJvYWN0aXZlIGVycm9y IGhhbmRsaW5nDQo+IG1vZGUNCj4gDQo+IA0KPiANCj4gPg0KPiA+PiAtLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQ0KPiA+PiBGcm9tOiBDaGVuZ3dlbiBGZW5nIDxmZW5nY2hlbmd3ZW5AaHVhd2Vp LmNvbT4NCj4gPj4gU2VudDogVHVlc2RheSwgRmVicnVhcnkgMjgsIDIwMjMgOTowNiBQTQ0KPiA+ PiBUbzogdGhvbWFzQG1vbmphbG9uLm5ldDsgZmVycnVoLnlpZ2l0QGFtZC5jb207DQo+ID4+IGtv bnN0YW50aW4uYW5hbnlldkBodWF3ZWkuY29tOyBBbmRyZXcgUnliY2hlbmtvDQo+ID4+IDxhbmRy ZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT47IEthbGVzaCBBUCA8a2FsZXNoLQ0KPiA+PiBhbmFr a3VyLnB1cmF5aWxAYnJvYWRjb20uY29tPjsgQWppdCBLaGFwYXJkZQ0KPiA+PiAoYWppdC5raGFw YXJkZUBicm9hZGNvbS5jb20pIDxhaml0LmtoYXBhcmRlQGJyb2FkY29tLmNvbT4NCj4gPj4gQ2M6 IGRldkBkcGRrLm9yZw0KPiA+PiBTdWJqZWN0OiBbUEFUQ0ggMS81XSBldGhkZXY6IGZpeCByYWNl LWNvbmRpdGlvbiBvZiBwcm9hY3RpdmUgZXJyb3INCj4gPj4gaGFuZGxpbmcgbW9kZQ0KPiA+Pg0K PiA+PiBJbiB0aGUgcHJvYWN0aXZlIGVycm9yIGhhbmRsaW5nIG1vZGUsIHRoZSBQTUQgd2lsbCBz ZXQgdGhlIGRhdGEgcGF0aA0KPiA+PiBwb2ludGVycyB0byBkdW1teSBmdW5jdGlvbnMgYW5kIHRo ZW4gdHJ5IHJlY292ZXJ5LCBpbiB0aGlzIHBlcmlvZCB0aGUNCj4gPj4gYXBwbGljYXRpb24gbWF5 IHN0aWxsIGludm9raW5nIGRhdGEgcGF0aCBBUEkuIFRoaXMgd2lsbCBpbnRyb2R1Y2UgYQ0KPiA+ PiByYWNlLWNvbmRpdGlvbiB3aXRoIGRhdGEgcGF0aCB3aGljaCBtYXkgbGVhZCB0byBjcmFzaCBb MV0uDQo+ID4+DQo+ID4+IEFsdGhvdWdoIHRoZSBQTUQgYWRkZWQgZGVsYXkgYWZ0ZXIgc2V0dGlu ZyBkYXRhIHBhdGggcG9pbnRlcnMgdG8NCj4gPj4gY292ZXIgdGhlIGFib3ZlIHJhY2UtY29uZGl0 aW9uLCBpdCByZWR1Y2VzIHRoZSBwcm9iYWJpbGl0eSwgYnV0IGl0DQo+ID4+IGRvZXNuJ3Qgc29s dmUgdGhlIHByb2JsZW0uDQo+ID4+DQo+ID4+IFRvIHNvbHZlIHRoZSByYWNlLWNvbmRpdGlvbiBw cm9ibGVtIGZ1bmRhbWVudGFsbHksIHRoZSBmb2xsb3dpbmcNCj4gPj4gcmVxdWlyZW1lbnRzIGFy ZSBhZGRlZDoNCj4gPj4gMS4gVGhlIFBNRCBzaG91bGQgc2V0IHRoZSBkYXRhIHBhdGggcG9pbnRl cnMgdG8gZHVtbXkgZnVuY3Rpb25zIGFmdGVyDQo+ID4+ICAgICByZXBvcnQgUlRFX0VUSF9FVkVO VF9FUlJfUkVDT1ZFUklORyBldmVudC4NCj4gPiBEbyB5b3UgbWVhbiB0byBzYXksIFBNRCBzaG91 bGQgc2V0IHRoZSBkYXRhIHBhdGggcG9pbnRlcnMgYWZ0ZXIgY2FsbGluZyB0aGUNCj4gY2FsbCBi YWNrIGZ1bmN0aW9uPw0KPiA+IFRoZSBQTUQgaXMgcnVubmluZyBpbiB0aGUgY29udGV4dCBvZiBt dWx0aXBsZSBFQUwgdGhyZWFkcy4gSG93IGRvIHRoZXNlDQo+IHRocmVhZHMgc3luY2hyb25pemUg c3VjaCB0aGF0IG9ubHkgb25lIHRocmVhZCBzZXRzIHRoZXNlIGRhdGEgcG9pbnRlcnM/DQo+IA0K PiBBcyBJIHVuZGVyc3RhbmQgdGhpcyBldmVudCBjYWxsYmFjayBzdXBwb3NlZCB0byBiZSBjYWxs ZWQgaW4gdGhlIGNvbnRleHQgb2YgRUFMDQo+IGludGVycnVwdCB0aHJlYWQgKHdob2V2ZXIgaXMg bW9yZSBmYW1pbGlhciB3aXRoIG9yaWdpbmFsIGlkZWEsIGZlZWwgZnJlZSB0byBjb3JyZWN0DQo+ IG1lIGlmIEkgbWlzc2VkIHNvbWV0aGluZykuDQpJIGNvdWxkIG5vdCBmaWd1cmUgdGhpcyBvdXQu IEl0IGxvb2tzIHRvIGJlIGNhbGxlZCBmcm9tIHRoZSBkYXRhIHBsYW5lIHRocmVhZCBjb250ZXh0 Lg0KSSBhbHNvIGhhdmUgYSB0aG91Z2h0IG9uIGFsdGVybmF0ZSBkZXNpZ24gYXQgdGhlIGVuZCwg YXBwcmVjaWF0ZSBpZiB5b3UgY2FuIHRha2UgYSBsb29rLg0KIA0KPiBIb3cgaXQgaXMgZ29pbmcg dG8gc2lnbmFsIGRhdGEtcGF0aCB0aHJlYWRzIHRoYXQgdGhleSBuZWVkIHRvIHN0b3Avc3VzcGVu ZA0KPiBjYWxsaW5nIGRhdGEtcGF0aCBBUEkgLSB0aGF0J3MgSSBzdXBwb3NlIGlzIGxlZnQgdG8g YXBwbGljYXRpb24gdG8gZGVjaWRlLi4uDQo+IFNhbWUgYXMgcmlnaHQgbm93IGl0IGlzIGFwcGxp Y2F0aW9uIHJlc3BvbnNpYmlsaXR5IHRvIHN0b3AgZGF0YS1wYXRoIHRocmVhZHMNCj4gYmVmb3Jl IGRvaW5nIGRldl9zdG9wKCkvZGV2L19jb25maWcoKS9ldGMuDQpPaywgZ29vZCwgdGhpcyBleHBl Y3RhdGlvbiBpcyBub3QgbmV3LiBUaGUgYXBwbGljYXRpb24gbXVzdCBoYXZlIGEgbWVjaGFuaXNt IGFscmVhZHkuDQoNCj4gDQo+IA0KPiA+DQo+ID4+IDIuIFRoZSBhcHBsaWNhdGlvbiBzaG91bGQg c3RvcCBkYXRhIHBhdGggQVBJIGludm9jYXRpb24gd2hlbiBwcm9jZXNzDQo+ID4+ICAgICB0aGUg UlRFX0VUSF9FVkVOVF9FUlJfUkVDT1ZFUklORyBldmVudC4NCj4gPiBBbnkgdGhvdWdodHMgb24g aG93IGFuIGFwcGxpY2F0aW9uIGNhbiBkbyB0aGlzPw0KV2UgY2FuIGlnbm9yZSB0aGlzIHF1ZXN0 aW9uIGFzIHRoZXJlIGlzIGFscmVhZHkgc2ltaWxhciBleHBlY3RhdGlvbiBzZXQgZm9yIGVhcmxp ZXIgZnVuY3Rpb25hbGl0aWVzLg0KDQo+ID4NCj4gPj4gMy4gVGhlIFBNRCBzaG91bGQgc2V0IHRo ZSBkYXRhIHBhdGggcG9pbnRlcnMgdG8gdmFsaWQgZnVuY3Rpb25zIGJlZm9yZQ0KPiA+PiAgICAg cmVwb3J0IFJURV9FVEhfRVZFTlRfUkVDT1ZFUllfU1VDQ0VTUyBldmVudC4NCj4gPj4gNC4gVGhl IGFwcGxpY2F0aW9uIHNob3VsZCBlbmFibGUgZGF0YSBwYXRoIEFQSSBpbnZvY2F0aW9uIHdoZW4g cHJvY2Vzcw0KPiA+PiAgICAgdGhlIFJURV9FVEhfRVZFTlRfUkVDT1ZFUllfU1VDQ0VTUyBldmVu dC4NCj4gPiBEbyB5b3UgbWVhbiB0byBzYXkgdGhhdCB0aGUgYXBwbGljYXRpb24gc2hvdWxkIG5v dCBjYWxsIHRoZSBkYXRhcGF0aCBBUElzDQo+IHdoaWxlIHRoZSBQTUQgaXMgcnVubmluZyB0aGUg cmVjb3ZlcnkgcHJvY2Vzcz8NCj4gDQo+IFllcywgSSBiZWxpZXZlIHRoYXQncyB0aGUgaW50ZW50 aW9uLg0KT2ssIHRoaXMgaXMgZ29vZCBhbmQgbWFrZXMgc2Vuc2UuDQoNCj4gDQo+ID4+DQo+ID4+ IEFsc28sIHRoaXMgcGF0Y2ggaW50cm9kdWNlIGEgZHJpdmVyIGludGVybmFsIGZ1bmN0aW9uDQo+ ID4+IHJ0ZV9ldGhfZnBfb3BzX3NldHVwIHdoaWNoIHVzZWQgYXMgYW4gaGVscCBmdW5jdGlvbiBm b3IgUE1ELg0KPiA+Pg0KPiA+PiBbMV0NCj4gPj4NCj4gaHR0cDovL3BhdGNod29yay5kcGRrLm9y Zy9wcm9qZWN0L2RwZGsvcGF0Y2gvMjAyMzAyMjAwNjA4MzkuMTI2NzM0OS0yDQo+ID4+IC0NCj4g Pj4gYXNob2suay5rYWxhZGlAaW50ZWwuY29tLw0KPiA+Pg0KPiA+PiBGaXhlczogZWIwZDQ3MWE4 OTQxICgiZXRoZGV2OiBhZGQgcHJvYWN0aXZlIGVycm9yIGhhbmRsaW5nIG1vZGUiKQ0KPiA+PiBD Yzogc3RhYmxlQGRwZGsub3JnDQo+ID4+DQo+ID4+IFNpZ25lZC1vZmYtYnk6IENoZW5nd2VuIEZl bmcgPGZlbmdjaGVuZ3dlbkBodWF3ZWkuY29tPg0KPiA+PiAtLS0NCj4gPj4gICBkb2MvZ3VpZGVz L3Byb2dfZ3VpZGUvcG9sbF9tb2RlX2Rydi5yc3QgfCAyMCArKysrKysrLS0tLS0tLS0tDQo+ID4+ ICAgbGliL2V0aGRldi9ldGhkZXZfZHJpdmVyLmMgICAgICAgICAgICAgIHwgIDggKysrKysrKw0K PiA+PiAgIGxpYi9ldGhkZXYvZXRoZGV2X2RyaXZlci5oICAgICAgICAgICAgICB8IDEwICsrKysr KysrDQo+ID4+ICAgbGliL2V0aGRldi9ydGVfZXRoZGV2LmggICAgICAgICAgICAgICAgIHwgMzIg KysrKysrKysrKysrKysrLS0tLS0tLS0tLQ0KPiA+PiAgIGxpYi9ldGhkZXYvdmVyc2lvbi5tYXAg ICAgICAgICAgICAgICAgICB8ICAxICsNCj4gPj4gICA1IGZpbGVzIGNoYW5nZWQsIDQ2IGluc2Vy dGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQ0KPiA+Pg0KPiA+PiBkaWZmIC0tZ2l0IGEvZG9jL2d1 aWRlcy9wcm9nX2d1aWRlL3BvbGxfbW9kZV9kcnYucnN0DQo+ID4+IGIvZG9jL2d1aWRlcy9wcm9n X2d1aWRlL3BvbGxfbW9kZV9kcnYucnN0DQo+ID4+IGluZGV4IGMxNDVhOTA2NmMuLmUzODBmZjEz NWEgMTAwNjQ0DQo+ID4+IC0tLSBhL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9wb2xsX21vZGVfZHJ2 LnJzdA0KPiA+PiArKysgYi9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcG9sbF9tb2RlX2Rydi5yc3QN Cj4gPj4gQEAgLTYzOCwxNCArNjM4LDkgQEAgZGlmZmVyZW50IGZyb20gdGhlIGFwcGxpY2F0aW9u IGludm9rZXMgcmVjb3ZlcnkNCj4gPj4gaW4gUEFTU0lWRSBtb2RlLCAgdGhlIFBNRCBhdXRvbWF0 aWNhbGx5IHJlY292ZXJzIGZyb20gZXJyb3IgaW4NCj4gPj4gUFJPQUNUSVZFIG1vZGUsICBhbmQg b25seSBhIHNtYWxsIGFtb3VudCBvZiB3b3JrIGlzIHJlcXVpcmVkIGZvciB0aGUNCj4gYXBwbGlj YXRpb24uDQo+ID4+DQo+ID4+IC1EdXJpbmcgZXJyb3IgZGV0ZWN0aW9uIGFuZCBhdXRvbWF0aWMg cmVjb3ZlcnksIC10aGUgUE1EIHNldHMgdGhlDQo+ID4+IGRhdGEgcGF0aCBwb2ludGVycyB0byBk dW1teSBmdW5jdGlvbnMgLSh3aGljaCB3aWxsIHByZXZlbnQgdGhlDQo+ID4+IGNyYXNoKSwgLWFu ZCBhbHNvIG1ha2Ugc3VyZSB0aGUgY29udHJvbCBwYXRoIG9wZXJhdGlvbnMgZmFpbCB3aXRoIGEg cmV0dXJuDQo+IGNvZGUgYGAtRUJVU1lgYC4NCj4gPj4gLQ0KPiA+PiAtQmVjYXVzZSB0aGUgUE1E IHJlY292ZXJzIGF1dG9tYXRpY2FsbHksIC10aGUgYXBwbGljYXRpb24gY2FuIG9ubHkNCj4gPj4g c2Vuc2UgdGhhdCB0aGUgZGF0YSBmbG93IGlzIGRpc2Nvbm5lY3RlZCBmb3IgYSB3aGlsZSAtYW5k IHRoZSBjb250cm9sDQo+ID4+IEFQSSByZXR1cm5zIGFuIGVycm9yIGluIHRoaXMgcGVyaW9kLg0K PiA+PiArRHVyaW5nIGVycm9yIGRldGVjdGlvbiBhbmQgYXV0b21hdGljIHJlY292ZXJ5LCB0aGUg UE1EIHNldHMgdGhlIGRhdGENCj4gPj4gK3BhdGggcG9pbnRlcnMgdG8gZHVtbXkgZnVuY3Rpb25z IGFuZCBhbHNvIG1ha2Ugc3VyZSB0aGUgY29udHJvbCBwYXRoDQo+ID4+ICtvcGVyYXRpb25zIGZh aWxlZCB3aXRoIGEgcmV0dXJuIGNvZGUgYGAtRUJVU1lgYC4NCj4gPj4NCj4gPj4gICBJbiBvcmRl ciB0byBzZW5zZSB0aGUgZXJyb3IgaGFwcGVuaW5nL3JlY292ZXJpbmcsICBhcyB3ZWxsIGFzIHRv DQo+ID4+IHJlc3RvcmUgc29tZSBhZGRpdGlvbmFsIGNvbmZpZ3VyYXRpb24sIEBAIC02NTMsOSAr NjQ4LDkgQEAgdGhyZWUgZXZlbnRzDQo+IGFyZSBhdmFpbGFibGU6DQo+ID4+DQo+ID4+ICAgYGBS VEVfRVRIX0VWRU5UX0VSUl9SRUNPVkVSSU5HYGANCj4gPj4gICAgICBOb3RpZnkgdGhlIGFwcGxp Y2F0aW9uIHRoYXQgYW4gZXJyb3IgaXMgZGV0ZWN0ZWQNCj4gPj4gLSAgIGFuZCB0aGUgcmVjb3Zl cnkgaXMgYmVpbmcgc3RhcnRlZC4NCj4gPj4gKyAgIGFuZCB0aGUgcmVjb3ZlcnkgaXMgYWJvdXQg dG8gc3RhcnQuDQo+ID4+ICAgICAgVXBvbiByZWNlaXZpbmcgdGhlIGV2ZW50LCB0aGUgYXBwbGlj YXRpb24gc2hvdWxkIG5vdCBpbnZva2UNCj4gPj4gLSAgIGFueSBjb250cm9sIHBhdGggZnVuY3Rp b24gdW50aWwgcmVjZWl2aW5nDQo+ID4+ICsgICBhbnkgY29udHJvbCBhbmQgZGF0YSBwYXRoIEFQ SSB1bnRpbCByZWNlaXZpbmcNCj4gPj4gICAgICBgYFJURV9FVEhfRVZFTlRfUkVDT1ZFUllfU1VD Q0VTU2BgIG9yDQo+ID4+IGBgUlRFX0VUSF9FVkVOVF9SRUNPVkVSWV9GQUlMRURgYCBldmVudC4N Cj4gPj4NCj4gPj4gICAuLiBub3RlOjoNCj4gPj4gQEAgLTY2Niw4ICs2NjEsOSBAQCB0aHJlZSBl dmVudHMgYXJlIGF2YWlsYWJsZToNCj4gPj4NCj4gPj4gICBgYFJURV9FVEhfRVZFTlRfUkVDT1ZF UllfU1VDQ0VTU2BgDQo+ID4+ICAgICAgTm90aWZ5IHRoZSBhcHBsaWNhdGlvbiB0aGF0IHRoZSBy ZWNvdmVyeSBmcm9tIGVycm9yIGlzIHN1Y2Nlc3NmdWwsDQo+ID4+IC0gICB0aGUgUE1EIGFscmVh ZHkgcmUtY29uZmlndXJlcyB0aGUgcG9ydCwNCj4gPj4gLSAgIGFuZCB0aGUgZWZmZWN0IGlzIHRo ZSBzYW1lIGFzIGEgcmVzdGFydCBvcGVyYXRpb24uDQo+ID4+ICsgICB0aGUgUE1EIGFscmVhZHkg cmUtY29uZmlndXJlcyB0aGUgcG9ydC4NCj4gPj4gKyAgIFRoZSBhcHBsaWNhdGlvbiBzaG91bGQg cmVzdG9yZSBzb21lIGFkZGl0aW9uYWwgY29uZmlndXJhdGlvbiwgYW5kDQo+ID4+ICsgdGhlbg0K PiA+IFdoYXQgaXMgdGhlIGFkZGl0aW9uYWwgY29uZmlndXJhdGlvbj8gSXMgdGhpcyBzcGVjaWZp YyB0byBlYWNoIE5JQy9QTUQ/DQo+ID4gSSB0aG91Z2h0LCB0aGlzIGlzIGFuIGF1dG8gcmVjb3Zl cnkgcHJvY2VzcyBhbmQgdGhlIGFwcGxpY2F0aW9uIGRvZXMgbm90IHJlcXVpcmUNCj4gdG8gcmVj b25maWd1cmUgYW55dGhpbmcuIElmIHRoZSBhcHBsaWNhdGlvbiBoYXMgdG8gcmVzdG9yZSB0aGUg Y29uZmlndXJhdGlvbiwgaG93DQo+IGRvZXMgYXV0byByZWNvdmVyeSBkaWZmZXIgZnJvbSB0eXBp Y2FsIHJlY292ZXJ5IHByb2Nlc3M/DQo+ID4NCj4gPj4gKyAgIGVuYWJsZSBkYXRhIHBhdGggQVBJ IGludm9jYXRpb24uDQo+ID4+DQo+ID4+ICAgYGBSVEVfRVRIX0VWRU5UX1JFQ09WRVJZX0ZBSUxF RGBgDQo+ID4+ICAgICAgTm90aWZ5IHRoZSBhcHBsaWNhdGlvbiB0aGF0IHRoZSByZWNvdmVyeSBm cm9tIGVycm9yIGZhaWxlZCwgZGlmZg0KPiA+PiAtLWdpdCBhL2xpYi9ldGhkZXYvZXRoZGV2X2Ry aXZlci5jIGIvbGliL2V0aGRldi9ldGhkZXZfZHJpdmVyLmMgaW5kZXgNCj4gPj4gMGJlMWU4Y2Ew NC4uZjk5NDY1M2ZlOSAxMDA2NDQNCj4gPj4gLS0tIGEvbGliL2V0aGRldi9ldGhkZXZfZHJpdmVy LmMNCj4gPj4gKysrIGIvbGliL2V0aGRldi9ldGhkZXZfZHJpdmVyLmMNCj4gPj4gQEAgLTUxNSw2 ICs1MTUsMTQgQEAgcnRlX2V0aF9kbWFfem9uZV9mcmVlKGNvbnN0IHN0cnVjdCBydGVfZXRoX2Rl dg0KPiA+PiAqZGV2LCBjb25zdCBjaGFyICpyaW5nX25hbWUsDQo+ID4+ICAgCXJldHVybiByYzsN Cj4gPj4gICB9DQo+ID4+DQo+ID4+ICt2b2lkDQo+ID4+ICtydGVfZXRoX2ZwX29wc19zZXR1cChz dHJ1Y3QgcnRlX2V0aF9kZXYgKmRldikgew0KPiA+PiArCWlmIChkZXYgPT0gTlVMTCkNCj4gPj4g KwkJcmV0dXJuOw0KPiA+PiArCWV0aF9kZXZfZnBfb3BzX3NldHVwKHJ0ZV9ldGhfZnBfb3BzICsg ZGV2LT5kYXRhLT5wb3J0X2lkLCBkZXYpOyB9DQo+ID4+ICsNCj4gPj4gICBjb25zdCBzdHJ1Y3Qg cnRlX21lbXpvbmUgKg0KPiA+PiAgIHJ0ZV9ldGhfZG1hX3pvbmVfcmVzZXJ2ZShjb25zdCBzdHJ1 Y3QgcnRlX2V0aF9kZXYgKmRldiwgY29uc3QgY2hhcg0KPiA+PiAqcmluZ19uYW1lLA0KPiA+PiAg IAkJCSB1aW50MTZfdCBxdWV1ZV9pZCwgc2l6ZV90IHNpemUsIHVuc2lnbmVkIGludCBhbGlnbiwg ZGlmZiAtDQo+IC1naXQNCj4gPj4gYS9saWIvZXRoZGV2L2V0aGRldl9kcml2ZXIuaCBiL2xpYi9l dGhkZXYvZXRoZGV2X2RyaXZlci5oIGluZGV4DQo+ID4+IDJjOWQ2MTVmYjUuLjBkOTY0ZDFmNjcg MTAwNjQ0DQo+ID4+IC0tLSBhL2xpYi9ldGhkZXYvZXRoZGV2X2RyaXZlci5oDQo+ID4+ICsrKyBi L2xpYi9ldGhkZXYvZXRoZGV2X2RyaXZlci5oDQo+ID4+IEBAIC0xNjIxLDYgKzE2MjEsMTYgQEAg aW50DQo+ID4+ICAgcnRlX2V0aF9kbWFfem9uZV9mcmVlKGNvbnN0IHN0cnVjdCBydGVfZXRoX2Rl diAqZXRoX2RldiwgY29uc3QgY2hhcg0KPiA+PiAqbmFtZSwNCj4gPj4gICAJCSB1aW50MTZfdCBx dWV1ZV9pZCk7DQo+ID4+DQo+ID4+ICsvKioNCj4gPj4gKyAqIEBpbnRlcm5hbA0KPiA+PiArICog U2V0dXAgZXRoIGZhc3QtcGF0aCBBUEkgdG8gZXRoZGV2IHZhbHVlcy4NCj4gPj4gKyAqDQo+ID4+ ICsgKiBAcGFyYW0gZGV2DQo+ID4+ICsgKiAgUG9pbnRlciB0byBzdHJ1Y3QgcnRlX2V0aF9kZXYu DQo+ID4+ICsgKi8NCj4gPj4gK19fcnRlX2ludGVybmFsDQo+ID4+ICt2b2lkIHJ0ZV9ldGhfZnBf b3BzX3NldHVwKHN0cnVjdCBydGVfZXRoX2RldiAqZGV2KTsNCj4gPj4gKw0KPiA+PiAgIC8qKg0K PiA+PiAgICAqIEBpbnRlcm5hbA0KPiA+PiAgICAqIEF0b21pY2FsbHkgc2V0IHRoZSBsaW5rIHN0 YXR1cyBmb3IgdGhlIHNwZWNpZmljIGRldmljZS4NCj4gPj4gZGlmZiAtLWdpdCBhL2xpYi9ldGhk ZXYvcnRlX2V0aGRldi5oIGIvbGliL2V0aGRldi9ydGVfZXRoZGV2LmggaW5kZXgNCj4gPj4gMDQ5 NjQxZDU3Yy4uNDRlZTcyMjljMSAxMDA2NDQNCj4gPj4gLS0tIGEvbGliL2V0aGRldi9ydGVfZXRo ZGV2LmgNCj4gPj4gKysrIGIvbGliL2V0aGRldi9ydGVfZXRoZGV2LmgNCj4gPj4gQEAgLTM5NDQs MjUgKzM5NDQsMjggQEAgZW51bSBydGVfZXRoX2V2ZW50X3R5cGUgew0KPiA+PiAgIAkgKi8NCj4g Pj4gICAJUlRFX0VUSF9FVkVOVF9SWF9BVkFJTF9USFJFU0gsDQo+ID4+ICAgCS8qKiBQb3J0IHJl Y292ZXJpbmcgZnJvbSBhIGhhcmR3YXJlIG9yIGZpcm13YXJlIGVycm9yLg0KPiA+PiAtCSAqIElm IFBNRCBzdXBwb3J0cyBwcm9hY3RpdmUgZXJyb3IgcmVjb3ZlcnksDQo+ID4+IC0JICogaXQgc2hv dWxkIHRyaWdnZXIgdGhpcyBldmVudCB0byBub3RpZnkgYXBwbGljYXRpb24NCj4gPj4gLQkgKiB0 aGF0IGl0IGRldGVjdGVkIGFuIGVycm9yIGFuZCB0aGUgcmVjb3ZlcnkgaXMgYmVpbmcgc3RhcnRl ZC4NCj4gPj4gLQkgKiBVcG9uIHJlY2VpdmluZyB0aGUgZXZlbnQsIHRoZSBhcHBsaWNhdGlvbiBz aG91bGQgbm90IGludm9rZSBhbnkNCj4gPj4gY29udHJvbCBwYXRoIEFQSQ0KPiA+PiAtCSAqIChz dWNoIGFzIHJ0ZV9ldGhfZGV2X2NvbmZpZ3VyZS9ydGVfZXRoX2Rldl9zdG9wLi4uKSB1bnRpbCBy ZWNlaXZpbmcNCj4gPj4gLQkgKiBSVEVfRVRIX0VWRU5UX1JFQ09WRVJZX1NVQ0NFU1Mgb3INCj4g Pj4gUlRFX0VUSF9FVkVOVF9SRUNPVkVSWV9GQUlMRUQgZXZlbnQuDQo+ID4+IC0JICogVGhlIFBN RCB3aWxsIHNldCB0aGUgZGF0YSBwYXRoIHBvaW50ZXJzIHRvIGR1bW15IGZ1bmN0aW9ucywNCj4g Pj4gLQkgKiBhbmQgcmUtc2V0IHRoZSBkYXRhIHBhdGggcG9pbnRlcnMgdG8gbm9uLWR1bW15IGZ1 bmN0aW9ucw0KPiA+PiAtCSAqIGJlZm9yZSByZXBvcnRpbmcgUlRFX0VUSF9FVkVOVF9SRUNPVkVS WV9TVUNDRVNTIGV2ZW50Lg0KPiA+PiAtCSAqIEl0IG1lYW5zIHRoYXQgdGhlIGFwcGxpY2F0aW9u IGNhbm5vdCBzZW5kIG9yIHJlY2VpdmUgYW55IHBhY2tldHMNCj4gPj4gLQkgKiBkdXJpbmcgdGhp cyBwZXJpb2QuDQo+ID4+ICsJICoNCj4gPj4gKwkgKiBJZiBQTUQgc3VwcG9ydHMgcHJvYWN0aXZl IGVycm9yIHJlY292ZXJ5LCBpdCBzaG91bGQgdHJpZ2dlciB0aGlzDQo+ID4+ICsJICogZXZlbnQg dG8gbm90aWZ5IGFwcGxpY2F0aW9uIHRoYXQgaXQgZGV0ZWN0ZWQgYW4gZXJyb3IgYW5kIHRoZQ0K PiA+PiArCSAqIHJlY292ZXJ5IGlzIGFib3V0IHRvIHN0YXJ0Lg0KPiA+PiArCSAqDQo+ID4+ICsJ ICogVXBvbiByZWNlaXZpbmcgdGhlIGV2ZW50LCB0aGUgYXBwbGljYXRpb24gc2hvdWxkIG5vdCBp bnZva2UgYW55DQo+ID4+ICsJICogY29udHJvbCBhbmQgZGF0YSBwYXRoIEFQSSB1bnRpbCByZWNl aXZpbmcNCj4gPj4gKwkgKiBSVEVfRVRIX0VWRU5UX1JFQ09WRVJZX1NVQ0NFU1Mgb3INCj4gPj4g UlRFX0VUSF9FVkVOVF9SRUNPVkVSWV9GQUlMRUQNCj4gPj4gKwkgKiBldmVudC4NCj4gPj4gKwkg Kg0KPiA+PiArCSAqIE9uY2UgdGhpcyBldmVudCBpcyByZXBvcnRlZCwgdGhlIFBNRCB3aWxsIHNl dCB0aGUgZGF0YSBwYXRoIHBvaW50ZXJzDQo+ID4+ICsJICogdG8gZHVtbXkgZnVuY3Rpb25zLCBh bmQgcmUtc2V0IHRoZSBkYXRhIHBhdGggcG9pbnRlcnMgdG8gdmFsaWQNCj4gPj4gKwkgKiBmdW5j dGlvbnMgYmVmb3JlIHJlcG9ydGluZyBSVEVfRVRIX0VWRU5UX1JFQ09WRVJZX1NVQ0NFU1MNCj4g Pj4gZXZlbnQuDQo+ID4gV2h5IGRvIHdlIG5lZWQgdG8gc2V0IHRoZSBkYXRhIHBhdGggcG9pbnRl cnMgdG8gZHVtbXkgZnVuY3Rpb25zIGlmIHRoZQ0KPiBhcHBsaWNhdGlvbiBpcyByZXN0cmljdGVk IGZyb20gaW52b2tpbmcgYW55IGNvbnRyb2wgYW5kIGRhdGEgcGF0aCBBUElzIHRpbGwgdGhlDQo+ IHJlY292ZXJ5IHByb2Nlc3MgaXMgY29tcGxldGVkPw0KPiANCj4gWW91IGFyZSByaWdodCwgaW4g dGhlb3J5IGl0IGlzIG5vdCBtYW5kYXRvcnkuDQo+IFRob3VnaCBpdCBoZWxwcyB0byBmbGFnIGEg cHJvYmxlbSBpZiB1c2VyIHdpbGwgc3RpbGwgdHJ5IHRvIGNhbGwgdGhlbSB3aGlsZSByZWNvdmVy eSBpcw0KPiBpbiBwcm9ncmVzcy4NCk9rLCBtYXkgYmUgaW4gZGVidWcgbW9kZS4NCkkgbWVhbiwg d2UgaGF2ZSBhbHJlYWR5IHNldCBhbiBleHBlY3RhdGlvbiB0byB0aGUgYXBwbGljYXRpb24gdGhh dCBpdCBzaG91bGQgbm90IGNhbGwgYW5kIHRoZSBhcHBsaWNhdGlvbiBoYXMgaW1wbGVtZW50ZWQg YSBtZXRob2QgdG8gZG8gdGhlIHNhbWUuIFdoeSBkbyB3ZSBuZWVkIHRvIGNvbXBsaWNhdGUgdGhp cz8NCklmIHRoZSBhcHBsaWNhdGlvbiBjYWxscyB0aGUgQVBJcywgaXQgaXMgYSBwcm9ncmFtbWlu ZyBlcnJvci4NCg0KPiBBZ2Fpbiwgc2FtZSBhcyB3ZSBkb2luZyBpbiBkZXZfc3RvcCgpLg0KDQo+ IA0KPiA+DQo+ID4+ICsJICoNCj4gPj4gICAJICogQG5vdGUgQmVmb3JlIHRoZSBQTUQgcmVwb3J0 cyB0aGUgcmVjb3ZlcnkgcmVzdWx0LA0KPiA+PiAgIAkgKiB0aGUgUE1EIG1heSByZXBvcnQgdGhl IFJURV9FVEhfRVZFTlRfRVJSX1JFQ09WRVJJTkcgZXZlbnQNCj4gPj4gYWdhaW4sDQo+ID4+ICAg CSAqIGJlY2F1c2UgYSBsYXJnZXIgZXJyb3IgbWF5IG9jY3VyIGR1cmluZyB0aGUgcmVjb3Zlcnku DQo+ID4+ICAgCSAqLw0KPiA+PiAgIAlSVEVfRVRIX0VWRU5UX0VSUl9SRUNPVkVSSU5HLA0KPiA+ IEkgdW5kZXJzdGFuZCB0aGlzIGlzIG5vdCBhIGNoYW5nZSBpbiB0aGlzIHBhdGNoLiBCdXQsIGp1 c3Qgd29uZGVyaW5nLCB3aGF0IGlzIHRoZQ0KPiBwdXJwb3NlIG9mIHRoaXM/IEhvdyBpcyB0aGUg YXBwbGljYXRpb24gc3VwcG9zZWQgdG8gdXNlIHRoaXM/DQo+ID4NCj4gPj4gICAJLyoqIFBvcnQg cmVjb3ZlcnMgc3VjY2Vzc2Z1bGx5IGZyb20gdGhlIGVycm9yLg0KPiA+PiAtCSAqIFRoZSBQTUQg YWxyZWFkeSByZS1jb25maWd1cmVkIHRoZSBwb3J0LA0KPiA+PiAtCSAqIGFuZCB0aGUgZWZmZWN0 IGlzIHRoZSBzYW1lIGFzIGEgcmVzdGFydCBvcGVyYXRpb24uDQo+ID4+ICsJICoNCj4gPj4gKwkg KiBUaGUgUE1EIGFscmVhZHkgcmUtY29uZmlndXJlZCB0aGUgcG9ydDoNCj4gPj4gICAJICogYSkg VGhlIGZvbGxvd2luZyBvcGVyYXRpb24gd2lsbCBiZSByZXRhaW5lZDogKGFscGhhYmV0aWNhbGx5 KQ0KPiA+PiAgIAkgKiAgICAtIERDQiBjb25maWd1cmF0aW9uDQo+ID4+ICAgCSAqICAgIC0gRkVD IGNvbmZpZ3VyYXRpb24NCj4gPj4gQEAgLTM5ODksNiArMzk5Miw5IEBAIGVudW0gcnRlX2V0aF9l dmVudF90eXBlIHsNCj4gPj4gICAJICogICAgICAoQHNlZSBSVEVfRVRIX0RFVl9DQVBBX0ZMT1df U0hBUkVEX09CSkVDVF9LRUVQKQ0KPiA+PiAgIAkgKiBjKSBBbnkgb3RoZXIgY29uZmlndXJhdGlv biB3aWxsIG5vdCBiZSBzdG9yZWQNCj4gPj4gICAJICogICAgYW5kIHdpbGwgbmVlZCB0byBiZSBy ZS1jb25maWd1cmVkLg0KPiA+PiArCSAqDQo+ID4+ICsJICogVGhlIGFwcGxpY2F0aW9uIHNob3Vs ZCByZXN0b3JlIHNvbWUgYWRkaXRpb25hbCBjb25maWd1cmF0aW9uDQo+ID4+ICsJICogKHNlZSBh Ym92ZSBjYXNlIGIvYyksIGFuZCB0aGVuIGVuYWJsZSBkYXRhIHBhdGggQVBJIGludm9jYXRpb24u DQo+ID4+ICAgCSAqLw0KPiA+PiAgIAlSVEVfRVRIX0VWRU5UX1JFQ09WRVJZX1NVQ0NFU1MsDQo+ ID4+ICAgCS8qKiBQb3J0IHJlY292ZXJ5IGZhaWxlZC4NCj4gPj4gZGlmZiAtLWdpdCBhL2xpYi9l dGhkZXYvdmVyc2lvbi5tYXAgYi9saWIvZXRoZGV2L3ZlcnNpb24ubWFwIGluZGV4DQo+ID4+IDM1 N2QxYTg4YzAuLmMyNzNlMGJkYWUgMTAwNjQ0DQo+ID4+IC0tLSBhL2xpYi9ldGhkZXYvdmVyc2lv bi5tYXANCj4gPj4gKysrIGIvbGliL2V0aGRldi92ZXJzaW9uLm1hcA0KPiA+PiBAQCAtMzIwLDYg KzMyMCw3IEBAIElOVEVSTkFMIHsNCj4gPj4gICAJcnRlX2V0aF9kZXZpY2VzOw0KPiA+PiAgIAly dGVfZXRoX2RtYV96b25lX2ZyZWU7DQo+ID4+ICAgCXJ0ZV9ldGhfZG1hX3pvbmVfcmVzZXJ2ZTsN Cj4gPj4gKwlydGVfZXRoX2ZwX29wc19zZXR1cDsNCj4gPj4gICAJcnRlX2V0aF9oYWlycGluX3F1 ZXVlX3BlZXJfYmluZDsNCj4gPj4gICAJcnRlX2V0aF9oYWlycGluX3F1ZXVlX3BlZXJfdW5iaW5k Ow0KPiA+PiAgIAlydGVfZXRoX2hhaXJwaW5fcXVldWVfcGVlcl91cGRhdGU7DQo+ID4+IC0tDQo+ ID4+IDIuMTcuMQ0KPiA+DQoNCklzIHRoZXJlIGFueSByZWFzb24gbm90IHRvIGRlc2lnbiB0aGlz IGluIHRoZSBzYW1lIHdheSBhcyAncnRlX2V0aF9kZXZfcmVzZXQnPyBXaHkgZG9lcyB0aGUgUE1E IGhhdmUgdG8gcmVjb3ZlciBieSBpdHNlbGY/DQpXZSBjb3VsZCBoYXZlIGEgc2ltaWxhciBBUEkg J3J0ZV9ldGhfZGV2X3JlY292ZXInIHRvIGRvIHRoZSByZWNvdmVyeSBmdW5jdGlvbmFsaXR5Lg0K