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 274AE41D46; Thu, 23 Feb 2023 05:40:25 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id BC77F4303D; Thu, 23 Feb 2023 05:40:24 +0100 (CET) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2079.outbound.protection.outlook.com [40.107.22.79]) by mails.dpdk.org (Postfix) with ESMTP id D31E640DF6; Thu, 23 Feb 2023 05:40:23 +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=8hOS37M04LTP7qzfrg3OkhjYEkxyBS3Sj9a3eC0rVqM=; b=bHpsc63ewCOj7SRjrAWOHNAAjqIUZtmVPAwsJAFPqXOK8fvaL4Y1yOi9mUtbjbXMWkJAR20amSX1JhSfYJUu3P/BAe4IyQYSm3Xa4qdEMJjlupL5KITUKV4ifwT+erT8IjibV15oZrD7HzFufF0RjD95SN4Jonq5CyxwM2B5d1w= Received: from AM6P195CA0099.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:86::40) by AM8PR08MB6418.eurprd08.prod.outlook.com (2603:10a6:20b:360::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.19; Thu, 23 Feb 2023 04:40:22 +0000 Received: from AM7EUR03FT048.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:86:cafe::9c) by AM6P195CA0099.outlook.office365.com (2603:10a6:209:86::40) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.20 via Frontend Transport; Thu, 23 Feb 2023 04:40:22 +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 AM7EUR03FT048.mail.protection.outlook.com (100.127.140.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.21 via Frontend Transport; Thu, 23 Feb 2023 04:40:22 +0000 Received: ("Tessian outbound b1d3ffe56e73:v132"); Thu, 23 Feb 2023 04:40:21 +0000 X-CR-MTA-TID: 64aa7808 Received: from ed19c9f5113f.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 9A99DE4A-D658-4EB2-BC1A-AFAACD60EA6C.1; Thu, 23 Feb 2023 04:40:12 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ed19c9f5113f.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 23 Feb 2023 04:40:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=O3MU/XtBmgstFfY4kNNj3rcl8qShiUaoMVh1Xz72VHYPN4ZiYxOBvAp+E8QHfNY5AygKQ/LvKKOG0oGk/WM5Iy7Y5DmrTiqN1cHaAtwYkOKleKWrhReqiHuvDyFm+g5fcNepaviQhSLrLIZPCYaR/cSxdPYYGyUYsVP4fDtYjfH6uMH5kCmBTi/8DyMDU4pM7JEN6+R4nzbRswi2yhDZnpBLAJvVy7QwIx1T5vfUUTKIK7bzk7/ExiIIyygP0cLIug0fk1AraaSyBFCD8cC0HAga+gzUoIguI2I5P0Woh4YHw4MEwYSUE3ZkOehWczjoagWEK7B7JgqoaCb+UrBLrQ== 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=8hOS37M04LTP7qzfrg3OkhjYEkxyBS3Sj9a3eC0rVqM=; b=e15XqOOtAACSogwTTtBUXKIhBZPziGosedK/ZGUI2SEy4OUr7aE3xTH27Se+X2Pblch+Fzv31ndksbKJFoGcCl0d/8IileU24+ZPPN7k1RNN5vqS+EbNVqbfC93dJ2jt/JvL8Zkcn0Y8QcPMCgugMqZH83bpxA+XSft+YAy7rpZz+B4YI52kDUmZ8eAjdOtTDByKP0dVsRv6jT5i6m2t7Ocrw/0++7bfU/gYWHLzTVeB4fR66s1zxxvNNp7kKfmkAg5WHvSiynNMcBl5NZHkgU6Bi0BXMtZGmepgG/Lcy6ohHqrr8BpZJ/cCx+TLhmdGJLqKX6fcdKnEgflt+8Q2oA== 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=8hOS37M04LTP7qzfrg3OkhjYEkxyBS3Sj9a3eC0rVqM=; b=bHpsc63ewCOj7SRjrAWOHNAAjqIUZtmVPAwsJAFPqXOK8fvaL4Y1yOi9mUtbjbXMWkJAR20amSX1JhSfYJUu3P/BAe4IyQYSm3Xa4qdEMJjlupL5KITUKV4ifwT+erT8IjibV15oZrD7HzFufF0RjD95SN4Jonq5CyxwM2B5d1w= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by DU0PR08MB8930.eurprd08.prod.outlook.com (2603:10a6:10:465::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.21; Thu, 23 Feb 2023 04:40:03 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::910e:e35f:b1eb:ae9]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::910e:e35f:b1eb:ae9%4]) with mapi id 15.20.6134.021; Thu, 23 Feb 2023 04:40:03 +0000 From: Honnappa Nagarahalli To: Konstantin Ananyev , Fengchengwen , Stephen Hemminger , Ruifeng Wang , "Ajit Khaparde (ajit.khaparde@broadcom.com)" CC: Ashok Kaladi , "jerinj@marvell.com" , "thomas@monjalon.net" , "dev@dpdk.org" , "s.v.naga.harish.k@intel.com" , "erik.g.carrillo@intel.com" , "abhinandan.gujjar@intel.com" , "stable@dpdk.org" , nd , nd Subject: RE: [PATCH 2/2] ethdev: fix race condition in fast-path ops setup Thread-Topic: [PATCH 2/2] ethdev: fix race condition in fast-path ops setup Thread-Index: AQHZRPHSKAOhGJtmykGYr/7I8+jOva7XZ1EAgAF+GTCAALzPgIAAh9OAgACgagCAAQUYsA== Date: Thu, 23 Feb 2023 04:40:02 +0000 Message-ID: References: <20230220060839.1267349-1-ashok.k.kaladi@intel.com> <20230220060839.1267349-2-ashok.k.kaladi@intel.com> <4786db4b-63dc-5329-522d-77eb58d4cff4@huawei.com> <20230221090053.14d653bf@hermes.local> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: C5F850EAE04E034CB076FCFE737603EC.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_|DU0PR08MB8930:EE_|AM7EUR03FT048:EE_|AM8PR08MB6418:EE_ X-MS-Office365-Filtering-Correlation-Id: 93f788b3-d5d3-4ccc-3552-08db155812f1 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: JKHEOag/KPzX/mFZNKpl4PHl2wKwUcU0rVS43Bg4sf0UOtA87vmL5EaaaD0nUP9+8FKt44EjPp8iSsNH04yhEZ12GrKGG6dotJBMtRbcZJAh+/MfJzfzOhD2BsFcxzMh9ybP2P908JzSlI/kU+vMHl5ZaeaS8G6X+nEzp0SjECiNrnrFtv7QCoMzr8+2r0CAfSZ79Xuk9urM4Qyk/vSRdvjEYqGxUny7MiXGT1Rc6It+H/Kj7nSz8OZHDbMBhbzCISb5xYpYrbQT8NJcVZ8GwaDJ4+mQr8Y2LU+vfov8IjIleHOKrDYCJHwV+F0ctNXlBG/hfz0IbDQdyErKpu/+fkahEcuvMTJ96ktHjwMNMScKaCLCjLmCE17d3/AvwI+dc5wUHWB9RpTBr9Rh5xDrSWb9qcprugbYV1z+h0lQlhaXoRcB5Hbfwob+thICCQesjA9SBT/r9Ru/T+uhfIjO2SUFkxJwDhog5DolvdutIx2z/xsAnhVimpXPMjzoogskNFRgZRthb2JSUmoWehpt10dZLQMrPoC0XwKQdml0eZnESkAma/HTd3w8IVa9D/wbYopTtYvBU29x0IzjXq/qND/XoAKGPRUBuynpArrhOxdSQ1CKnOKj/7PjcBxuxtu7W0M+mCbQ0/1dHrrFpUTSNa1GrhvMirY8VTn+KvjPjUUoLycyRR74ERPb4U6eokhVDT4AmsSmikhO3s9ciYzg/w== 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)(396003)(376002)(366004)(39860400002)(136003)(346002)(451199018)(38070700005)(83380400001)(122000001)(38100700002)(86362001)(33656002)(41300700001)(2906002)(8936002)(52536014)(5660300002)(7416002)(71200400001)(55016003)(26005)(9686003)(186003)(53546011)(6506007)(54906003)(8676002)(4326008)(66556008)(66476007)(316002)(76116006)(66946007)(110136005)(64756008)(66446008)(7696005)(478600001); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8930 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: AM7EUR03FT048.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 72be3a9f-aab7-472e-a1a0-08db15580739 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3sSozig+QP4jxqIh45RXWRcEoMIpflXkU3cfMfwj14Zs9NS/SWNj7mULQ7y1Qui/6bUxX10wihXmd8vgsxr84Tyi3dbrEiyf6O4+FZzSS1IIbQlUj493Kc66o9SV1vChCS/H70zJG2xgWRGrWZodbAs9oy5Jiodu3DJU/qhHd3euU/OU8pQWj1vbeh9vT4jLl3QsfJOvJ3Jf05tACrldpSjHQ/Wb1Vln8z+LNLTDfuez/SHDRujkdW8T5d6lBrKeptRgh5wBChfWQxUe3BPH+Nkdp2PaShiTcRdwLZUHGL4kCC+TmsnrrgTZdUt3uosIWyRTasgptsLLSm/5Aw0vWIPQOParPF8tWodd7GCJfNhfbBm1rxaJoIsER++ZCxhwibWhLHXEuZYpFvsCL6ESJC7EBDxa4s5JKh07XDDVTySVtH05ymal8cTidXGmpFpqacvOUPiFVy8egOLkysFPAUo3Xwcz6fuv8hbltQkNbMySD1uEK+nk4RZLGnDgCMLy5sbgq+myH2r094ZLnbE3Gxtp7U+2Y+HBIZQ8ou3Nqqlufy2n0jvXFZ7K+32lAa4lazUJCqJj/DbX5h1a0ohUdv+S+mMIp2KKoNFQd/IV08KBb1wvN0BN8mbiOMICc3Bx+u+DMHCb8QLktBA/z/uywYBcLflzkV9gZ+tqMeN/Rh+xA5NgSWlMOga9rbN3MpkXgGqxBS9wzF4wtbAexXaHqg== 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)(39860400002)(136003)(376002)(346002)(396003)(451199018)(36840700001)(40470700004)(46966006)(478600001)(40460700003)(47076005)(336012)(7696005)(82310400005)(81166007)(86362001)(2906002)(33656002)(36860700001)(82740400003)(356005)(110136005)(316002)(54906003)(41300700001)(52536014)(40480700001)(5660300002)(70586007)(70206006)(8936002)(450100002)(8676002)(55016003)(4326008)(83380400001)(26005)(186003)(9686003)(53546011)(6506007); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Feb 2023 04:40:22.1066 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 93f788b3-d5d3-4ccc-3552-08db155812f1 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: AM7EUR03FT048.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6418 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 PHNuaXA+DQoNCj4gPiA+Pj4NCj4gPiA+Pj4gT24gMjAyMy8yLzIwIDE0OjA4LCBBc2hvayBLYWxh ZGkgd3JvdGU6DQo+ID4gPj4+PiBJZiBldGhkZXYgZW5xdWV1ZSBvciBkZXF1ZXVlIGZ1bmN0aW9u IGlzIGNhbGxlZCBkdXJpbmcNCj4gPiA+Pj4+IGV0aF9kZXZfZnBfb3BzX3NldHVwKCksIGl0IG1h eSBnZXQgcHJlLWVtcHRlZCBhZnRlciBzZXR0aW5nIHRoZQ0KPiA+ID4+Pj4gZnVuY3Rpb24gcG9p bnRlcnMsIGJ1dCBiZWZvcmUgc2V0dGluZyB0aGUgcG9pbnRlciB0byBwb3J0IGRhdGEuDQo+ID4g Pj4+PiBJbiB0aGlzIGNhc2UgdGhlIG5ld2x5IHJlZ2lzdGVyZWQgZW5xdWV1ZS9kZXF1ZXVlIGZ1 bmN0aW9uIHdpbGwNCj4gPiA+Pj4+IHVzZSBkdW1teSBwb3J0IGRhdGEgYW5kIGVuZCB1cCBpbiBz ZWcgZmF1bHQuDQo+ID4gPj4+Pg0KPiA+ID4+Pj4gVGhpcyBwYXRjaCBtb3ZlcyB0aGUgdXBkYXRp b24gb2YgZWFjaCBkYXRhIHBvaW50ZXJzIGJlZm9yZQ0KPiA+ID4+Pj4gdXBkYXRpbmcgY29ycmVz cG9uZGluZyBmdW5jdGlvbiBwb2ludGVycy4NCj4gPiA+Pj4+DQo+ID4gPj4+PiBGaXhlczogYzg3 ZDQzNWE0ZDc5ICgiZXRoZGV2OiBjb3B5IGZhc3QtcGF0aCBBUEkgaW50byBzZXBhcmF0ZQ0KPiA+ ID4+Pj4gc3RydWN0dXJlIikNCj4gPiA+Pj4+IENjOiBzdGFibGVAZHBkay5vcmcNCj4gPiA+DQo+ ID4gPiBXaHkgaXMgc29tZXRoaW5nIGNhbGxpbmcgZW5xdWV1ZS9kZXF1ZXVlIHdoZW4gZGV2aWNl IGlzIG5vdCBmdWxseQ0KPiBzdGFydGVkLg0KPiA+ID4gQSBjb3JyZWN0bHkgd3JpdHRlbiBhcHBs aWNhdGlvbiB3b3VsZCBub3QgY2FsbCByeC90eCBidXJzdCB1bnRpbA0KPiA+ID4gYWZ0ZXIgZXRo ZGV2IHN0YXJ0IGhhZCBmaW5pc2hlZC4NCj4gPg0KPiA+IFBsZWFzZSByZWZlciB0aGUgZWIwZDQ3 MWE4OTQgKGV0aGRldjogYWRkIHByb2FjdGl2ZSBlcnJvciBoYW5kbGluZw0KPiA+IG1vZGUpLCB3 aGVuIGRyaXZlciByZWNvdmVyIGl0c2VsZiwgdGhlIGFwcGxpY2F0aW9uIG1heSBzdGlsbCBpbnZv a2UNCj4gZW5xdWV1ZS9kZXF1ZXVlIEFQSS4NCj4gDQo+IFJpZ2h0IG5vdyBEUERLIGV0aGRldiBs YXllciAqZG9lcyBub3QqIHByb3ZpZGUgc3luY2hyb25pemF0aW9uDQo+IG1lY2hhbmlzbXMgYmV0 d2VlbiBkYXRhLXBhdGggYW5kIGNvbnRyb2wtcGF0aCBmdW5jdGlvbnMuDQo+IFRoYXQgd2FzIGEg ZGVsaWJlcmF0ZSBkZWlzZ24gY2hvaWNlLiBJZiB3ZSB3YW50IHRvIGNoYW5nZSB0aGF0IHJ1bGUs IHRoZW4gSQ0KPiBzdXBwb3NlIHdlIG5lZWQgYSBjb21tdW5pdHkgY29uc2Vuc3VzIGZvciBpdC4N Cj4gSSB0aGluayB0aGF0IGlmIHRoZSBkcml2ZXIgd2FudHMgdG8gcHJvdmlkZSBzb21lIHNvcnQg b2YgZXJyb3IgcmVjb3ZlcnkNCj4gcHJvY2VkdXJlLCB0aGVuIGl0IGhhcyB0byBwcm92aWRlIHNv bWUgc3luY2hyb25pemF0aW9uIG1lY2hhbmlzbSBpbnNpZGUgaXQNCj4gYmV0d2VlbiBkYXRhLXBh dGggYW5kIGNvbnRyb2wtcGF0aCBmdW5jdGlvbnMuDQo+IEFjdHVhbGx5IGxvb2tpbmcgYXQgZWIw ZDQ3MWE4OTQgKGV0aGRldjogYWRkIHByb2FjdGl2ZSBlcnJvciBoYW5kbGluZw0KPiBtb2RlKSwg YW5kIGZvbGxvd2luZyBwYXRjaGVzIEkgd29uZGVyIGhvdyBpdCBjcmVlcGVkIGluPw0KPiBJdCBz ZWVtcyB3ZSBqdXN0IGludHJvZHVjZWQgYSBsb29waG9sZSBmb3IgcmFjZSBjb25kaXRpb24gd2l0 aCB0aGlzDQo+IGFwcHJvYWNoLi4uDQo+IEl0IHByb2JhYmx5IG5lZWRzIHRvIGJlIGVpdGhlciBk ZXByZWNhdGVkIG9yIHJld29ya2VkLg0KTG9va2luZyBhdCB0aGUgY29tbWl0LCBpdCBkb2VzIG5v dCBzYXkgYW55dGhpbmcgYWJvdXQgdGhlIGRhdGEgcGxhbmUgZnVuY3Rpb25zIHdoaWNoIHByb2Jh Ymx5IG1lYW5zLCB0aGUgZXJyb3IgcmVjb3ZlcnkgaXMgaGFwcGVuaW5nIHdpdGhpbiB0aGUgZGF0 YSBwbGFuZSB0aHJlYWQuIFdoYXQgaGFwcGVucyB0byBvdGhlciBkYXRhIHBsYW5lIHRocmVhZHMg dGhhdCBhcmUgcG9sbGluZyB0aGUgc2FtZSBwb3J0IG9uIHdoaWNoIHRoZSBlcnJvciByZWNvdmVy eSBpcyBoYXBwZW5pbmc/DQoNCkFsc28sIHRoZSBjb21taXQgbG9nIHNheXMgdGhhdCB3aGlsZSB0 aGUgZXJyb3IgcmVjb3ZlcnkgaXMgdW5kZXIgcHJvZ3Jlc3MsIHRoZSBhcHBsaWNhdGlvbiBzaG91 bGQgbm90IGNhbGwgYW55IGNvbnRyb2wgcGxhbmUgQVBJcy4gRG9lcyB0aGF0IG1lYW4sIHRoZSBh cHBsaWNhdGlvbiBoYXMgdG8gY2hlY2sgZm9yIGVycm9yIGNvbmRpdGlvbiBldmVyeSB0aW1lIGl0 IGNhbGxzIGEgY29udHJvbCBwbGFuZSBBUEk/DQoNClRoZSBjb21taXQgbWVzc2FnZSBhbHNvIHNh eXMgdGhhdCAiUE1EIG1ha2VzIHN1cmUgdGhlIGNvbnRyb2wgcGF0aCBvcGVyYXRpb25zIGZhaWxl ZCB3aXRoIHJldGNvZGUgLUVCVVNZIi4gSXQgZG9lcyBub3Qgc2F5IGhvdyBpdCBkb2VzIHRoaXMu IEJ1dCwgYW55IGNvbW11bmljYXRpb24gZnJvbSB0aGUgUE1EIHRocmVhZCB0byBjb250cm9sIHBs YW5lIHRocmVhZCBtYXkgaW50cm9kdWNlIHJhY2UgY29uZGl0aW9ucyBpZiBub3QgZG9uZSBjb3Jy ZWN0bHkuDQoNCj4gDQo+ID4NCj4gPiA+DQo+ID4gPiBXb3VsZCBzb21ldGhpbmcgbGlrZSB0aGlz IHdvcmsgYmV0dGVyPw0KPiA+ID4NCj4gPiA+IE5vdGU6IHRoZXJlIGlzIGFub3RoZXIgYnVnIGlu IGN1cnJlbnQgY29kZS4gVGhlIGNoZWNrIGZvciBsaW5rIHN0YXRlDQo+ID4gPiBpbnRlcnJ1cHQg YW5kIGxpbmtfb3BzIGNvdWxkIHJldHVybiAtRU5PVFNVUCBhbmQgbGVhdmUgZGV2aWNlIGluDQo+ IGluZGV0ZXJtaW5hdGUgc3RhdGUuDQo+ID4gPiBUaGUgY2hlY2sgc2hvdWxkIGJlIGRvbmUgYmVm b3JlIGNhbGxpbmcgUE1ELg0KPiA+ID4NCj4gPiA+IGRpZmYgLS1naXQgYS9saWIvZXRoZGV2L3J0 ZV9ldGhkZXYuYyBiL2xpYi9ldGhkZXYvcnRlX2V0aGRldi5jIGluZGV4DQo+ID4gPiAwMjY2Y2M4 MmFjYjYuLmQ2YzE2M2VkODVlNyAxMDA2NDQNCj4gPiA+IC0tLSBhL2xpYi9ldGhkZXYvcnRlX2V0 aGRldi5jDQo+ID4gPiArKysgYi9saWIvZXRoZGV2L3J0ZV9ldGhkZXYuYw0KPiA+ID4gQEAgLTE1 ODIsNiArMTU4MiwxNCBAQCBydGVfZXRoX2Rldl9zdGFydCh1aW50MTZfdCBwb3J0X2lkKQ0KPiA+ ID4gIAkJcmV0dXJuIDA7DQo+ID4gPiAgCX0NCj4gPiA+DQo+ID4gPiArCWlmIChkZXYtPmRhdGEt PmRldl9jb25mLmludHJfY29uZi5sc2MgPT0gMCAmJg0KPiA+ID4gKwkgICAgZGV2LT5kZXZfb3Bz LT5saW5rX3VwZGF0ZSA9PSBOVUxMKSB7DQo+ID4gPiArCQlSVEVfRVRIREVWX0xPRyhJTkZPLA0K PiA+ID4gKwkJCSAgICAgICAiRGV2aWNlIHdpdGggcG9ydF9pZD0lIlBSSXUxNiIgbGluayB1cGRh dGUgbm90DQo+IHN1cHBvcnRlZFxuIiwNCj4gPiA+ICsJCQkgICAgICAgcG9ydF9pZCk7DQo+ID4g PiArCQkJcmV0dXJuIC1FTk9UU1VQOw0KPiA+ID4gKwl9DQo+ID4gPiArDQo+ID4gPiAgCXJldCA9 IHJ0ZV9ldGhfZGV2X2luZm9fZ2V0KHBvcnRfaWQsICZkZXZfaW5mbyk7DQo+ID4gPiAgCWlmIChy ZXQgIT0gMCkNCj4gPiA+ICAJCXJldHVybiByZXQ7DQo+ID4gPiBAQCAtMTU5MSw5ICsxNTk5LDcg QEAgcnRlX2V0aF9kZXZfc3RhcnQodWludDE2X3QgcG9ydF9pZCkNCj4gPiA+ICAJCWV0aF9kZXZf bWFjX3Jlc3RvcmUoZGV2LCAmZGV2X2luZm8pOw0KPiA+ID4NCj4gPiA+ICAJZGlhZyA9ICgqZGV2 LT5kZXZfb3BzLT5kZXZfc3RhcnQpKGRldik7DQo+ID4gPiAtCWlmIChkaWFnID09IDApDQo+ID4g PiAtCQlkZXYtPmRhdGEtPmRldl9zdGFydGVkID0gMTsNCj4gPiA+IC0JZWxzZQ0KPiA+ID4gKwlp ZiAoZGlhZyAhPSAwKQ0KPiA+ID4gIAkJcmV0dXJuIGV0aF9lcnIocG9ydF9pZCwgZGlhZyk7DQo+ ID4gPg0KPiA+ID4gIAlyZXQgPSBldGhfZGV2X2NvbmZpZ19yZXN0b3JlKGRldiwgJmRldl9pbmZv LCBwb3J0X2lkKTsgQEAgLTE2MTEsMTYNCj4gPiA+ICsxNjE3LDE4IEBAIHJ0ZV9ldGhfZGV2X3N0 YXJ0KHVpbnQxNl90IHBvcnRfaWQpDQo+ID4gPiAgCQlyZXR1cm4gcmV0Ow0KPiA+ID4gIAl9DQo+ ID4gPg0KPiA+ID4gLQlpZiAoZGV2LT5kYXRhLT5kZXZfY29uZi5pbnRyX2NvbmYubHNjID09IDAp IHsNCj4gPiA+IC0JCWlmICgqZGV2LT5kZXZfb3BzLT5saW5rX3VwZGF0ZSA9PSBOVUxMKQ0KPiA+ ID4gLQkJCXJldHVybiAtRU5PVFNVUDsNCj4gPiA+IC0JCSgqZGV2LT5kZXZfb3BzLT5saW5rX3Vw ZGF0ZSkoZGV2LCAwKTsNCj4gPiA+IC0JfQ0KPiA+ID4gLQ0KPiA+ID4gIAkvKiBleHBvc2Ugc2Vs ZWN0aW9uIG9mIFBNRCBmYXN0LXBhdGggZnVuY3Rpb25zICovDQo+ID4gPiAgCWV0aF9kZXZfZnBf b3BzX3NldHVwKHJ0ZV9ldGhfZnBfb3BzICsgcG9ydF9pZCwgZGV2KTsNCj4gPiA+DQo+ID4gPiAr CS8qIGVuc3VyZSBzdGF0ZSBpcyBzZXQgYmVmb3JlIG1hcmtpbmcgZGV2aWNlIHJlYWR5ICovDQo+ ID4gPiArCXJ0ZV9zbXBfd21iKCk7DQo+ID4gPiArDQo+ID4gPiAgCXJ0ZV9ldGhkZXZfdHJhY2Vf c3RhcnQocG9ydF9pZCk7DQo+ID4gPiArDQo+ID4gPiArCS8qIFVwZGF0ZSBjdXJyZW50IGxpbmsg c3RhdGUgKi8NCj4gPiA+ICsJaWYgKGRldi0+ZGF0YS0+ZGV2X2NvbmYuaW50cl9jb25mLmxzYyA9 PSAwKQ0KPiA+ID4gKwkJKCpkZXYtPmRldl9vcHMtPmxpbmtfdXBkYXRlKShkZXYsIDApOw0KPiA+ ID4gKw0KPiA+ID4gIAlyZXR1cm4gMDsNCj4gPiA+ICB9DQo+ID4gPg0KPiA+ID4NCj4gPiA+IC4N Cj4gPiA+DQoNCg==