From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 88942A0524; Sat, 4 Jul 2020 19:00:25 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id B858A1DBC5; Sat, 4 Jul 2020 19:00:24 +0200 (CEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80059.outbound.protection.outlook.com [40.107.8.59]) by dpdk.org (Postfix) with ESMTP id 77B981DBB4 for ; Sat, 4 Jul 2020 19:00:22 +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=GzSu4sXP6E8BKwqyYYyCVkfviuzMWZ1hoxrKfIJN6gg=; b=8EBQMYIT/CILN89k4/Hqej2EGerN4eFtSUCsZ7SsZXPKz5W+I84QtIas2rhWsZOXs1ygQeBgduyVCRvUVg6O3+LyOxjZIYhElOpnhSZsWIBtue6JHfHnEPYC2LqUf9AwitjlvRhAKUQYTmcxIYB1WkRdkq+Gw9+yOIf0NzmRRuI= Received: from DB6PR0601CA0023.eurprd06.prod.outlook.com (2603:10a6:4:7b::33) by AM6PR08MB4005.eurprd08.prod.outlook.com (2603:10a6:20b:a4::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.20; Sat, 4 Jul 2020 17:00:20 +0000 Received: from DB5EUR03FT022.eop-EUR03.prod.protection.outlook.com (2603:10a6:4:7b:cafe::9b) by DB6PR0601CA0023.outlook.office365.com (2603:10a6:4:7b::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.21 via Frontend Transport; Sat, 4 Jul 2020 17:00:19 +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=bestguesspass 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 DB5EUR03FT022.mail.protection.outlook.com (10.152.20.171) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.24 via Frontend Transport; Sat, 4 Jul 2020 17:00:19 +0000 Received: ("Tessian outbound 114f46c34313:v62"); Sat, 04 Jul 2020 17:00:19 +0000 X-CR-MTA-TID: 64aa7808 Received: from 5b6ce18e3830.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 18C4910F-7CA6-45E3-90DE-C5EAACD45B3B.1; Sat, 04 Jul 2020 17:00:14 +0000 Received: from EUR03-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5b6ce18e3830.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Sat, 04 Jul 2020 17:00:14 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DdiozQ2hEeCuQ2eyWeDM0Yy1AIo7UX2ZdJvmroInLQsl1N/MG8/oWaCU+Z3wmJFX+mYQd1VU16OYl+E0H2lZXoSbaeDIlDZO5E/ExhV7V5yYA4Yl9qcRMDmsYlw45oxeSrJfcZ423H5DjbkKsIvbopPxpchjt97xi5Sepyhy7uyWoQDJLfPvmprJO9ZF2LV5TZfaHJz6SzBTPeMdc41Z50osHV1scScsuxwx5gaKGsQgVnhRO7Ds/57rsc936MT+DaSeU8K2y9hw4XZzeFW/FnwK73+jDcoATY1eka5uu7DOmQiMdQngthzQYqiu5IZhbTOK4OyZqR0GqGtXEfXinA== 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=GzSu4sXP6E8BKwqyYYyCVkfviuzMWZ1hoxrKfIJN6gg=; b=e/LTAI0ATWOTZVSrw2XPNG1sofLNBtLSUP9yhoWGamkX4v36guu17bI54N+erlJ8B9+wQSUgSJL2Tl2oZqgfS3on6c5mtuWTDxvATx0a9gMqoUyg0M6A1D8FhbVEcVOs/GeEB8cmM6EY5n2kTasmvgGNSpLWlD+DLrS5irUQoIU06McnIwjOfQ2vMsSVls21UJcA0Oq2TxygV/6SOX/w13t7BGEAthZFFEFcrho0Xyin2QWIanFe7L46Z4pgFqVwk+rOCuzSezHcaBh+kgQzEnQaG6tPqp4tQBIIQgS264ew3uAiuJrwZLj+gDlM5Vk5dCzTMFxOAuViDMlnuaxigA== 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=GzSu4sXP6E8BKwqyYYyCVkfviuzMWZ1hoxrKfIJN6gg=; b=8EBQMYIT/CILN89k4/Hqej2EGerN4eFtSUCsZ7SsZXPKz5W+I84QtIas2rhWsZOXs1ygQeBgduyVCRvUVg6O3+LyOxjZIYhElOpnhSZsWIBtue6JHfHnEPYC2LqUf9AwitjlvRhAKUQYTmcxIYB1WkRdkq+Gw9+yOIf0NzmRRuI= Received: from HE1PR0801MB2025.eurprd08.prod.outlook.com (2603:10a6:3:50::14) by HE1PR0802MB2204.eurprd08.prod.outlook.com (2603:10a6:3:c7::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.29; Sat, 4 Jul 2020 17:00:10 +0000 Received: from HE1PR0801MB2025.eurprd08.prod.outlook.com ([fe80::e863:15c9:b803:6533]) by HE1PR0801MB2025.eurprd08.prod.outlook.com ([fe80::e863:15c9:b803:6533%7]) with mapi id 15.20.3153.029; Sat, 4 Jul 2020 17:00:10 +0000 From: Ruifeng Wang To: David Marchand , Vladimir Medvedkin , Bruce Richardson CC: John McNamara , Marko Kovacevic , Ray Kinsella , Neil Horman , dev , "Ananyev, Konstantin" , Honnappa Nagarahalli , nd , nd Thread-Topic: [dpdk-dev] [PATCH v5 1/3] lib/lpm: integrate RCU QSBR Thread-Index: AQHWTevNJNdUJv2iVEGelZmObK2TtajvfLOAgAgoQyA= Date: Sat, 4 Jul 2020 17:00:10 +0000 Message-ID: References: <20190906094534.36060-1-ruifeng.wang@arm.com> <20200629080301.97515-1-ruifeng.wang@arm.com> <20200629080301.97515-2-ruifeng.wang@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: 679d35be-1cb5-4cdc-a2dc-95dd9fb051c7.0 x-checkrecipientchecked: true Authentication-Results-Original: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=arm.com; x-originating-ip: [203.126.0.111] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: f098dc43-bfd7-4a53-ff4d-08d8203bbb5c x-ms-traffictypediagnostic: HE1PR0802MB2204:|AM6PR08MB4005: x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508; x-forefront-prvs: 0454444834 X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: DVEXvhuhCv0U322dEwXDYVPz5mMRbWhuBUHS+30q/PFfeuKtuAgLJL42okhbrWvDAwD5tSWgQCUTcOsRFd65FalixBMX4XVLGEWbsmt+QQoa7Bb9u7RNudHUuUZW4tb6oD06SqHITqYSc7/c8rUUchDqNKU+FyMBqfnKkNObdb1p5Mzb+ByEZ0SAbeH6S6atYC93a2EH4WBpK/uCvDND77LFR6/lDoW1YfuUkOHgDh76QvULbqjL05pYhhq8v0oaPbu6jtlwWV6aBcVvkiU62MUc6oJz2He4pzqYyzq+qJE2WZYi+AzGif3rbR/LD1sL/c9tuPwPTqCV/Qz5PdHNHA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:HE1PR0801MB2025.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(396003)(39850400004)(346002)(376002)(136003)(366004)(6506007)(478600001)(5660300002)(7696005)(2906002)(316002)(9686003)(54906003)(86362001)(110136005)(71200400001)(33656002)(66446008)(64756008)(66556008)(55016002)(8676002)(66476007)(186003)(26005)(83380400001)(53546011)(52536014)(66946007)(76116006)(8936002)(4326008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: AhHg49Niu9hYmJAHyu7+F1HF9UV6Rcwq7UoJhA7XHP96tgaDduCFAiL4hPYkFSwfTFkXlJwq3PYaGzWMUepLJJthYMeGZrNCm6q7grchy8tFL1Zjc2mfdyQ5B37tEl49jZmAm1f0kOj4FunQPxAIZS4bIX+Vg250EHj/dr7UzpyxB2DYpyPx9GjOyaBkn11P1yakWjyW8sI0hGQ2dN9juxbatqnGL5OgGROBQcKRRkLrpZXfQY34bSrxZovIOlZLbfo0azlhwzf30RVhNXj2Rr2Epj9jctpKATpx7MRkgfU/fr8Df73FqbEeJpicmG9JAQ4wfomZboQ0nld7ooSvshzdWXTSSmmNjCBb0ZbOrK2LFkHHF2y+91u0erwYacth7oTd64D58zRhO5O9kNat3jErIldzCa5182xVA2n26uOJF4iITHzq581rlUGyukwwwnzeZYScrS0a0cjeP0IXONnnbU/9NwBaCdZNJlhHzkc= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2204 Original-Authentication-Results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT022.eop-EUR03.prod.protection.outlook.com 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; SFTY:; SFS:(4636009)(39850400004)(136003)(376002)(346002)(396003)(46966005)(110136005)(55016002)(54906003)(478600001)(47076004)(186003)(82740400003)(26005)(4326008)(33656002)(53546011)(7696005)(83380400001)(6506007)(8936002)(336012)(5660300002)(2906002)(9686003)(8676002)(52536014)(81166007)(70586007)(86362001)(82310400002)(316002)(70206006)(356005); DIR:OUT; SFP:1101; X-MS-Office365-Filtering-Correlation-Id-Prvs: 6597d078-39f9-4da0-4097-08d8203bb642 X-Forefront-PRVS: 0454444834 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OMenXofPgS0qXyicKIaGyO9lw3f4OjyM/fbZXkd5g/QO0S+T4KeesFOiYJdh7GcZ7znTyAmuREURHFnt/QxPqopUZWR2Fs+Z57mkzRfBkFohfeH1iGVSyXnGTaKLLL9YsL2TC3w2hkIu50BbVsq5kvhoJmSM7SSwj0qzEIQksFACVmyk8Q6xufNGsN/bjJr7Rm367IzSs4rHJk/9fktZFKXSm6dfQ8lXkJeotTpfWv/b3d3J832emoYuSUqQBVqw0Pw9qo45G6c/jEtpYf2j0kT7qQlBPrLjM3A23iH7bBTLNejB2vAK3ls+ABxnKq4xQIjrZN1ECRgo5udGredWOTlar+RdfyakbRUVisXGzft6MsCYkhXsI74B6B0G2vHxPEldK4RPFx2lAL7SSV2KCA== X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jul 2020 17:00:19.1258 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f098dc43-bfd7-4a53-ff4d-08d8203bbb5c 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: DB5EUR03FT022.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB4005 Subject: Re: [dpdk-dev] [PATCH v5 1/3] lib/lpm: integrate RCU QSBR X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" SGkgRGF2aWQsDQoNClNvcnJ5LCBJIG1pc3NlZCB0cmFja2luZyBvZiB0aGlzIHRocmVhZC4NCg0K PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBEYXZpZCBNYXJjaGFuZCA8ZGF2 aWQubWFyY2hhbmRAcmVkaGF0LmNvbT4NCj4gU2VudDogTW9uZGF5LCBKdW5lIDI5LCAyMDIwIDc6 NTYgUE0NCj4gVG86IFJ1aWZlbmcgV2FuZyA8UnVpZmVuZy5XYW5nQGFybS5jb20+OyBWbGFkaW1p ciBNZWR2ZWRraW4NCj4gPHZsYWRpbWlyLm1lZHZlZGtpbkBpbnRlbC5jb20+OyBCcnVjZSBSaWNo YXJkc29uDQo+IDxicnVjZS5yaWNoYXJkc29uQGludGVsLmNvbT4NCj4gQ2M6IEpvaG4gTWNOYW1h cmEgPGpvaG4ubWNuYW1hcmFAaW50ZWwuY29tPjsgTWFya28gS292YWNldmljDQo+IDxtYXJrby5r b3ZhY2V2aWNAaW50ZWwuY29tPjsgUmF5IEtpbnNlbGxhIDxtZHJAYXNocm9lLmV1PjsgTmVpbCBI b3JtYW4NCj4gPG5ob3JtYW5AdHV4ZHJpdmVyLmNvbT47IGRldiA8ZGV2QGRwZGsub3JnPjsgQW5h bnlldiwgS29uc3RhbnRpbg0KPiA8a29uc3RhbnRpbi5hbmFueWV2QGludGVsLmNvbT47IEhvbm5h cHBhIE5hZ2FyYWhhbGxpDQo+IDxIb25uYXBwYS5OYWdhcmFoYWxsaUBhcm0uY29tPjsgbmQgPG5k QGFybS5jb20+DQo+IFN1YmplY3Q6IFJlOiBbZHBkay1kZXZdIFtQQVRDSCB2NSAxLzNdIGxpYi9s cG06IGludGVncmF0ZSBSQ1UgUVNCUg0KPiANCj4gT24gTW9uLCBKdW4gMjksIDIwMjAgYXQgMTA6 MDMgQU0gUnVpZmVuZyBXYW5nIDxydWlmZW5nLndhbmdAYXJtLmNvbT4NCj4gd3JvdGU6DQo+ID4N Cj4gPiBDdXJyZW50bHksIHRoZSB0Ymw4IGdyb3VwIGlzIGZyZWVkIGV2ZW4gdGhvdWdoIHRoZSBy ZWFkZXJzIG1pZ2h0IGJlDQo+ID4gdXNpbmcgdGhlIHRibDggZ3JvdXAgZW50cmllcy4gVGhlIGZy ZWVkIHRibDggZ3JvdXAgY2FuIGJlIHJlYWxsb2NhdGVkDQo+ID4gcXVpY2tseS4gVGhpcyByZXN1 bHRzIGluIGluY29ycmVjdCBsb29rdXAgcmVzdWx0cy4NCj4gPg0KPiA+IFJDVSBRU0JSIHByb2Nl c3MgaXMgaW50ZWdyYXRlZCBmb3Igc2FmZSB0Ymw4IGdyb3VwIHJlY2xhaW0uDQo+ID4gUmVmZXIg dG8gUkNVIGRvY3VtZW50YXRpb24gdG8gdW5kZXJzdGFuZCB2YXJpb3VzIGFzcGVjdHMgb2YNCj4g PiBpbnRlZ3JhdGluZyBSQ1UgbGlicmFyeSBpbnRvIG90aGVyIGxpYnJhcmllcy4NCj4gPg0KPiA+ IFNpZ25lZC1vZmYtYnk6IFJ1aWZlbmcgV2FuZyA8cnVpZmVuZy53YW5nQGFybS5jb20+DQo+ID4g UmV2aWV3ZWQtYnk6IEhvbm5hcHBhIE5hZ2FyYWhhbGxpIDxob25uYXBwYS5uYWdhcmFoYWxsaUBh cm0uY29tPg0KPiA+IC0tLQ0KPiA+ICBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvbHBtX2xpYi5yc3Qg IHwgIDMyICsrKysrKysNCj4gPiAgbGliL2xpYnJ0ZV9scG0vTWFrZWZpbGUgICAgICAgICAgICB8 ICAgMiArLQ0KPiA+ICBsaWIvbGlicnRlX2xwbS9tZXNvbi5idWlsZCAgICAgICAgIHwgICAxICsN Cj4gPiAgbGliL2xpYnJ0ZV9scG0vcnRlX2xwbS5jICAgICAgICAgICB8IDEyOSArKysrKysrKysr KysrKysrKysrKysrKysrKy0tLQ0KPiA+ICBsaWIvbGlicnRlX2xwbS9ydGVfbHBtLmggICAgICAg ICAgIHwgIDU5ICsrKysrKysrKysrKysNCj4gPiAgbGliL2xpYnJ0ZV9scG0vcnRlX2xwbV92ZXJz aW9uLm1hcCB8ICAgNiArKw0KPiA+ICA2IGZpbGVzIGNoYW5nZWQsIDIxNiBpbnNlcnRpb25zKCsp LCAxMyBkZWxldGlvbnMoLSkNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9kb2MvZ3VpZGVzL3Byb2df Z3VpZGUvbHBtX2xpYi5yc3QNCj4gPiBiL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9scG1fbGliLnJz dA0KPiA+IGluZGV4IDE2MDlhNTdkMC4uN2NjOTkwNDRhIDEwMDY0NA0KPiA+IC0tLSBhL2RvYy9n dWlkZXMvcHJvZ19ndWlkZS9scG1fbGliLnJzdA0KPiA+ICsrKyBiL2RvYy9ndWlkZXMvcHJvZ19n dWlkZS9scG1fbGliLnJzdA0KPiA+IEBAIC0xNDUsNiArMTQ1LDM4IEBAIGRlcGVuZGluZyBvbiB3 aGV0aGVyIHdlIG5lZWQgdG8gbW92ZSB0byB0aGUNCj4gbmV4dCB0YWJsZSBvciBub3QuDQo+ID4g IFByZWZpeCBleHBhbnNpb24gaXMgb25lIG9mIHRoZSBrZXlzIG9mIHRoaXMgYWxnb3JpdGhtLCAg c2luY2UgaXQNCj4gPiBpbXByb3ZlcyB0aGUgc3BlZWQgZHJhbWF0aWNhbGx5IGJ5IGFkZGluZyBy ZWR1bmRhbmN5Lg0KPiA+DQo+ID4gK0RlbGV0aW9uDQo+ID4gK35+fn5+fn5+DQo+ID4gKw0KPiA+ ICtXaGVuIGRlbGV0aW5nIGEgcnVsZSwgYSByZXBsYWNlbWVudCBydWxlIGlzIHNlYXJjaGVkIGZv ci4gUmVwbGFjZW1lbnQNCj4gPiArcnVsZSBpcyBhbiBleGlzdGluZyBydWxlIHRoYXQgaGFzIHRo ZSBsb25nZXN0IHByZWZpeCBtYXRjaCB3aXRoIHRoZSBydWxlIHRvIGJlDQo+IGRlbGV0ZWQsIGJ1 dCBoYXMgc21hbGxlciBkZXB0aC4NCj4gPiArDQo+ID4gK0lmIGEgcmVwbGFjZW1lbnQgcnVsZSBp cyBmb3VuZCwgdGFyZ2V0IHRibDI0IGFuZCB0Ymw4IGVudHJpZXMgYXJlDQo+ID4gK3VwZGF0ZWQg dG8gaGF2ZSB0aGUgc2FtZSBkZXB0aCBhbmQgbmV4dCBob3AgdmFsdWUgd2l0aCB0aGUNCj4gcmVw bGFjZW1lbnQgcnVsZS4NCj4gPiArDQo+ID4gK0lmIG5vIHJlcGxhY2VtZW50IHJ1bGUgY2FuIGJl IGZvdW5kLCB0YXJnZXQgdGJsMjQgYW5kIHRibDggZW50cmllcyB3aWxsIGJlDQo+IGNsZWFyZWQu DQo+ID4gKw0KPiA+ICtQcmVmaXggZXhwYW5zaW9uIGlzIHBlcmZvcm1lZCBpZiB0aGUgcnVsZSdz IGRlcHRoIGlzIG5vdCBleGFjdGx5IDI0IGJpdHMgb3INCj4gMzIgYml0cy4NCj4gPiArDQo+ID4g K0FmdGVyIGRlbGV0aW5nIGEgcnVsZSwgYSBncm91cCBvZiB0Ymw4cyB0aGF0IGJlbG9uZ3MgdG8g dGhlIHNhbWUgdGJsMjQgZW50cnkNCj4gYXJlIGZyZWVkIGluIGZvbGxvd2luZyBjYXNlczoNCj4g PiArDQo+ID4gKyogICBBbGwgdGJsOHMgaW4gdGhlIGdyb3VwIGFyZSBlbXB0eSAuDQo+ID4gKw0K PiA+ICsqICAgQWxsIHRibDhzIGluIHRoZSBncm91cCBoYXZlIHRoZSBzYW1lIHZhbHVlcyBhbmQg d2l0aCBkZXB0aCBubyBncmVhdGVyDQo+IHRoYW4gMjQuDQo+ID4gKw0KPiA+ICtGcmVlIG9mIHRi bDhzIGhhdmUgZGlmZmVyZW50IGJlaGF2aW9yczoNCj4gPiArDQo+ID4gKyogICBJZiBSQ1UgaXMg bm90IHVzZWQsIHRibDhzIGFyZSBjbGVhcmVkIGFuZCByZWNsYWltZWQgaW1tZWRpYXRlbHkuDQo+ ID4gKw0KPiA+ICsqICAgSWYgUkNVIGlzIHVzZWQsIHRibDhzIGFyZSByZWNsYWltZWQgd2hlbiBy ZWFkZXJzIGFyZSBpbiBxdWllc2NlbnQgc3RhdGUuDQo+ID4gKw0KPiA+ICtXaGVuIHRoZSBMUE0g aXMgbm90IHVzaW5nIFJDVSwgdGJsOCBncm91cCBjYW4gYmUgZnJlZWQgaW1tZWRpYXRlbHkNCj4g PiArZXZlbiB0aG91Z2ggdGhlIHJlYWRlcnMgbWlnaHQgYmUgdXNpbmcgdGhlIHRibDggZ3JvdXAg ZW50cmllcy4gVGhpcyBtaWdodA0KPiByZXN1bHQgaW4gaW5jb3JyZWN0IGxvb2t1cCByZXN1bHRz Lg0KPiA+ICsNCj4gPiArUkNVIFFTQlIgcHJvY2VzcyBpcyBpbnRlZ3JhdGVkIGZvciBzYWZlIHRi bDggZ3JvdXAgcmVjbGFpbWF0aW9uLg0KPiA+ICtBcHBsaWNhdGlvbiBoYXMgY2VydGFpbiByZXNw b25zaWJpbGl0aWVzIHdoaWxlIHVzaW5nIHRoaXMgZmVhdHVyZS4NCj4gPiArUGxlYXNlIHJlZmVy IHRvIHJlc291cmNlIHJlY2xhaW1hdGlvbiBmcmFtZXdvcmsgb2YgOnJlZjpgUkNVIGxpYnJhcnkN Cj4gPFJDVV9MaWJyYXJ5PmAgZm9yIG1vcmUgZGV0YWlscy4NCj4gPiArDQo+IA0KPiBXb3VsZCB0 aGUgbHBtNiBsaWJyYXJ5IGJlbmVmaXQgZnJvbSB0aGUgc2FtZT8NCj4gQXNraW5nIGFzIEkgZG8g bm90IHNlZSBtdWNoIGNvZGUgc2hhcmVkIGJldHdlZW4gbHBtIGFuZCBscG02Lg0KPiANCkRpZG4n dCBsb29rIGludG8gbHBtNi4gSXQgbWF5IG5lZWQgc2VwYXJhdGUgaW50ZWdyYXRpb24gd2l0aCBS Q1Ugc2luY2Ugbm8gc2hhcmVkIGNvZGUgYmV0d2VlbiBscG0gYW5kIGxwbTYgYXMgeW91IG1lbnRp b25lZC4NCg0KPiBbLi4uXQ0KPiANCj4gPiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9scG0vcnRl X2xwbS5jIGIvbGliL2xpYnJ0ZV9scG0vcnRlX2xwbS5jIGluZGV4DQo+ID4gMzhhYjUxMmE0Li40 MWU5YzQ5YjggMTAwNjQ0DQo+ID4gLS0tIGEvbGliL2xpYnJ0ZV9scG0vcnRlX2xwbS5jDQo+ID4g KysrIGIvbGliL2xpYnJ0ZV9scG0vcnRlX2xwbS5jDQo+ID4gQEAgLTEsNSArMSw2IEBADQo+ID4g IC8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UNCj4gPiAgICogQ29weXJp Z2h0KGMpIDIwMTAtMjAxNCBJbnRlbCBDb3Jwb3JhdGlvbg0KPiA+ICsgKiBDb3B5cmlnaHQoYykg MjAyMCBBcm0gTGltaXRlZA0KPiA+ICAgKi8NCj4gPg0KPiA+ICAjaW5jbHVkZSA8c3RyaW5nLmg+ DQo+ID4gQEAgLTI0NSwxMyArMjQ2LDg0IEBAIHJ0ZV9scG1fZnJlZShzdHJ1Y3QgcnRlX2xwbSAq bHBtKQ0KPiA+ICAgICAgICAgICAgICAgICBUQUlMUV9SRU1PVkUobHBtX2xpc3QsIHRlLCBuZXh0 KTsNCj4gPg0KPiA+ICAgICAgICAgcnRlX21jZmdfdGFpbHFfd3JpdGVfdW5sb2NrKCk7DQo+ID4g LQ0KPiA+ICsjaWZkZWYgQUxMT1dfRVhQRVJJTUVOVEFMX0FQSQ0KPiA+ICsgICAgICAgaWYgKGxw bS0+ZHEpDQo+ID4gKyAgICAgICAgICAgICAgIHJ0ZV9yY3VfcXNicl9kcV9kZWxldGUobHBtLT5k cSk7ICNlbmRpZg0KPiANCj4gQWxsIERQREsgY29kZSB1bmRlciBsaWIvIGlzIGNvbXBpbGVkIHdp dGggdGhlIEFMTE9XX0VYUEVSSU1FTlRBTF9BUEkNCj4gZmxhZyBzZXQuDQo+IFRoZXJlIGlzIG5v IG5lZWQgdG8gcHJvdGVjdCBhZ2FpbnN0IHRoaXMgZmxhZyBpbiBydGVfbHBtLmMuDQo+IA0KT0ss IEkgc2VlLiBTbyBEUERLIGxpYnJhcmllcyB3aWxsIGFsd2F5cyBiZSBjb21waWxlZCB3aXRoIHRo ZSBBTExPV19FWFBFUklNRU5UQUxfQVBJLiBJdCBpcyBhcHBsaWNhdGlvbidzIA0KY2hvaWNlIHRv IHVzZSBleHBlcmltZW50YWwgQVBJcy4gDQpXaWxsIHVwZGF0ZSBpbiBuZXh0IHZlcnNpb24gdG8g cmVtb3ZlIHRoZSBBTExPV19FWFBFUklNRU5UQUxfQVBJIGZsYWcgZnJvbSBydGVfbHBtLmMgYW5k IG9ubHkga2VlcCB0aGUgb25lIGluIHJ0ZV9scG0uaC4NCg0KPiBbLi4uXQ0KPiANCj4gPiBkaWZm IC0tZ2l0IGEvbGliL2xpYnJ0ZV9scG0vcnRlX2xwbS5oIGIvbGliL2xpYnJ0ZV9scG0vcnRlX2xw bS5oIGluZGV4DQo+ID4gYjlkNDlhYzg3Li43ODg5ZjIxYjMgMTAwNjQ0DQo+ID4gLS0tIGEvbGli L2xpYnJ0ZV9scG0vcnRlX2xwbS5oDQo+ID4gKysrIGIvbGliL2xpYnJ0ZV9scG0vcnRlX2xwbS5o DQo+IA0KPiA+IEBAIC0xMzAsNiArMTQzLDI4IEBAIHN0cnVjdCBydGVfbHBtIHsNCj4gPiAgICAg ICAgICAgICAgICAgICAgICAgICBfX3J0ZV9jYWNoZV9hbGlnbmVkOyAvKio8IExQTSB0YmwyNCB0 YWJsZS4gKi8NCj4gPiAgICAgICAgIHN0cnVjdCBydGVfbHBtX3RibF9lbnRyeSAqdGJsODsgLyoq PCBMUE0gdGJsOCB0YWJsZS4gKi8NCj4gPiAgICAgICAgIHN0cnVjdCBydGVfbHBtX3J1bGUgKnJ1 bGVzX3RibDsgLyoqPCBMUE0gcnVsZXMuICovDQo+ID4gKyNpZmRlZiBBTExPV19FWFBFUklNRU5U QUxfQVBJDQo+ID4gKyAgICAgICAvKiBSQ1UgY29uZmlnLiAqLw0KPiA+ICsgICAgICAgc3RydWN0 IHJ0ZV9yY3VfcXNiciAqdjsgICAgICAgICAvKiBSQ1UgUVNCUiB2YXJpYWJsZS4gKi8NCj4gPiAr ICAgICAgIGVudW0gcnRlX2xwbV9xc2JyX21vZGUgcmN1X21vZGU7LyogQmxvY2tpbmcsIGRlZmVy IHF1ZXVlLiAqLw0KPiA+ICsgICAgICAgc3RydWN0IHJ0ZV9yY3VfcXNicl9kcSAqZHE7ICAgICAv KiBSQ1UgUVNCUiBkZWZlciBxdWV1ZS4gKi8NCj4gPiArI2VuZGlmDQo+ID4gK307DQo+IA0KPiBU aGlzIGlzIG1vcmUgYSBjb21tZW50L3F1ZXN0aW9uIGZvciB0aGUgbHBtIG1haW50YWluZXJzLg0K PiANCj4gQWZhaWNzLCB0aGUgcnRlX2xwbSBzdHJ1Y3R1cmUgaXMgZXhwb3J0ZWQvcHVibGljIGJl Y2F1c2Ugb2YgbG9va3VwIHdoaWNoIGlzDQo+IGlubGluZWQuDQo+IEJ1dCBtb3N0IG9mIHRoZSBz dHJ1Y3R1cmUgY2FuIGJlIGhpZGRlbiBhbmQgc3RvcmVkIGluIGEgcHJpdmF0ZSBzdHJ1Y3R1cmUg dGhhdA0KPiB3b3VsZCBlbWJlZCB0aGUgZXhwb3NlZCBydGVfbHBtLg0KPiBUaGUgc2xvd3BhdGgg ZnVuY3Rpb25zIHdvdWxkIG9ubHkgaGF2ZSB0byB0cmFuc2xhdGUgZnJvbSBwdWJsaWNseSBleHBv c2VkDQo+IHRvIGludGVybmFsIHJlcHJlc2VudGF0aW9uICh2aWEgY29udGFpbmVyX29mKS4NCj4g DQo+IFRoaXMgcGF0Y2ggY291bGQgZG8gdGhpcyBhbmQgYmUgdGhlIGZpcnN0IHN0ZXAgdG8gaGlk ZSB0aGUgdW5uZWVkZWQgZXhwb3N1cmUNCj4gb2Ygb3RoZXIgZmllbGRzIChsYXRlci9pbiAyMC4x MSA/KS4NCj4gDQpUbyBoaWRlIG1vc3Qgb2YgdGhlIHN0cnVjdHVyZSBpcyByZWFzb25hYmxlLiAN ClNpbmNlIGl0IHdpbGwgYnJlYWsgQUJJLCBJIGNhbiBkbyB0aGF0IGluIDIwLjExLg0KDQo+IFRo b3VnaHRzPw0KPiANCj4gDQo+IC0tDQo+IERhdmlkIE1hcmNoYW5kDQoNCg==