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 2B550A328D for ; Wed, 23 Oct 2019 05:07:50 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3EF661BEED; Wed, 23 Oct 2019 05:07:49 +0200 (CEST) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150071.outbound.protection.outlook.com [40.107.15.71]) by dpdk.org (Postfix) with ESMTP id BCD8D1BEEA for ; Wed, 23 Oct 2019 05:07:47 +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=G9rMzvLKia50Vee1PdhY6TJG/YkTrBuYB5vkkBFKDe8=; b=l4EOi1Zp1m67I9vr4o6+z4LAxp3T7GSFQ5wWH1Blcn4425LEBmu++ATQ6qMqLZdQy5BjEXmvHyrfZkEKXa/+ysmYDPXr5FdIpQTSijGUjebVLYln6HzQuStbYuL7mUDku6KERhxt7sIWPRoQ6B7DcjDcXE8Yls9xCDJqRBF+Asw= Received: from HE1PR08CA0069.eurprd08.prod.outlook.com (2603:10a6:7:2a::40) by DBBPR08MB4647.eurprd08.prod.outlook.com (2603:10a6:10:f1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2347.16; Wed, 23 Oct 2019 03:07:46 +0000 Received: from VE1EUR03FT056.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e09::202) by HE1PR08CA0069.outlook.office365.com (2603:10a6:7:2a::40) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2387.20 via Frontend Transport; Wed, 23 Oct 2019 03:07:45 +0000 Authentication-Results: spf=fail (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=none action=none header.from=arm.com; Received-SPF: Fail (protection.outlook.com: domain of arm.com does not designate 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 VE1EUR03FT056.mail.protection.outlook.com (10.152.19.28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2367.23 via Frontend Transport; Wed, 23 Oct 2019 03:07:45 +0000 Received: ("Tessian outbound 851a1162fca7:v33"); Wed, 23 Oct 2019 03:07:44 +0000 X-CR-MTA-TID: 64aa7808 Received: from b6fc7e4565e0.2 (ip-172-16-0-2.eu-west-1.compute.internal [104.47.2.58]) by 64aa7808-outbound-1.mta.getcheckrecipient.com id 47C99BE7-93DB-4F26-B09C-E7943DF171F9.1; Wed, 23 Oct 2019 03:07:39 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01lp2058.outbound.protection.outlook.com [104.47.2.58]) by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b6fc7e4565e0.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384); Wed, 23 Oct 2019 03:07:39 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AqTCkE1bXui0MxHxj2zDKL+VXqhlVrCXQAdaX8K6uabMW4Gg2JXv9cuhgTG/iGUPQlPIU6DSKahZ5skoDqi9ED2Or3XW9o0CleKi+8Q9alkEv5vuAWvYKmzCAyaq0Mh+95Qcmina6kg83q5E+QBRPbbkh6fy7rCSl0rXxcQbkE3Z9STUvDf2I4ctTHNP0DBHnimp6aWwnH0nVjdDwnGee2n1cavOsSl8pyoniOB66B7xPSEGHglDOfkapx2YPUPnUGp9mfMVZp6svdLJpOH82V2Ydrwe81gtXOxnmzIXmabxBcp30x6fk/EOdgHAhY0ELGHTnA53EqPJVmiXpiZSYw== 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=G9rMzvLKia50Vee1PdhY6TJG/YkTrBuYB5vkkBFKDe8=; b=U3Hdfwn5oXoCPJtCux3Vo+XjbGqkc1TDejPVlbWXsDb+y+eEYvhfEjxsLyWc5+vvzlHFkg0xAeRycDfYLlvDXyILXY/o9P+qgwomwRyRmVZBDSjbzojtBvmnYXkOvvModQUKryjSGq+fJaxzwx4EJiGo1GOSj6VM1i23hV3hreijE2cdLN9+JTSS4R6TIcYa4y0Hq4QMUAezrxggxWUjB0c9qU0jVD93On/AuMK+elkF0sIJBBwA8e1bmCJy+vv66PIovcaLLq2yO5saGxsbINQm0clvvAhJarret3Zl86Lep5TvKV7FGq7+0EkUaO2W/XR+DS8JL2azMVnA7M+UcA== 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=G9rMzvLKia50Vee1PdhY6TJG/YkTrBuYB5vkkBFKDe8=; b=l4EOi1Zp1m67I9vr4o6+z4LAxp3T7GSFQ5wWH1Blcn4425LEBmu++ATQ6qMqLZdQy5BjEXmvHyrfZkEKXa/+ysmYDPXr5FdIpQTSijGUjebVLYln6HzQuStbYuL7mUDku6KERhxt7sIWPRoQ6B7DcjDcXE8Yls9xCDJqRBF+Asw= Received: from VI1PR08MB3981.eurprd08.prod.outlook.com (20.178.126.10) by VI1PR08MB3087.eurprd08.prod.outlook.com (52.134.123.157) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2367.24; Wed, 23 Oct 2019 03:07:36 +0000 Received: from VI1PR08MB3981.eurprd08.prod.outlook.com ([fe80::d51e:cbb3:2a82:ade]) by VI1PR08MB3981.eurprd08.prod.outlook.com ([fe80::d51e:cbb3:2a82:ade%7]) with mapi id 15.20.2367.025; Wed, 23 Oct 2019 03:07:36 +0000 From: "Joyce Kong (Arm Technology China)" To: =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , "dev@dpdk.org" CC: nd , "thomas@monjalon.net" , "jerinj@marvell.com" , "ravi1.kumar@amd.com" , "xuanziyang2@huawei.com" , "cloud.wangxiaoyun@huawei.com" , "zhouguoyang@huawei.com" , "rmody@marvell.com" , "shshaikh@marvell.com" , Honnappa Nagarahalli , "Gavin Hu (Arm Technology China)" , Stephen Hemminger Thread-Topic: [dpdk-dev] [PATCH v1 1/5] lib/eal: implement the family of rte bitoperation APIs Thread-Index: AQHVhO9FLgkiYol7yUKjUeBv0BMoZadgGWMwgAd5RqA= Date: Wed, 23 Oct 2019 03:07:36 +0000 Message-ID: References: <1571125801-45773-1-git-send-email-joyce.kong@arm.com> <1571125801-45773-2-git-send-email-joyce.kong@arm.com> <98CBD80474FA8B44BF855DF32C47DC35C60B87@smartserver.smartshare.dk> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: d6d7604d-ea13-44af-a46c-c55e52db4906.0 x-checkrecipientchecked: true Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Joyce.Kong@arm.com; x-originating-ip: [113.29.88.7] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 99c0bf56-8183-4819-6484-08d757662d6e X-MS-TrafficTypeDiagnostic: VI1PR08MB3087:|VI1PR08MB3087:|DBBPR08MB4647: x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true x-ms-oob-tlc-oobclassifiers: OLM:4502;OLM:4502; x-forefront-prvs: 019919A9E4 X-Forefront-Antispam-Report-Untrusted: SFV:NSPM; SFS:(10009020)(4636009)(366004)(39860400002)(136003)(396003)(346002)(376002)(199004)(189003)(13464003)(7696005)(229853002)(8936002)(476003)(256004)(52536014)(14454004)(486006)(9686003)(7416002)(478600001)(71200400001)(76176011)(25786009)(6436002)(99286004)(11346002)(446003)(3846002)(5660300002)(6116002)(26005)(2906002)(71190400001)(81166006)(186003)(81156014)(4326008)(33656002)(76116006)(2501003)(66556008)(66446008)(86362001)(66946007)(64756008)(66476007)(74316002)(8676002)(305945005)(6506007)(55236004)(110136005)(6246003)(316002)(55016002)(7736002)(66066001)(54906003)(102836004); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR08MB3087; H:VI1PR08MB3981.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: rDap3vS9UrGwA+qerpTinlC5FXFNByWqjxtIm5z7LO6fqxnG65jO07hqxsBwumFtunkrV5gAWFJcqb9lC3KzuimdQv3UbFiXEsuAbU3aX5BBSK3O5+TPaA8jKmc/TzLYNx221jX7GL9nw/RtUhTmh3139FdveCrQykLZ2FFUx/ceRGzUvNdgk37OHTy3fyPARdTN8boD+7sIbTtJDIjdUMxt7ecpvb244BQ228TNEbqM1co16sqxkmh/UBNlgnjrUavDDBm4I1wZ8xoYA0mAsXMB8+KD9E76dQYYf+Z63baigriCA7YUmmM1PJ4WuJj4mY325Je0i2ekOUtnUDFWEMvH2PIFMwEkwpuzxII/u1uv1RPmbuOwrGAi/Ql9ZTU4vXrCiu00dwtPdonYXMiIMtCeYbDGvSxoX2ihK0G7ruJqKv0klAVLkI7OosKbl3qe Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3087 Original-Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Joyce.Kong@arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VE1EUR03FT056.eop-EUR03.prod.protection.outlook.com X-Forefront-Antispam-Report: CIP:63.35.35.123; IPV:CAL; SCL:-1; CTRY:IE; EFV:NLI; SFV:NSPM; SFS:(10009020)(4636009)(136003)(376002)(396003)(39860400002)(346002)(1110001)(339900001)(13464003)(199004)(189003)(25786009)(33656002)(55016002)(22756006)(305945005)(70586007)(70206006)(6246003)(5660300002)(107886003)(74316002)(2501003)(105606002)(4326008)(52536014)(7736002)(50466002)(9686003)(66066001)(86362001)(356004)(3846002)(2486003)(229853002)(81166006)(81156014)(8676002)(99286004)(446003)(336012)(11346002)(26826003)(36906005)(316002)(436003)(478600001)(54906003)(126002)(476003)(486006)(110136005)(2906002)(14454004)(23676004)(6506007)(76130400001)(76176011)(7696005)(8936002)(26005)(186003)(47776003)(6116002)(102836004); DIR:OUT; SFP:1101; SCL:1; SRVR:DBBPR08MB4647; H:64aa7808-outbound-1.mta.getcheckrecipient.com; FPR:; SPF:Fail; LANG:en; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; A:1; MX:1; X-MS-Office365-Filtering-Correlation-Id-Prvs: 21a1686f-d4cb-4de5-37ff-08d7576627df NoDisclaimer: True X-Forefront-PRVS: 019919A9E4 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fLrK933/S4L3cZx7EJYcHL8MdtXja2occmeuwZ+XWjdd4HISFVKtyeFXiiq6n+qly2ENtm2N7anWPAj7ryak7du73ycJi1zR0RILzM04MAX6RZjyFvgjbtAbNJPJ3N9T6/D1dPnATF3EP13+rW4OtOjhNZ9rewwe6yd/p11fyfC0Pj2F7oGoVM98YdutNtxXpN4v3PNHUy4IU90iumVtFpmXVmKmyDONESLcaa6r0duvHsfyVVUVN6rYrZ1rR4fGoAOodAX4Q6AfO2DH8aWF0AQofSAMj+ER6GyxvQyGYxhIyu2GSqDl8Z+clsM31kSygNhcIFgbB7BkiMauVNHpTja/zVZE9ppRqGU+Q2kmVb1vpRwqST64r98Yv0NonQ64Xro5bOfDiKhUPT8mgEXIsPiFGe483OIt/4DV4gM1/Kat1y/+yXUuEe3oYOjQpxF+ X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2019 03:07:45.5613 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 99c0bf56-8183-4819-6484-08d757662d6e 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-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4647 Subject: Re: [dpdk-dev] [PATCH v1 1/5] lib/eal: implement the family of rte bitoperation APIs 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" PiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+IEZyb206IGRldiBbbWFpbHRv OmRldi1ib3VuY2VzQGRwZGsub3JnXSBPbiBCZWhhbGYgT2YgSm95Y2UgS29uZw0KPiA+ID4gU2Vu dDogVHVlc2RheSwgT2N0b2JlciAxNSwgMjAxOSA5OjUwIEFNDQo+ID4gPg0KPiA+ID4gVGhlcmUg YXJlIGEgbG90IGZ1bmN0aW9ucyBvZiBiaXQgb3BlcmF0aW9ucyBzY2F0dGVyZWQgYW5kIGR1cGxp Y2F0ZWQNCj4gPiA+IGluIFBNRHMsIGNvbnNvbGlkYXRpbmcgdGhlbSBpbnRvIGEgY29tbW9uIEFQ SSBmYW1pbHkgaXMgbmVjZXNzYXJ5Lg0KPiA+ID4gRnVydGhlcm1vcmUsIHRoZSBiaXQgb3BlcmF0 aW9uIGlzIG1vc3RseSBhcHBsaWVkIHRvIHRoZSBJTyBkZXZpY2VzLA0KPiA+ID4gc28gdXNlIF9f QVRPTUlDX0FDUV9SRUwgdG8gZW5zdXJlIHRoZSBvcmRlcmluZy4NCj4gPg0KPiA+IEdvb2QgaW5p dGlhdGl2ZS4NCj4gPg0KPiA+ID4NCj4gPiA+IFNpZ25lZC1vZmYtYnk6IEpveWNlIEtvbmcgPGpv eWNlLmtvbmdAYXJtLmNvbT4NCj4gPiA+IC0tLQ0KPiA+ID4gIGxpYi9saWJydGVfZWFsL2NvbW1v bi9NYWtlZmlsZSAgICAgICAgICAgICB8ICAxICsNCj4gPiA+ICBsaWIvbGlicnRlX2VhbC9jb21t b24vaW5jbHVkZS9ydGVfYml0b3BzLmggfCA1Ng0KPiA+ID4gKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrDQo+ID4gPiAgbGliL2xpYnJ0ZV9lYWwvY29tbW9uL21lc29uLmJ1aWxkICAgICAg ICAgIHwgIDEgKw0KPiA+ID4gIDMgZmlsZXMgY2hhbmdlZCwgNTggaW5zZXJ0aW9ucygrKQ0KPiA+ ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIvbGlicnRlX2VhbC9jb21tb24vaW5jbHVkZS9ydGVf Yml0b3BzLmgNCj4gPiA+DQo+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9lYWwvY29tbW9u L01ha2VmaWxlDQo+ID4gPiBiL2xpYi9saWJydGVfZWFsL2NvbW1vbi9NYWtlZmlsZSBpbmRleCBh MDBkNGZjLi44NTg2Y2E4IDEwMDY0NA0KPiA+ID4gLS0tIGEvbGliL2xpYnJ0ZV9lYWwvY29tbW9u L01ha2VmaWxlDQo+ID4gPiArKysgYi9saWIvbGlicnRlX2VhbC9jb21tb24vTWFrZWZpbGUNCj4g PiA+IEBAIC0xOCw2ICsxOCw3IEBAIElOQyArPSBydGVfbWFsbG9jLmggcnRlX2tlZXBhbGl2ZS5o IHJ0ZV90aW1lLmgNCj4gPiA+IElOQw0KPiA+ID4gKz0gcnRlX3NlcnZpY2UuaCBydGVfc2Vydmlj ZV9jb21wb25lbnQuaCAgSU5DICs9IHJ0ZV9iaXRtYXAuaA0KPiA+ID4gcnRlX3ZmaW8uaCBydGVf aHlwZXJ2aXNvci5oIHJ0ZV90ZXN0LmggIElOQyArPSBydGVfcmVjaXByb2NhbC5oDQo+ID4gPiBy dGVfZmJhcnJheS5oIHJ0ZV91dWlkLmgNCj4gPiA+ICtJTkMgKz0gcnRlX2JpdG9wcy5oDQo+ID4g Pg0KPiA+ID4gIEdFTkVSSUNfSU5DIDo9IHJ0ZV9hdG9taWMuaCBydGVfYnl0ZW9yZGVyLmggcnRl X2N5Y2xlcy5oDQo+ID4gPiBydGVfcHJlZmV0Y2guaCAgR0VORVJJQ19JTkMgKz0gcnRlX21lbWNw eS5oIHJ0ZV9jcHVmbGFncy5oIGRpZmYNCj4gPiA+IC0tZ2l0IGEvbGliL2xpYnJ0ZV9lYWwvY29t bW9uL2luY2x1ZGUvcnRlX2JpdG9wcy5oDQo+ID4gPiBiL2xpYi9saWJydGVfZWFsL2NvbW1vbi9p bmNsdWRlL3J0ZV9iaXRvcHMuaA0KPiA+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiA+IGlu ZGV4IDAwMDAwMDAuLjRkN2M1YTMNCj4gPiA+IC0tLSAvZGV2L251bGwNCj4gPiA+ICsrKyBiL2xp Yi9saWJydGVfZWFsL2NvbW1vbi9pbmNsdWRlL3J0ZV9iaXRvcHMuaA0KPiA+ID4gQEAgLTAsMCAr MSw1NiBAQA0KPiA+ID4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UN Cj4gPiA+ICsgKiBDb3B5cmlnaHQoYykgMjAxOSBBcm0gQ29ycG9yYXRpb24gICovDQo+ID4gPiAr DQo+ID4gPiArI2lmbmRlZiBfUlRFX0JJVE9QU19IXw0KPiA+ID4gKyNkZWZpbmUgX1JURV9CSVRP UFNfSF8NCj4gPiA+ICsNCj4gPiA+ICsvKioNCj4gPiA+ICsgKiBAZmlsZQ0KPiA+ID4gKyAqIEJp dCBPcGVyYXRpb25zDQo+ID4gPiArICoNCj4gPiA+ICsgKiBUaGlzIGZpbGUgZGVmaW5lcyBhIGdl bmVyaWMgQVBJIGZvciBiaXQgb3BlcmF0aW9ucy4NCj4gPiA+ICsgKi8NCj4gPiA+ICsNCj4gPiA+ ICsjaW5jbHVkZSA8c3RkaW50Lmg+DQo+ID4gPiArI2luY2x1ZGUgPHJ0ZV9hdG9taWMuaD4NCj4g PiA+ICsNCj4gPiA+ICtzdGF0aWMgaW5saW5lIHZvaWQNCj4gPiA+ICtydGVfc2V0X2JpdCh1bnNp Z25lZCBpbnQgbnIsIHVuc2lnbmVkIGxvbmcgKmFkZHIpIHsNCj4gPiA+ICsJX19hdG9taWNfZmV0 Y2hfb3IoYWRkciwgKDFVTCA8PCBuciksIF9fQVRPTUlDX0FDUV9SRUwpOyB9DQo+ID4gPiArDQo+ ID4gPiArc3RhdGljIGlubGluZSB2b2lkDQo+ID4gPiArcnRlX2NsZWFyX2JpdChpbnQgbnIsIHVu c2lnbmVkIGxvbmcgKmFkZHIpIHsNCj4gPiA+ICsJX19hdG9taWNfZmV0Y2hfYW5kKGFkZHIsIH4o MVVMIDw8IG5yKSwgX19BVE9NSUNfQUNRX1JFTCk7IH0NCj4gPiA+ICsNCj4gPiA+ICtzdGF0aWMg aW5saW5lIGludA0KPiA+ID4gK3J0ZV90ZXN0X2JpdChpbnQgbnIsIHVuc2lnbmVkIGxvbmcgKmFk ZHIpIHsNCj4gPiA+ICsJaW50IHJlczsNCj4gPiA+ICsJcnRlX21iKCk7DQo+ID4gPiArCXJlcyA9 ICgoKmFkZHIpICYgKDFVTCA8PCBucikpICE9IDA7DQo+ID4gPiArCXJ0ZV9tYigpOw0KPiA+ID4g Kw0KPiA+ID4gKwlyZXR1cm4gcmVzOw0KPiA+ID4gK30NCj4gPg0KPiA+IFdoeSBkb2VzIHJ0ZV90 ZXN0X2JpdCgpIG5vdCB1c2UgYW55IG9mIHRoZSBfX2F0b21pY194eCBmdW5jdGlvbnMgaW5zdGVh ZD8NCj4gPiBFLmcuOg0KPiA+DQo+ID4gc3RhdGljIGlubGluZSBpbnQNCj4gPiBydGVfdGVzdF9i aXQoaW50IG5yLCB1bnNpZ25lZCBsb25nICphZGRyKSB7DQo+ID4gCXJldHVybiBfX2F0b21pY19s b2FkX24oYWRkciwgX19BVE9NSUNfQUNRVUlSRSk7IH0NCj4gPg0KPiBZb3UgcmUgcmlnaHQsIGl0 J3MgYmV0dGVyIHRvIHVzZSBfX2F0b21pY194eCBoZXJlIHRvIGtlZXAgdGhlIGNvbnNpc3RlbnQg d2l0aA0KPiBvdGhlciBBUElzLg0KPiANCj4gPiA+ICsNCj4gPiA+ICtzdGF0aWMgaW5saW5lIGlu dA0KPiA+ID4gK3J0ZV90ZXN0X2FuZF9zZXRfYml0KGludCBuciwgdW5zaWduZWQgbG9uZyAqYWRk cikgew0KPiA+ID4gKwl1bnNpZ25lZCBsb25nIG1hc2sgPSAoMVVMIDw8IG5yKTsNCj4gPiA+ICsN Cj4gPiA+ICsJcmV0dXJuIF9fYXRvbWljX2ZldGNoX29yKGFkZHIsIG1hc2ssIF9fQVRPTUlDX0FD UV9SRUwpICYNCj4gPiBtYXNrOyB9DQo+ID4gPiArDQo+ID4gPiArc3RhdGljIGlubGluZSBpbnQN Cj4gPiA+ICtydGVfdGVzdF9hbmRfY2xlYXJfYml0KGludCBuciwgdW5zaWduZWQgbG9uZyAqYWRk cikgew0KPiA+ID4gKwl1bnNpZ25lZCBsb25nIG1hc2sgPSAoMVVMIDw8IG5yKTsNCj4gPiA+ICsN Cj4gPiA+ICsJcmV0dXJuIF9fYXRvbWljX2ZldGNoX2FuZChhZGRyLCB+bWFzaywgX19BVE9NSUNf QUNRX1JFTCkgJg0KPiA+IG1hc2s7IH0NCj4gPiA+ICsjZW5kaWYgLyogX1JURV9CSVRPUFNfSF8g Ki8NCj4gPiA+IGRpZmYgLS1naXQgYS9saWIvbGlicnRlX2VhbC9jb21tb24vbWVzb24uYnVpbGQN Cj4gPiA+IGIvbGliL2xpYnJ0ZV9lYWwvY29tbW9uL21lc29uLmJ1aWxkDQo+ID4gPiBpbmRleCAz ODY1NzdjLi5hMjc3Y2RmIDEwMDY0NA0KPiA+ID4gLS0tIGEvbGliL2xpYnJ0ZV9lYWwvY29tbW9u L21lc29uLmJ1aWxkDQo+ID4gPiArKysgYi9saWIvbGlicnRlX2VhbC9jb21tb24vbWVzb24uYnVp bGQNCj4gPiA+IEBAIC01Miw2ICs1Miw3IEBAIGNvbW1vbl9oZWFkZXJzID0gZmlsZXMoDQo+ID4g PiAgCSdpbmNsdWRlL3J0ZV9hbGFybS5oJywNCj4gPiA+ICAJJ2luY2x1ZGUvcnRlX2JyYW5jaF9w cmVkaWN0aW9uLmgnLA0KPiA+ID4gIAknaW5jbHVkZS9ydGVfYnVzLmgnLA0KPiA+ID4gKwknaW5j bHVkZS9ydGVfYml0b3BzLmgnLA0KPiA+ID4gIAknaW5jbHVkZS9ydGVfYml0bWFwLmgnLA0KPiA+ ID4gIAknaW5jbHVkZS9ydGVfY2xhc3MuaCcsDQo+ID4gPiAgCSdpbmNsdWRlL3J0ZV9jb21tb24u aCcsDQo+ID4gPiAtLQ0KPiA+ID4gMi43LjQNCj4gPiA+DQo+ID4NCj4gPiBUaGVzZSBmdW5jdGlv bnMgdXNlIHVuc2lnbmVkIGxvbmcgYXMgdGhlIHR5cGUgb2YgdGhlaXIgdmFsdWUsIGxpa2UNCj4g PiB0aGV5IGRvIGluIHRoZSBQTURzLg0KPiA+DQo+ID4gSG93ZXZlciwgYSBnZW5lcmljIGJpdCBv cGVyYXRpb25zIGxpYnJhcnkgc2hvdWxkIHByZWZlcmFibHkgd29yayB3aXRoDQo+ID4gbXVsdGlw bGUgdHlwZXMsIGxpa2UgdGhlIF9fYXRvbWljX3h4IGZ1bmN0aW9ucy4gT3IgdXNlIGFuIHdlbGwg ZGVmaW5lZA0KPiA+IHVpbnRfTk5fdCB0eXBlLiBPciBoYXZlIGluZGl2aWR1YWxseSBuYW1lZCBm dW5jdGlvbnMgZm9yIGVhY2ggdHlwZSBzaXplLA0KPiBlLmcuDQo+ID4gcnRlX3NldF9iaXRfMzIo KSBhbmQgcnRlX3NldF9iaXRfNjQoKS4NCj4gPg0KPiBHb29kIHN1Z2dlc3Rpb24hIEFuZCB3aWxs IGRvIHRoaXMgaW4gbmV4dCB2ZXJzaW9uLg0KDQpUaGUgUE1EcyB3aGljaCB1c2UgdGhlIGNvbW1v biBBUEkgbm93IGFyZSBhbGwgMzJiaXQgb3BlcmF0aW9uLCBzbyBjaGFuZ2UNCnRoZSBkZWZpbml0 aW9uIHRvIHVpbnRfMzJfdCB0eXBlIGluc3RlYWQgb2YgaW5kaXZpZHVhbGx5IG5hbWluZyBmdW5j dGlvbnMgZm9yDQplYWNoIHR5cGUgc2l6ZS4NCg0K