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 A0F80A0C41; Wed, 25 Aug 2021 21:27:06 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 620CF4013F; Wed, 25 Aug 2021 21:27:06 +0200 (CEST) Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00086.outbound.protection.outlook.com [40.107.0.86]) by mails.dpdk.org (Postfix) with ESMTP id C2EBE4003D for ; Wed, 25 Aug 2021 21:27:05 +0200 (CEST) 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=dSP6YDoxEMipgscPeNJwD+NL/bG4NLriyKh1slX8Wzc=; b=aIGTXzJ0a2dEJ/gyl/9NSdW99PxbS/jFNAmxIhUbUDa7h4K7XqjuikgAQ7fI/lqAINIYXlovLLWaHhlTrK4eP7GuIoJkRbIFWwWVn/jngb/vMmRvnXCaFt6xgu0sideG2JlGmL9s/J7bO3xeTQaA47NMpZ1ktEDulBq0GlzmETI= Received: from AM6PR01CA0067.eurprd01.prod.exchangelabs.com (2603:10a6:20b:e0::44) by DBBPR08MB4233.eurprd08.prod.outlook.com (2603:10a6:10:d2::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.23; Wed, 25 Aug 2021 19:27:03 +0000 Received: from VE1EUR03FT026.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:e0:cafe::32) by AM6PR01CA0067.outlook.office365.com (2603:10a6:20b:e0::44) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.17 via Frontend Transport; Wed, 25 Aug 2021 19:27:03 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dpdk.org; 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; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VE1EUR03FT026.mail.protection.outlook.com (10.152.18.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.17 via Frontend Transport; Wed, 25 Aug 2021 19:27:02 +0000 Received: ("Tessian outbound 5918cb94a4b5:v103"); Wed, 25 Aug 2021 19:27:02 +0000 X-CR-MTA-TID: 64aa7808 Received: from e3f884647718.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C1397E47-8866-4C27-8EA8-76020DAB22DF.1; Wed, 25 Aug 2021 19:26:54 +0000 Received: from EUR02-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e3f884647718.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 25 Aug 2021 19:26:54 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E9wR8CbGDtr1qQscgNJnIN/WcveXzsMjuHxQZvzdzKuhX97scN4LYHGLMjBr7I/x4vpGW1Lnj6K5Ebc45BbYlsTOL3+HBXRqy+NO4D0qtFSslsj7cnb3SsXuQfdMQulYQ4wdekB8/2yZxHqdE4C3efGhS24tGDj56F6IQiwwrv9AJSHkRQ6N9JFaVp2W721Ip5ZoudRN/pgxxCcf62ZX+ZEV/ez3JT+ilqD3x93l/fZygcXJu2OKwafNZoWIgP46fo1tIJe2pjhKqEGFzyzIR47UUo9Dk6QoGLH2ZC61ZojvvorDd7Jk96Vc6jVjM+TNL+iXxAUweoJCemHWLMZsLA== 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=dSP6YDoxEMipgscPeNJwD+NL/bG4NLriyKh1slX8Wzc=; b=huLBh4GNUr7rfVZUdBKlaI3hqdZu6ylXhlCea65ex3/3A0ipkyzfsgBvqczdbLGK5YlNG1bNbcTzptqQFXtlUJ4/Ju/MflnsVuX2UrqXaoCNfsmpgHpWx+W2n45iagce6vvgEJktSSmLoV8iHBSyoIuQDmuJC3cWZ/aVio3dNbPrq6l4eFfTStduC4AKaNCrwyhPz9kvMooXfuWmJuSpI0qBb+swnAn04iwhnf/dJuAE+k9A9eil0QzUX3POGlFvughBwmdzzgL2qNb8XhaodzgNOgMR7m05qFyFjRwXXfbk6MPrgqrpzAzvMzf4y5aONc3G0RIqhLKH0zITqeT6cg== 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=dSP6YDoxEMipgscPeNJwD+NL/bG4NLriyKh1slX8Wzc=; b=aIGTXzJ0a2dEJ/gyl/9NSdW99PxbS/jFNAmxIhUbUDa7h4K7XqjuikgAQ7fI/lqAINIYXlovLLWaHhlTrK4eP7GuIoJkRbIFWwWVn/jngb/vMmRvnXCaFt6xgu0sideG2JlGmL9s/J7bO3xeTQaA47NMpZ1ktEDulBq0GlzmETI= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by DB6PR0802MB2150.eurprd08.prod.outlook.com (2603:10a6:4:85::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.19; Wed, 25 Aug 2021 19:26:47 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::8187:ccbc:30d:3464]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::8187:ccbc:30d:3464%5]) with mapi id 15.20.4457.019; Wed, 25 Aug 2021 19:26:47 +0000 From: Honnappa Nagarahalli To: Luc Pelletier CC: dev , Olivier Matz , "david.marchand@redhat.com" , Ruifeng Wang , nd , nd Thread-Topic: [RFC] eal: simplify the implementation of rte_ctrl_thread_create Thread-Index: AQHXmeHXk8whKah8EUeHPNIlsWxRF6uEl3kw Date: Wed, 25 Aug 2021 19:26:46 +0000 Message-ID: References: <20210730213709.19400-1-honnappa.nagarahalli@arm.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 7DF6BA90ADF0DD498B5396E89253AF54.0 x-checkrecipientchecked: true Authentication-Results-Original: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=arm.com; x-ms-publictraffictype: Email X-MS-Office365-Filtering-Correlation-Id: ec991b44-de0e-4c71-d44a-08d967fe511c x-ms-traffictypediagnostic: DB6PR0802MB2150:|DBBPR08MB4233: x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: pMuThCV3VpdQSGqUeyeNaSkjGj/WBQ3xK7pEgilebvnS4mqZWyxkBjMumiKX5zM8kYuW3SwrV5MQXmBv33h1BuOeo37oIHk/OGpCIahaF78FFkqVzFgeB0RkeJP6+wBKfy25TG88dddbhnqFtaPZmIt5Wbg4z1SV/uSzbuKaFOCnfNTMT3rnyAEH2ncfRVNSwTL6KDGj3w7O5EB/Ud2RRBSRwCsrSf+crSbgBlZt0cEFkMTb5z6vSvKho8VrpY1h+ZwUPWTpJCUXspztvDv7MAGgIf2dreN6mG6ynXUc4xXrgEPikv1mPmpmLu5StQR796GF74l2L8lf/XAxEbetvL4enGNfboHQ/FXeiZt7xogM/JuCsm+n8AWwj4WojaMQRdw8VVhoBwbeAzjSmyA4YWdAnp9TMAHYBLg6maJz2WYGnbgq7FUzJhR71lEZYY5KVlPQki5aeHMW/IqQHitrMvkpZ1r+oAhbZopzTH5sj1iL0wChPQY3CeW8NUaIuYF0iO+qd0PI5ii0MqMOb3ecXRa+qAcrpAID7BpN8Za08yG9pEdWg+Oo0IT9HbnKWFolCLwKqYI7CdXKvjLsEkdwwzvv0LZVQrtBrzAWsrRlMO8ddww2DMgnPRzpUrcquVk55/JxpmbZsiIdOmmLFOkcVLHsHiq3k/HYyDfeatHlbO7koqYdJnAHRUBwwpvLCfKJnzA0gmRel2ZqhpyqXqoxbA== 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:(4636009)(39850400004)(376002)(136003)(366004)(396003)(346002)(38070700005)(8676002)(33656002)(66446008)(186003)(76116006)(83380400001)(26005)(5660300002)(66946007)(66574015)(52536014)(6916009)(2906002)(64756008)(66476007)(66556008)(9686003)(478600001)(86362001)(71200400001)(54906003)(4326008)(55016002)(316002)(8936002)(122000001)(7696005)(38100700002)(6506007); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?V2ozNzc0QVBsa1p0dkVnZnM4eG1ldk5nc0dRL2J2OUY2VC9YaGVsMldDdXJ2?= =?utf-8?B?V2UzOU14c3IvUER2MnRBSzRyS3ZLS0hBN1Z4V3ZRTStpSFlhOWY1QUU5UDlH?= =?utf-8?B?K09OcmlPVkxlUkk0YUZJVlVneW5xbVlhTElxTFB2NW1hUmE0R3BKRGE1V09H?= =?utf-8?B?ckZnUjZvNUFpb0J0V3pVYk1yTlN6bEhZYk9xNloxcFBxcUtUbUZUbDZrRG9T?= =?utf-8?B?aW5YTkQ1aWFaQkFacXhwMjhCOTRMbitUU3hPaTdlOGhUYzJjSVgva3E3WTZZ?= =?utf-8?B?RERza1NTYjlkd1M0ZVBFMGVSckdDRkh2MUVUOHIvZGZCMTkxMjRxMlFvRkJs?= =?utf-8?B?ek85cDJTS2E4dnJkTHJhd3psYS85N2RzcHJVNkNqQWlSaDg2OE8zbUh1T3k5?= =?utf-8?B?Mk5qcm9RN3ppRXB0TExia2RUVU9SeWNyaXVoN3N5Y3M4TUxEOG13YWJMNTk0?= =?utf-8?B?U1ZndXhMamQrNHI3ZERHbUFNRHpwZTg0YUJHSll4MmJ2STViaFo3SG9ZQ3d0?= =?utf-8?B?Z1FWYjgyNnBKUzZnWHJtbU1XeEdoM1lab2t2UVdSbHo5QkJxcnBTMW9VV000?= =?utf-8?B?anBrMWgzSnU4alF2Mit1c21iRWVMVVBvV2R3M0FxOCt3c2c0MEJMdGxqK3lR?= =?utf-8?B?Q3Y5cWF0b09yU3RtczNadWMzNzIxYXcwa1IzeTJlZ1NXOWl0eGlUZG0yaytx?= =?utf-8?B?QVlSQjkrU2ZZV1A0bHBYd1kzcWhGVkVuVUhKcllwcVV5Z0xvRHZvT3pCbCtE?= =?utf-8?B?dmhXY0Y4STg3MWxReGM3WEVJVlpVQmYvRGxSSE1iV1dWMUF5QkhOeHpkbzNU?= =?utf-8?B?ZEdtR0dOemRjdjdVY21DVVA0Ym1XUUt3d2VFZzJIT2JwbkZXb1BjQS80MlpH?= =?utf-8?B?VzFCMFUzQkhzRzdsZEM2YTdldlFjU3lNMkwvbE1MU1hGT1FPR09GU0JDL2lT?= =?utf-8?B?U2NuU0F0dHd5WFlHOGN5RVptTkEvMTdHZHFkbCtOeW1zQTFHOUQrZU0vdTEw?= =?utf-8?B?UnkyVjU3YkM1RkFmcmhyTFJJTXJkZnFOK255b1N6VUYrRUpNZFhSZERUVzls?= =?utf-8?B?RHVwbGlZbEsxdFF3K2IyUHo0RnZ6QW96RERRSkMvbTdGNjZZTFhqaFprVmZS?= =?utf-8?B?UytoeEdIanE0RzFKN1ZkbXRNekRaNHV0R0JMMC9lWXh3dkZYV0Z1QTYzSm96?= =?utf-8?B?dWJmcmtNd2FCZERkZ1p6cld4M1VLTGg2SjV5QjE2V3p4YzlsZDFMUnhudm1m?= =?utf-8?B?dFBFT24wVlkzaEdPbEZTWHd1WkwzYUI4OU9zbE1XY3VhY2tzTEJNamdST0VU?= =?utf-8?B?dnpiUEpNNlcxOWc1YUxsV3dWMXp0N2tMRXM5NjNSQ1Q1dGZlMzVlOG80L09G?= =?utf-8?B?ek4wSHZZRWpITTB5eGNjaG5YMkQ1c0xERXVERGxaYWNhcTR6MW9aanJRZm9r?= =?utf-8?B?M3ErT0l3RGFFYnNjakxYbFpYczB4Z3dxV29QZ0Y3QkQvNnRqcjdjS2t5bUlO?= =?utf-8?B?NUhtQTArRExPU3BhV3ZJcnh1ZTg0UmtRVjg4RDJMeTYwdGV3SkRVaTJzNkNV?= =?utf-8?B?SnFJOG1LTndycTBSMEpodUMxVHU1QlpVR2xXY0EreXk0QzVwQ1dHMityVVl6?= =?utf-8?B?ckx2MldyRzVyeXY4U21wd2VaZUM0MmFMc2t6VDRRRGk0eER5MjhBR2MxQmlN?= =?utf-8?B?WFNWOENXOHdRejZRK2FIbWdkcFlxSFVQeENmYzJseE5iSWc5enIweURnYjY5?= =?utf-8?Q?QmwE2Rt5pKYBMmET4yrUpkghloowWsgWdhxZw8y?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2150 Original-Authentication-Results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VE1EUR03FT026.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 53ea3538-c268-498a-8d93-08d967fe47d2 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +4qwmGpij+hzTTuebuNSlsOmUhxZ8tOEYEIhlWw2AEWJjvyPmJ9dlWPCvlxqPPRp5vg4IWat4pQVjLTzl2ajqR7sd4Xg/5hHwjeGx+ZWvw/5XuZEIjgCZCuwhCcGaQOReO6eto83pjJ/BgiBBMmQjnOpREc09OXMl5tDV0rusQEs9ASyvcJkzkgBaPtQP73httbR57Oe+zx/0eVDXNn2Mi2PkUdCZfOV5J8UVCxM/hmk8x2e3PEUvFDZATS4qUEZ5q9yIfIFKwHKai0HDrerLvt8w04k2hJpVt7AC58E7/Mao9VnOtHvxFcp5/+gj2x1JzYMt/KGskKPb9m0VWRyJWONPAtkJMnq5svUucMBz+dgRCxoPz5PwOZirOv8ZBr0y4IlHkZZULmCWSbqknJn0rGZ7YXGZfOsWze2oivYVU6uuZfI45ZwVvTsiLOQRQm53CF34a7q5P6hjgNAwOeSX229J/15ltTMKMrOkCZtBDJrtVQSYsOdJSf/mUz7vLiG9HrPeIwj5tdQqVxZN+vCvCRSolv5SdX+/oZWdKRRp7JPXctm567j5r/l0M3ufG2gmcKFiTIQwFWxHsQDJCHIeAmwLtMH5qKJw9SPdtYnHLZmtsMzoXQzK9uqPUIZzyWwu3X63NdN3wSxxevpyQrOdoEUc4IcehxiP9TEVWMgL8syntRoPvPyovbZm0FwcOsDZLqRHx1DeHpWfpJFNEVyhA== 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:(4636009)(46966006)(36840700001)(33656002)(9686003)(36860700001)(5660300002)(47076005)(70586007)(81166007)(70206006)(8676002)(66574015)(86362001)(508600001)(4326008)(186003)(316002)(6506007)(55016002)(8936002)(356005)(6862004)(26005)(2906002)(336012)(54906003)(83380400001)(82310400003)(7696005)(52536014); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Aug 2021 19:27:02.8406 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ec991b44-de0e-4c71-d44a-08d967fe511c 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: VE1EUR03FT026.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4233 Subject: Re: [dpdk-dev] [RFC] eal: simplify the implementation of rte_ctrl_thread_create 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 Sender: "dev" PHNuaXA+DQoNCj4gDQo+IEhpIEhvbm5hcHBhLA0KPiANCj4gKFNvcnJ5IGlmIHlvdSBnZXQgdGhp cyBtZXNzYWdlIHR3aWNlLCBJIGZvcmdvdCB0byByZXBseSBhbGwgdGhlIGZpcnN0IHRpbWUpDQo+ IA0KPiBTb3JyeSBmb3IgdGhlIGxhdGUgcmVwbHkuIEkgd2FzIGFsc28gYXdheS4NCk5vIHByb2Js ZW0sIHRoYW5rcyBmb3IgeW91ciBjb21tZW50cy4NCg0KPiANCj4gSSBoYXZlIG9ubHkgbWFkZSBv bmUgc21hbGwgY29udHJpYnV0aW9uIHRvIERQREsgc28gSSdsbCBkZWZlciB0byBvdGhlcnMgdG8N Cj4gZGVjaWRlIHdoZXRoZXIgdGhpcyBwYXRjaCBzaG91bGQgYmUgYWNjZXB0ZWQuIFdoZW4gSSBz dWJtaXR0ZWQgbXkgcGF0Y2gsIEkNCj4gZ290IHRoZSBmZWVsaW5nIHRoYXQgYnVzeSBsb29wcyB3 ZXJlIHNvbWV3aGF0IGZyb3duZWQgdXBvbiBidXQgaXQgbWlnaHQgYmUNCj4gYSBnb29kIHNvbHV0 aW9uIGhlcmUuDQpJTU8sIGl0IHNob3VsZCBiZSBvayBoZXJlIHNpbmNlIHRoZSBidXN5IGxvb3Ag aXMgZm9yIGEgc21hbGwgcGVyaW9kLiBBZGRpbmcgc2NoZWRfeWllbGQgc2hvdWxkIGhlbHAgcmVk dWNlIHRoZSBhY3R1YWwgc3Bpbm5pbmcuDQoNCj4gDQo+IExlIHZlbi4gMzAganVpbC4gMjAyMSDD oCAxNzozNywgSG9ubmFwcGEgTmFnYXJhaGFsbGkNCj4gPGhvbm5hcHBhLm5hZ2FyYWhhbGxpQGFy bS5jb20+IGEgw6ljcml0IDoNCj4gPHNuaXA+DQo+ID4gKyAgICAgICAvKiBTeW5jaHJvbml6YXRp b24gdmFyaWFibGUgYmV0d2VlbiB0aGUgY29udHJvbCB0aHJlYWQNCj4gPiArICAgICAgICAqIGFu ZCB0aGUgdGhyZWFkIGNhbGxpbmcgcnRlX2N0cmxfdGhyZWFkX2NyZWF0ZSBmdW5jdGlvbi4NCj4g PiArICAgICAgICAqIDAgLSBJbml0aWFsaXplZA0KPiA+ICsgICAgICAgICogMSAtIENvbnRyb2wg dGhyZWFkIGlzIHJ1bm5pbmcgc3VjY2Vzc2Z1bGx5DQo+ID4gKyAgICAgICAgKiAyIC0gQ29udHJv bCB0aHJlYWQgZW5jb3VudGVyZWQgYW4gZXJyb3IuICdyZXQnIGhhcyB0aGUNCj4gPiArICAgICAg ICAqICAgICBlcnJvciBjb2RlLg0KPiA+ICsgICAgICAgICovDQo+ID4gKyAgICAgICB1bnNpZ25l ZCBpbnQgc3luYzsNCj4gDQo+IFRoaXMgaXMgaGlnaGx5IHN1YmplY3RpdmUgYnV0IHRoZSBuYW1l IG9mIHRoaXMgdmFyaWFibGUgZG9lc24ndCBjbGVhcmx5IGluZGljYXRlDQo+IHRoYXQgb25jZSBp dCBpcyBzZXQsIHRoZSBjb250cm9sIHRocmVhZCBpcyBlZmZlY3RpdmVseSBkb25lIHdpdGggdGhl DQo+IHJ0ZV90aHJlYWRfY3RybF9wYXJhbXMuIFRoZSBkb3duc2lkZSB0aGF0IEkgY2FuIHNlZSAo YXMgb3Bwb3NlZCB0byB0aGUNCj4gcHJldmlvdXMgcmVmZXJlbmNlIGNvdW50aW5nIGFwcHJvYWNo KSBpcyB0aGF0IGFueW9uZSBtYWtpbmcgZnVydGhlciBjaGFuZ2VzDQo+IHdvdWxkIGhhdmUgdG8g YmUgY29nbml6YW50IG9mIHRoYXQgZmFjdC4gT3RoZXJ3aXNlLCBhbnkgbmV3IGNvZGUgdGhhdA0K PiBhY2Nlc3NlcyAic3luYyIgaW4gdGhlIGNvbnRyb2wgdGhyZWFkLCBhZnRlciAic3luYyIgaGFz IGJlZW4gc2V0LCB3b3VsZCBjcmVhdGUNCj4gYSByYWNlLg0KTWF5IGJlICJjdHJsX3RocmVhZF9z dGF0dXMiIHdvdWxkIGJlIGJldHRlci4NCg0KPiANCj4gPHNuaXA+DQo+ID4gICAgICAgICByZXQg PSBwdGhyZWFkX2NyZWF0ZSh0aHJlYWQsIGF0dHIsIGN0cmxfdGhyZWFkX2luaXQsICh2b2lkICop cGFyYW1zKTsNCj4gPiAgICAgICAgIGlmIChyZXQgIT0gMCkNCj4gPiAtICAgICAgICAgICAgICAg Z290byBmYWlsX3dpdGhfYmFycmllcjsNCj4gPiArICAgICAgICAgICAgICAgZ290byB0aHJlYWRf Y3JlYXRlX2ZhaWxlZDsNCj4gDQo+IFRoaXMgaXMgYWxzbyBoaWdobHkgc3ViamVjdGl2ZSBidXQg c2luY2UgdGhlIGdvdG8gbGFiZWwgaXMgb25seSB1c2VkIGhlcmUsIHlvdQ0KPiBjb3VsZCBjb21w bGV0ZWx5IGdldCByaWQgb2YgdGhlIGdvdG8gYW5kIHNpbXBseSBmcmVlIGFuZCByZXR1cm4gaGVy ZS4NClRoYW5rcywgYWdyZWUuDQoNCj4gDQo+IDxzbmlwPg0KPiA+ICsgICAgICAgLyogV2FpdCBm b3IgdGhlIGNvbnRyb2wgdGhyZWFkIHRvIGluaXRpYWxpemUgc3VjY2Vzc2Z1bGx5ICovDQo+ID4g KyAgICAgICB3aGlsZSAoIXBhcmFtcy0+c3luYykNCj4gPiArICAgICAgICAgICAgICAgcnRlX3Bh dXNlKCk7DQo+ID4gKyAgICAgICByZXQgPSBwYXJhbXMtPnJldDsNCj4gPg0KPiA+IC0gICAgICAg cHRocmVhZF9iYXJyaWVyX3dhaXQoJnBhcmFtcy0+Y29uZmlndXJlZCk7DQo+ID4gLSAgICAgICBj dHJsX3BhcmFtc19mcmVlKHBhcmFtcyk7DQo+ID4gKyAgICAgICBmcmVlKHBhcmFtcyk7DQo+IA0K PiBNYXliZSBJJ20gbWlzc2luZyBzb21ldGhpbmcgYnV0IGl0IHNlZW1zIGxpa2UgeW91J3JlIGFj Y2Vzc2luZw0KPiBwYXJhbXMtPnN5bmMgYWZ0ZXIgdGhpcyBsaW5lICh1c2UgYWZ0ZXIgZnJlZSku IEkgYXNzdW1lIHlvdSBtZWFudCB0bw0KPiBhZGQgdGhpcyBsaW5lIGFmdGVyIHRoZSBzdWJzZXF1 ZW50IGlmIGJsb2NrPw0KWW91IGFyZSBjb3JyZWN0LiBJIHJlYWxpemVkIHRoaXMgeWVzdGVyZGF5 IHdoaWxlIGluY29ycG9yYXRpbmcgcmV2aWV3IGNvbW1lbnRzLiBUaGF0IG1hZGUgbWUgdGhpbmss IHdlIG5lZWQgYSB0ZXN0IGNhc2UuIEkgYW0gYWRkaW5nIGEgdGVzdCBjYXNlIGFzIHdlbGwuDQoN Cj4gDQo+IExlIHZlbi4gMzAganVpbC4gMjAyMSDDoCAxNzozNywgSG9ubmFwcGEgTmFnYXJhaGFs bGkNCj4gPGhvbm5hcHBhLm5hZ2FyYWhhbGxpQGFybS5jb20+IGEgw6ljcml0IDoNCj4gPg0KPiA+ IFRoZSBjdXJyZW50IGRlc2NyaWJlZCBiZWhhdmlvdXIgb2YgcnRlX2N0cmxfdGhyZWFkX2NyZWF0 ZSBpcyByaWdpZA0KPiA+IHdoaWNoIG1ha2VzIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVu Y3Rpb24gY29tcGxleC4NCj4gPiBUaGUgYmVoYXZpb3IgaXMgYWJzdHJhY3RlZCB0byBhbGxvdyBm b3Igc2ltcGxpZmllZCBpbXBsZW1lbnRhdGlvbi4NCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IEhv bm5hcHBhIE5hZ2FyYWhhbGxpIDxob25uYXBwYS5uYWdhcmFoYWxsaUBhcm0uY29tPg0KPiA+IC0t LQ0KPiA+ICBsaWIvZWFsL2NvbW1vbi9lYWxfY29tbW9uX3RocmVhZC5jIHwgNjUgKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gIGxpYi9lYWwvaW5jbHVkZS9ydGVfbGNvcmUuaCAg ICAgICAgfCAgOCArKy0tDQo+ID4gIDIgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwg NDEgZGVsZXRpb25zKC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvbGliL2VhbC9jb21tb24vZWFs X2NvbW1vbl90aHJlYWQuYw0KPiA+IGIvbGliL2VhbC9jb21tb24vZWFsX2NvbW1vbl90aHJlYWQu Yw0KPiA+IGluZGV4IDFhNTJmNDJhMmIuLjg2Y2FjZDg0MGMgMTAwNjQ0DQo+ID4gLS0tIGEvbGli L2VhbC9jb21tb24vZWFsX2NvbW1vbl90aHJlYWQuYw0KPiA+ICsrKyBiL2xpYi9lYWwvY29tbW9u L2VhbF9jb21tb25fdGhyZWFkLmMNCj4gPiBAQCAtMTY5LDM1ICsxNjksMzUgQEAgX19ydGVfdGhy ZWFkX3VuaW5pdCh2b2lkKSAgc3RydWN0DQo+ID4gcnRlX3RocmVhZF9jdHJsX3BhcmFtcyB7DQo+ ID4gICAgICAgICB2b2lkICooKnN0YXJ0X3JvdXRpbmUpKHZvaWQgKik7DQo+ID4gICAgICAgICB2 b2lkICphcmc7DQo+ID4gLSAgICAgICBwdGhyZWFkX2JhcnJpZXJfdCBjb25maWd1cmVkOw0KPiA+ IC0gICAgICAgdW5zaWduZWQgaW50IHJlZmNudDsNCj4gPiArICAgICAgIGludCByZXQ7DQo+ID4g KyAgICAgICAvKiBTeW5jaHJvbml6YXRpb24gdmFyaWFibGUgYmV0d2VlbiB0aGUgY29udHJvbCB0 aHJlYWQNCj4gPiArICAgICAgICAqIGFuZCB0aGUgdGhyZWFkIGNhbGxpbmcgcnRlX2N0cmxfdGhy ZWFkX2NyZWF0ZSBmdW5jdGlvbi4NCj4gPiArICAgICAgICAqIDAgLSBJbml0aWFsaXplZA0KPiA+ ICsgICAgICAgICogMSAtIENvbnRyb2wgdGhyZWFkIGlzIHJ1bm5pbmcgc3VjY2Vzc2Z1bGx5DQo+ ID4gKyAgICAgICAgKiAyIC0gQ29udHJvbCB0aHJlYWQgZW5jb3VudGVyZWQgYW4gZXJyb3IuICdy ZXQnIGhhcyB0aGUNCj4gPiArICAgICAgICAqICAgICBlcnJvciBjb2RlLg0KPiA+ICsgICAgICAg ICovDQo+ID4gKyAgICAgICB1bnNpZ25lZCBpbnQgc3luYzsNCj4gPiAgfTsNCj4gPg0KPiA+IC1z dGF0aWMgdm9pZCBjdHJsX3BhcmFtc19mcmVlKHN0cnVjdCBydGVfdGhyZWFkX2N0cmxfcGFyYW1z ICpwYXJhbXMpDQo+ID4gLXsNCj4gPiAtICAgICAgIGlmIChfX2F0b21pY19zdWJfZmV0Y2goJnBh cmFtcy0+cmVmY250LCAxLCBfX0FUT01JQ19BQ1FfUkVMKSA9PQ0KPiAwKSB7DQo+ID4gLSAgICAg ICAgICAgICAgICh2b2lkKXB0aHJlYWRfYmFycmllcl9kZXN0cm95KCZwYXJhbXMtPmNvbmZpZ3Vy ZWQpOw0KPiA+IC0gICAgICAgICAgICAgICBmcmVlKHBhcmFtcyk7DQo+ID4gLSAgICAgICB9DQo+ ID4gLX0NCj4gPiAtDQo+ID4gIHN0YXRpYyB2b2lkICpjdHJsX3RocmVhZF9pbml0KHZvaWQgKmFy ZykgIHsNCj4gPiAgICAgICAgIHN0cnVjdCBpbnRlcm5hbF9jb25maWcgKmludGVybmFsX2NvbmYg PQ0KPiA+ICAgICAgICAgICAgICAgICBlYWxfZ2V0X2ludGVybmFsX2NvbmZpZ3VyYXRpb24oKTsN Cj4gPiAgICAgICAgIHJ0ZV9jcHVzZXRfdCAqY3B1c2V0ID0gJmludGVybmFsX2NvbmYtPmN0cmxf Y3B1c2V0Ow0KPiA+ICAgICAgICAgc3RydWN0IHJ0ZV90aHJlYWRfY3RybF9wYXJhbXMgKnBhcmFt cyA9IGFyZzsNCj4gPiAtICAgICAgIHZvaWQgKigqc3RhcnRfcm91dGluZSkodm9pZCAqKTsNCj4g PiArICAgICAgIHZvaWQgKigqc3RhcnRfcm91dGluZSkodm9pZCAqKSA9IHBhcmFtcy0+c3RhcnRf cm91dGluZTsNCj4gPiAgICAgICAgIHZvaWQgKnJvdXRpbmVfYXJnID0gcGFyYW1zLT5hcmc7DQo+ ID4NCj4gPiAgICAgICAgIF9fcnRlX3RocmVhZF9pbml0KHJ0ZV9sY29yZV9pZCgpLCBjcHVzZXQp Ow0KPiA+IC0NCj4gPiAtICAgICAgIHB0aHJlYWRfYmFycmllcl93YWl0KCZwYXJhbXMtPmNvbmZp Z3VyZWQpOw0KPiA+IC0gICAgICAgc3RhcnRfcm91dGluZSA9IHBhcmFtcy0+c3RhcnRfcm91dGlu ZTsNCj4gPiAtICAgICAgIGN0cmxfcGFyYW1zX2ZyZWUocGFyYW1zKTsNCj4gPiAtDQo+ID4gLSAg ICAgICBpZiAoc3RhcnRfcm91dGluZSA9PSBOVUxMKQ0KPiA+ICsgICAgICAgcGFyYW1zLT5yZXQg PSBwdGhyZWFkX3NldGFmZmluaXR5X25wKHB0aHJlYWRfc2VsZigpLA0KPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKCpjcHVzZXQpLCBjcHVzZXQpOw0KPiA+ICsgICAg ICAgaWYgKHBhcmFtcy0+cmV0ICE9IDApIHsNCj4gPiArICAgICAgICAgICAgICAgcGFyYW1zLT5z eW5jID0gMjsNCj4gPiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7DQo+ID4gKyAgICAgICB9 DQo+ID4gKw0KPiA+ICsgICAgICAgcGFyYW1zLT5zeW5jID0gMTsNCj4gPg0KPiA+ICAgICAgICAg cmV0dXJuIHN0YXJ0X3JvdXRpbmUocm91dGluZV9hcmcpOyAgfSBAQCAtMjA3LDkgKzIwNyw2IEBA DQo+ID4gcnRlX2N0cmxfdGhyZWFkX2NyZWF0ZShwdGhyZWFkX3QgKnRocmVhZCwgY29uc3QgY2hh ciAqbmFtZSwNCj4gPiAgICAgICAgICAgICAgICAgY29uc3QgcHRocmVhZF9hdHRyX3QgKmF0dHIs DQo+ID4gICAgICAgICAgICAgICAgIHZvaWQgKigqc3RhcnRfcm91dGluZSkodm9pZCAqKSwgdm9p ZCAqYXJnKSAgew0KPiA+IC0gICAgICAgc3RydWN0IGludGVybmFsX2NvbmZpZyAqaW50ZXJuYWxf Y29uZiA9DQo+ID4gLSAgICAgICAgICAgICAgIGVhbF9nZXRfaW50ZXJuYWxfY29uZmlndXJhdGlv bigpOw0KPiA+IC0gICAgICAgcnRlX2NwdXNldF90ICpjcHVzZXQgPSAmaW50ZXJuYWxfY29uZi0+ Y3RybF9jcHVzZXQ7DQo+ID4gICAgICAgICBzdHJ1Y3QgcnRlX3RocmVhZF9jdHJsX3BhcmFtcyAq cGFyYW1zOw0KPiA+ICAgICAgICAgaW50IHJldDsNCj4gPg0KPiA+IEBAIC0yMTksMTUgKzIxNiwx MiBAQCBydGVfY3RybF90aHJlYWRfY3JlYXRlKHB0aHJlYWRfdCAqdGhyZWFkLCBjb25zdA0KPiA+ IGNoYXIgKm5hbWUsDQo+ID4NCj4gPiAgICAgICAgIHBhcmFtcy0+c3RhcnRfcm91dGluZSA9IHN0 YXJ0X3JvdXRpbmU7DQo+ID4gICAgICAgICBwYXJhbXMtPmFyZyA9IGFyZzsNCj4gPiAtICAgICAg IHBhcmFtcy0+cmVmY250ID0gMjsNCj4gPiAtDQo+ID4gLSAgICAgICByZXQgPSBwdGhyZWFkX2Jh cnJpZXJfaW5pdCgmcGFyYW1zLT5jb25maWd1cmVkLCBOVUxMLCAyKTsNCj4gPiAtICAgICAgIGlm IChyZXQgIT0gMCkNCj4gPiAtICAgICAgICAgICAgICAgZ290byBmYWlsX25vX2JhcnJpZXI7DQo+ ID4gKyAgICAgICBwYXJhbXMtPnJldCA9IDA7DQo+ID4gKyAgICAgICBwYXJhbXMtPnN5bmMgPSAw Ow0KPiA+DQo+ID4gICAgICAgICByZXQgPSBwdGhyZWFkX2NyZWF0ZSh0aHJlYWQsIGF0dHIsIGN0 cmxfdGhyZWFkX2luaXQsICh2b2lkICopcGFyYW1zKTsNCj4gPiAgICAgICAgIGlmIChyZXQgIT0g MCkNCj4gPiAtICAgICAgICAgICAgICAgZ290byBmYWlsX3dpdGhfYmFycmllcjsNCj4gPiArICAg ICAgICAgICAgICAgZ290byB0aHJlYWRfY3JlYXRlX2ZhaWxlZDsNCj4gPg0KPiA+ICAgICAgICAg aWYgKG5hbWUgIT0gTlVMTCkgew0KPiA+ICAgICAgICAgICAgICAgICByZXQgPSBydGVfdGhyZWFk X3NldG5hbWUoKnRocmVhZCwgbmFtZSk7IEBAIC0yMzYsMjQNCj4gPiArMjMwLDIxIEBAIHJ0ZV9j dHJsX3RocmVhZF9jcmVhdGUocHRocmVhZF90ICp0aHJlYWQsIGNvbnN0IGNoYXIgKm5hbWUsDQo+ ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ2Fubm90IHNldCBuYW1lIGZvciBj dHJsIHRocmVhZFxuIik7DQo+ID4gICAgICAgICB9DQo+ID4NCj4gPiAtICAgICAgIHJldCA9IHB0 aHJlYWRfc2V0YWZmaW5pdHlfbnAoKnRocmVhZCwgc2l6ZW9mKCpjcHVzZXQpLCBjcHVzZXQpOw0K PiA+IC0gICAgICAgaWYgKHJldCAhPSAwKQ0KPiA+IC0gICAgICAgICAgICAgICBwYXJhbXMtPnN0 YXJ0X3JvdXRpbmUgPSBOVUxMOw0KPiA+ICsgICAgICAgLyogV2FpdCBmb3IgdGhlIGNvbnRyb2wg dGhyZWFkIHRvIGluaXRpYWxpemUgc3VjY2Vzc2Z1bGx5ICovDQo+ID4gKyAgICAgICB3aGlsZSAo IXBhcmFtcy0+c3luYykNCj4gPiArICAgICAgICAgICAgICAgcnRlX3BhdXNlKCk7DQo+ID4gKyAg ICAgICByZXQgPSBwYXJhbXMtPnJldDsNCj4gPg0KPiA+IC0gICAgICAgcHRocmVhZF9iYXJyaWVy X3dhaXQoJnBhcmFtcy0+Y29uZmlndXJlZCk7DQo+ID4gLSAgICAgICBjdHJsX3BhcmFtc19mcmVl KHBhcmFtcyk7DQo+ID4gKyAgICAgICBmcmVlKHBhcmFtcyk7DQo+ID4NCj4gPiAtICAgICAgIGlm IChyZXQgIT0gMCkNCj4gPiAtICAgICAgICAgICAgICAgLyogc3RhcnRfcm91dGluZSBoYXMgYmVl biBzZXQgdG8gTlVMTCBhYm92ZTsgKi8NCj4gPiAtICAgICAgICAgICAgICAgLyogY3RybCB0aHJl YWQgd2lsbCBleGl0IGltbWVkaWF0ZWx5ICovDQo+ID4gKyAgICAgICBpZiAocGFyYW1zLT5zeW5j ICE9IDEpDQo+ID4gKyAgICAgICAgICAgICAgIC8qIGN0cmwgdGhyZWFkIGlzIGV4aXRpbmcgKi8N Cj4gPiAgICAgICAgICAgICAgICAgcHRocmVhZF9qb2luKCp0aHJlYWQsIE5VTEwpOw0KPiA+DQo+ ID4gICAgICAgICByZXR1cm4gLXJldDsNCj4gPg0KPiA+IC1mYWlsX3dpdGhfYmFycmllcjoNCj4g PiAtICAgICAgICh2b2lkKXB0aHJlYWRfYmFycmllcl9kZXN0cm95KCZwYXJhbXMtPmNvbmZpZ3Vy ZWQpOw0KPiA+ICt0aHJlYWRfY3JlYXRlX2ZhaWxlZDoNCj4gPg0KPiA+IC1mYWlsX25vX2JhcnJp ZXI6DQo+ID4gICAgICAgICBmcmVlKHBhcmFtcyk7DQo+ID4NCj4gPiAgICAgICAgIHJldHVybiAt cmV0Ow0KPiA+IGRpZmYgLS1naXQgYS9saWIvZWFsL2luY2x1ZGUvcnRlX2xjb3JlLmggYi9saWIv ZWFsL2luY2x1ZGUvcnRlX2xjb3JlLmgNCj4gPiBpbmRleCAxNTUwYjc1ZGEwLi5mMWNjNWUzOGRj IDEwMDY0NA0KPiA+IC0tLSBhL2xpYi9lYWwvaW5jbHVkZS9ydGVfbGNvcmUuaA0KPiA+ICsrKyBi L2xpYi9lYWwvaW5jbHVkZS9ydGVfbGNvcmUuaA0KPiA+IEBAIC00MjAsMTAgKzQyMCwxMCBAQCBy dGVfdGhyZWFkX3VucmVnaXN0ZXIodm9pZCk7DQo+ID4gIC8qKg0KPiA+ICAgKiBDcmVhdGUgYSBj b250cm9sIHRocmVhZC4NCj4gPiAgICoNCj4gPiAtICogV3JhcHBlciB0byBwdGhyZWFkX2NyZWF0 ZSgpLCBwdGhyZWFkX3NldG5hbWVfbnAoKSBhbmQNCj4gPiAtICogcHRocmVhZF9zZXRhZmZpbml0 eV9ucCgpLiBUaGUgYWZmaW5pdHkgb2YgdGhlIG5ldyB0aHJlYWQgaXMgYmFzZWQNCj4gPiAtICog b24gdGhlIENQVSBhZmZpbml0eSByZXRyaWV2ZWQgYXQgdGhlIHRpbWUgcnRlX2VhbF9pbml0KCkg d2FzDQo+ID4gY2FsbGVkLA0KPiA+IC0gKiB0aGUgZGF0YXBsYW5lIGFuZCBzZXJ2aWNlIGxjb3Jl cyBhcmUgdGhlbiBleGNsdWRlZC4NCj4gPiArICogQ3JlYXRlcyBhIGNvbnRyb2wgdGhyZWFkIHdp dGggdGhlIGdpdmVuIG5hbWUgYW5kIGF0dHJpYnV0ZXMuIFRoZQ0KPiA+ICsgKiBhZmZpbml0eSBv ZiB0aGUgbmV3IHRocmVhZCBpcyBiYXNlZCBvbiB0aGUgQ1BVIGFmZmluaXR5IHJldHJpZXZlZA0K PiA+ICsgKiBhdCB0aGUgdGltZSBydGVfZWFsX2luaXQoKSB3YXMgY2FsbGVkLCB0aGUgZGF0YXBs YW5lIGFuZCBzZXJ2aWNlDQo+ID4gKyAqIGxjb3JlcyBhcmUgdGhlbiBleGNsdWRlZC4NCj4gPiAg ICoNCj4gPiAgICogQHBhcmFtIHRocmVhZA0KPiA+ICAgKiAgIEZpbGxlZCB3aXRoIHRoZSB0aHJl YWQgaWQgb2YgdGhlIG5ldyBjcmVhdGVkIHRocmVhZC4NCj4gPiAtLQ0KPiA+IDIuMTcuMQ0KPiA+ DQo=