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 3C839462C2 for ; Wed, 26 Feb 2025 05:55:11 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0F8FB402E0; Wed, 26 Feb 2025 05:55:11 +0100 (CET) Received: from outbound-ip161a.ess.barracuda.com (outbound-ip161a.ess.barracuda.com [209.222.82.30]) by mails.dpdk.org (Postfix) with ESMTP id 10B97402DC for ; Wed, 26 Feb 2025 05:55:09 +0100 (CET) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2169.outbound.protection.outlook.com [104.47.58.169]) by mx-outbound-ea8-37.us-east-2a.ess.aws.cudaops.com (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 26 Feb 2025 04:54:54 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=J/q76V1u3BRvaza4aVNUejoGV/ecdaysSngGNwKJxjquBdhNI3UXIfIZymsoZkYrVsLlUlEZE6t7+i9nct52t7oEWvukgEa70BpFPY4s2nte8DfAd5FKSaBSUEiKFBG+ZkP+IvY7zPEMvsbL+Gh8unyhzih54CrlLG2sXhzDrlIiF7jU1/7jtlxa28AjG+LZemg9dlLfoM3DpQwNt1kixg4Q+0fPgCijIR9oGTdlPd8AqdPVz1raGtSEQcP6IKIbbxNpHtDVXLwSb1N3JnGd9q7vbUo8S97jnH9/k1bRibwbMSqeDr2xncCspAoYNpjesv8pB5Mw7kYHHgxHddlD3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=kClntgp1Loph65nmQ229pNy/Mc+7o+pNanSwXu3GZpM=; b=jn1gd2Q1jOwOadu1Ah1tJFvCvDlzfwTthfatl0EzJIafFs2olhLs/Jl9pgXl8iWNpVyteCvR6M+6nZLJ6jjPt2nnQ8rubZJ9yw/Lc8mklnEQzgGp0DKsLWXM8rR4jrcyFoTmLBExF8lp85Sqtm5cf5tOsy07JktE+4PdsSe1L+3iemM00YfP636gzCNBGF1ZRb6xMHhIeEdEfmAouEOI+dJsBRQIPSaLWW6z0xTWu2+R0DvQ8yR9SUuvic2KCV3vYiGcY6jdu1Azw2QQpoLa5HjhkJAHMaApx6+YHGuyh3E/fFPr1ryQHGxrXj/fCXKsypUfWbieyfRIC05PNC1+vQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mobileum.com; dmarc=pass action=none header.from=mobileum.com; dkim=pass header.d=mobileum.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mobileum.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kClntgp1Loph65nmQ229pNy/Mc+7o+pNanSwXu3GZpM=; b=bNrK8tK4+egbjPt08eD3YegOmez3EJM1B+Uvw497rZvp2uAWfHVgMn/MXVGfO2uUw9xV7BFIUUeRkDiIyhQyfD5/e4GGB5QobBKd2/BzZ57mOOQk4ic4XF2vGTScFOF3IdJJYuls7NvQprHc+Wt36bIrxsIMmEqqhCfDW7Gew6SL2kz7RwHCfWoodtFs1TktxlcBO3/CtZIusXE45cAiUXE3Se2CVYwmKbQnDxcW599TiwrK7tBzCUwQ2EVY17L8cLuzoQHKdW7zlCkpkJj6JMEB6ih7bmJ3eAlD660qQMlq8cE5yXHF4/IPa8IyZFAuE7YuQt57/27MGK33ddoBjQ== Received: from DM4PR14MB4862.namprd14.prod.outlook.com (2603:10b6:5:389::6) by PH7PR14MB5503.namprd14.prod.outlook.com (2603:10b6:510:135::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8466.19; Wed, 26 Feb 2025 04:54:52 +0000 Received: from DM4PR14MB4862.namprd14.prod.outlook.com ([fe80::3428:998c:cff6:a5f3]) by DM4PR14MB4862.namprd14.prod.outlook.com ([fe80::3428:998c:cff6:a5f3%4]) with mapi id 15.20.8489.018; Wed, 26 Feb 2025 04:54:51 +0000 From: Rashi Agarwal To: "users@dpdk.org" Subject: CPU Affinity Not Working in RHEL8 with DPDK 20.05 Thread-Topic: CPU Affinity Not Working in RHEL8 with DPDK 20.05 Thread-Index: AduICQ9le26orZewS8Sudq4JsmrSZA== Date: Wed, 26 Feb 2025 04:54:51 +0000 Message-ID: Accept-Language: en-IN, en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=mobileum.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM4PR14MB4862:EE_|PH7PR14MB5503:EE_ x-ms-office365-filtering-correlation-id: 4874127e-23c8-44f4-3eb7-08dd5621b481 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|10070799003|376014|366016|8096899003|4053099003|38070700018; x-microsoft-antispam-message-info: =?us-ascii?Q?2mHul/IQOpgLJjq9WyVcMgc22vWlY3WKt702Su0/8RAlzcLrN6ROLF8hyrQQ?= =?us-ascii?Q?UadsT8eWZ8z3oEwlrcSziaoJK3kD+/mZOd/D6ldDXPDGhoqyt9eV41H1fMqs?= =?us-ascii?Q?Nt4gGgqU1NMvJWQSc7VsVw2P5ZkG2bjF+xdBNto37DIeVc8oSDV/AOhNJBt5?= =?us-ascii?Q?kduppbUI4LbmG/VoCyAnHbbV3pLQiesIYrSR2IErzyHsm68mqy5iPk0noMln?= =?us-ascii?Q?FNPXkKmFMYNsZgZblnBi3lDESxkF1d3DKhDlNYw+smesC4vrbjdxb9TSvRCJ?= =?us-ascii?Q?N78HTYF+cAh2WIWfeLnHLBWlW4i+4ABXC+W1lWbQ+TIGcStbcMDA3U9e7WBG?= =?us-ascii?Q?S7EOc1umvHlILnD3RH3WzVcWahTWBLNGi/k5SorlKXpdYrEhbd0IkaPqPcvQ?= =?us-ascii?Q?I4FxPz6cU06oiuI8/SFJoiM0fx8ALnpEqhZopF91WyPXA63MZdIn22oSd5V4?= =?us-ascii?Q?5L0kjznYEZl+wjmoykXi3wJHgOmpEmHTpflZVFXQt8ZjG3MjWJ88t+L3KQ8F?= =?us-ascii?Q?1TFs4yNBUy3HLAuHLMovb4kohP9tidg/O0a5w4/t8WVfI9qR3Zb/PJUBVA3H?= =?us-ascii?Q?/Dcbd6xYqw6fUkdJo/nUPLANHsZ5l9qp1B8SfqtrVB2F0Lz67kLJMr7pWxYx?= =?us-ascii?Q?BOj7WJ+jxd8Kz8R7L20PPn2R4WiNHnxjhW0P2Tv3XUKn3VO9qRrTedeF6gC5?= =?us-ascii?Q?gD+7ZFD1VloaEMJ0PYoRMmDEshXPoQ5tzMAnpDrC0dT67YV9XI6RyNfpY2yo?= =?us-ascii?Q?4Yi/OEt0A3xgII31zIoIcuH2stj30IYiyW+yrhlUf8RxaRZYiI2VMHwDhmRB?= =?us-ascii?Q?7dxmPE+ByFIXtDNXD7yZY9g5QKDhmkhAgTEnjieKm1wQkupGQPJBMXfkFnEN?= =?us-ascii?Q?aXHwlj0KXkHtHeaWdcdLOui74drnY+InNrSybbfqEGcq5rhKx30SVD2JUaM+?= =?us-ascii?Q?ajygRoonoshJan7LTIs+7ZVFoeDQCJdbpgouvYIsfzkvG8VZg4RcWNoUVMRs?= =?us-ascii?Q?wSJOrpjhBHSmDM2wSBn8bbWCetXJjO6rujuw1JfyNSZuHhx9XPpKvrS4Gq3i?= =?us-ascii?Q?r9i1AyYHgbjIAFzUiELejbbuYN5r96C6EKQCTTxPISVdz3Kr4Mmmlkw/Lhou?= =?us-ascii?Q?FD1HYoeKiRkq13DpYAVzfHfHxtpDnf0gldaYXw9KfjPz/kmdvU7+qt/JGVHU?= =?us-ascii?Q?G12g+zc5VSOth46FPzFCPQjofDUrC9ep2q4dPjhOY+G+YtFc0oO0nIDCUgg3?= =?us-ascii?Q?jYE2J3VsqhGAscVH8DAu+wRVyxg4bE+NpxLeuOXYMSkhmesj7Tit+cUW94hk?= =?us-ascii?Q?qRBPqF9KZgbCC8QQ3+M53TpUjIUt69tm9WbMb9dF4y1Yv1s65F1blUY7FH33?= =?us-ascii?Q?LhDa0oYYTIaef7dyH5KHoM9Za8p+qc41Peq4EOq+FA9D7IsYxlVi2sm654o/?= =?us-ascii?Q?f70J4Yiu99qre8c4v7uf6U3bvaYrIZir?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR14MB4862.namprd14.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(10070799003)(376014)(366016)(8096899003)(4053099003)(38070700018); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?NNRqgcgmNE8j/XbgMhcmQ2GZydANouC4OVLFqnoB/mhNGtBm/1QnUiE2++8e?= =?us-ascii?Q?6jbHxGXg3FeyPCtPUIH1K9zsV2PPvzNJCOqkG1LSvoMkFfs5A0cKz7d0LEeq?= =?us-ascii?Q?dr4m/jK6pSxG2r9oNkHfjUkxcIYmbB8j3BcgslPBztT5csbF8E89EhL35FJW?= =?us-ascii?Q?Mbnzi4sP3WxHCPpYRB5p6tIcAQZToPUDLhLlEhOxotNhaeAUtXYJVkTONFBX?= =?us-ascii?Q?xaYJdrTb/bhqV9v88PQL8KJexkI8cQZV+JVkbCZBeKRZ7qrCIkPf++PrXid7?= =?us-ascii?Q?GEdxD+zZY3yB8s0NfZlOwexuPzvkEukL4+hEeS8NE4Y5jm3wls3pZGK3NqSR?= =?us-ascii?Q?fMqoq+2XXcCtS0hrAnbEumRn4rEgIwn0e4WfgIDDEApB7bZAwvo+kYg2WkZr?= =?us-ascii?Q?XcmG9uxBtleTOJlXXLfgbAgJIBxj6OviIxx1qfPJfHXPsv6ctFngsOcL/xXR?= =?us-ascii?Q?YdFYtRfUUpYWySdmkF3/f9tKFjWpiDMmP1QpPf7qQkUIwZmrxHhQUoLW473H?= =?us-ascii?Q?UbivQmaB07YOg4NqSoWVXiZDsCZyxVLYbboVUOjPHOn9zTM2oRw7cdipW6SQ?= =?us-ascii?Q?pj1cYc+i8CUBLyV6NXMdhrhW3HHDpJcluSdaxyRIKJq1OMrj5RQ4Xa469mxv?= =?us-ascii?Q?0KQ5h2Bw+fnQPqLnDQtEbuBNyoJXwpydvlU87Xz0ERxJFiSv0HT2Vi95QBPd?= =?us-ascii?Q?qq15bsOg6mr6102HzYyIDKHqN5xhzir/WpCCBLlbBukQeZ3yMrVExeK47UxD?= =?us-ascii?Q?JNPgO6LHOrNPosom1V1tNiZefiwuUD0oRC766UkZIDinjoyhiGta4YYqmvkF?= =?us-ascii?Q?2mIQHWD3yEnFo12Tdl81RBJ7vrNUGJiQFL1yb7Kc13um1+IEMIxbFw4eHRpB?= =?us-ascii?Q?4zJy0JHnDj4yuHbQvEWpmb0d5qx/NbtDXF9MdgSAqHyJWYmCYTiVMobCCFs4?= =?us-ascii?Q?N17PQpM3VvwZXtUk5kBfwvexZ8NxIZt74j9J6j3pBHwbXr/zKPR7q4XQtCYM?= =?us-ascii?Q?DNAQgwWDGY/YbXP+FpjcUEps1tYac+lvou8D6KPe0MXNbRGOq6hAHHcANDNY?= =?us-ascii?Q?u0OY9x394009b3h0vrqgVXtKM6k3V66xL7z+Kul2Hq4yXBJ7v8IE7geuqJnP?= =?us-ascii?Q?FgYu7Q1Och6TrRfCtFn0IDGGntti3QlndkNN9qTbcd9Qw++lpz/42IAtSDBJ?= =?us-ascii?Q?yz0z8GF4Bni8mgVd6n8jEEAkq00Guk14G50NZJMyPL7N7io7cW+8JKa4LKpW?= =?us-ascii?Q?K1HpCJbi9TUxyUcWNFe+cx1XDIpm9rO42DojTG+3zxOe0I1IsTLA0vJ1ldXm?= =?us-ascii?Q?nAS6Q1c9cg582ei2RaPtCH8fWQJnB38sBsnOuYNHT3LgmZF3vjux9BGaHdCO?= =?us-ascii?Q?FHnchsyKd+RMQnSwYUlkcfSXvwMEOuZ7NmWFh0i5gtBiGgcurRp+3AOOvDUR?= =?us-ascii?Q?oOm3c6WRSov2dRekeXmgyqmIIcejv3dI1P1dWeaERsFlnuI/QXGfxNUm6RpH?= =?us-ascii?Q?uJMoWU3/vXXMxGO7mR2j95rbusi5EcMFZSmiI7thwh0Ll39k925AQ9tPkiUn?= =?us-ascii?Q?ErTMeYW7cCoMd1Q3Wztu8J+9MUu1EdqZ/UfYeGdp/uQy4IAV2SZJBHt0Z13n?= =?us-ascii?Q?LX7Ah3qGLIQGG5+NYQXuRzZ2ierDzJnHaFB98y6XIjyw?= Content-Type: multipart/mixed; boundary="_004_DM4PR14MB4862B3C1ABF3642E28E916B18DC22DM4PR14MB4862namp_" MIME-Version: 1.0 X-OriginatorOrg: mobileum.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR14MB4862.namprd14.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4874127e-23c8-44f4-3eb7-08dd5621b481 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Feb 2025 04:54:51.8657 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 9443e4d1-e994-48df-881d-ee86b584660a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: IsP0QFBRu27XN1EMYB5E1nE8cJQd6IvID8I6Sy+Vz6OKyDpfRO7nrE/3sCIPT8HgI/e3sH9fNekPGLx5w1drykgs3ASctfsha9Lb8vPnoyE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR14MB5503 X-BESS-ID: 1740545694-102085-10049-8688-1 X-BESS-VER: 2019.3_20250220.1626 X-BESS-Apparent-Source-IP: 104.47.58.169 X-BESS-Parts: H4sIAAAAAAACA02OOw7DMAxD7+I5g6xIlpSrFB3kH7IUHeqhQJG710OCdiEIEo /g7RPae4QtjKlLeL7CFiOm6fYZSnVv7t2AI3SvUFGlc6FsQCYYjuXi9/G4eDCDc4CNtN WyJjEGrUTeLCFSwpLJHP4GfgdmrScPBVtKipJWVp2a10xMotyhSJRw3L/fHX45wgAAAA == X-BESS-Outbound-Spam-Score: 0.00 X-BESS-Outbound-Spam-Report: Code version 3.2, rules version 3.2.2.262769 [from cloudscan12-137.us-east-2a.ess.aws.cudaops.com] Rule breakdown below pts rule name description ---- ---------------------- -------------------------------- 0.00 HTML_MESSAGE BODY: HTML included in message 0.00 BSF_BESS_OUTBOUND META: BESS Outbound X-BESS-Outbound-Spam-Status: SCORE=0.00 using account:ESS43308 scores of KILL_LEVEL=7.0 tests=HTML_MESSAGE, BSF_BESS_OUTBOUND X-BESS-BRTS-Status: 1 X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: users-bounces@dpdk.org --_004_DM4PR14MB4862B3C1ABF3642E28E916B18DC22DM4PR14MB4862namp_ Content-Type: multipart/alternative; boundary="_000_DM4PR14MB4862B3C1ABF3642E28E916B18DC22DM4PR14MB4862namp_" --_000_DM4PR14MB4862B3C1ABF3642E28E916B18DC22DM4PR14MB4862namp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi DPDK Community, I am facing an issue where CPU affinity is not working as expected in RHEL8= with DPDK 20.05, while it works fine in RHEL7. Problem Statement: * When running my program with numactl -C4,5 ./testRTE on RHEL7, the= worker threads correctly bind to the assigned cores. * However, on RHEL8, the worker threads always bind to core 1, ignor= ing the specified CPU set. Environment Details: * DPDK Version: 20.05.0 * OS: RHEL8 (Issue) | RHEL7 (Works Fine) * CPU Affinity Tool: numactl -C Sample Program: Attached Observations: * In RHEL7, worker threads correctly bind to cores specified using numa= ctl -C. * In RHEL8, the threads always bind to core 1, ignoring the CPU set. * Could DPDK be overriding the CPU affinity in RHEL8? Questions: 1. Is there any known change in CPU affinity handling between RHEL7 and = RHEL8 affecting DPDK? 2. Does DPDK override thread affinity when rte_eal_init() is called? 3. Is there any workaround or EAL flag to ensure that CPU affinity is re= spected? Any insights or suggestions would be greatly appreciated. Thanks, Rashi Agarwal. --_000_DM4PR14MB4862B3C1ABF3642E28E916B18DC22DM4PR14MB4862namp_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

Hi DPDK Community,

I am facing an issue where CPU affinity is not working as expected in RHEL8 with DPDK 20.05, while it works fine in RHEL7.

Problem Statement:

      ·  When running= my program with numactl -C4,5 = ./testRTE on RHEL7, the worker threads correctly bind to the assigned cores.=

      ·  However, on RHEL8, the worker threads always bind to core 1, ignoring the= specified CPU set.

 

Environment Details:

  • DPDK Versi= on: 20.05.0
  • OS:= RHEL8 (I= ssue) | RHEL7 (Works Fine)
  • CPU Affini= ty Tool: numactl -C
  • <= /ul>

    Sample Program:  Attached

    Observations:

    • In RHEL7, worker threads correctly bind to cores specified using numactl -C.
    • =
    • In RHEL8, the threads always bind to core 1, ignoring the CPU set.
    • Could DPDK be= overriding the CPU affinity in RHEL8?

    Questions:

    1. Is there any = known change in CPU affinity handling between RHEL7 and RHEL8 affecting DPD= K?
    2. Does DPDK ove= rride thread affinity when rte_eal_init() is called?
    3. Is there any = workaround or EAL flag to ensure that CPU affinity is respected?=

    Any = insights or suggestions would be greatly appreciated.

    Thanks,

    Rashi Agarwal.

--_000_DM4PR14MB4862B3C1ABF3642E28E916B18DC22DM4PR14MB4862namp_-- --_004_DM4PR14MB4862B3C1ABF3642E28E916B18DC22DM4PR14MB4862namp_ Content-Type: text/plain; name="dpdk_test.cpp" Content-Description: dpdk_test.cpp Content-Disposition: attachment; filename="dpdk_test.cpp"; size=2469; creation-date="Wed, 26 Feb 2025 04:49:47 GMT"; modification-date="Wed, 26 Feb 2025 04:54:50 GMT" Content-Transfer-Encoding: base64 I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSAic3RkbGliLmgiCiNpbmNsdWRlIDxmc3RyZWFt PgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSAidW5pc3RkLmgiCiNpbmNsdWRlICJ0aW1lLmgi CiNpbmNsdWRlICJtYXRoLmgiCiNpbmNsdWRlIDxwdGhyZWFkLmg+CiNpbmNsdWRlIDxjc2lnbmFs PgoKI2luY2x1ZGUgPHJ0ZV9jb21tb24uaD4KI2luY2x1ZGUgPHJ0ZV9lYWwuaD4KI2luY2x1ZGUg PHJ0ZV9yaW5nLmg+CiNpbmNsdWRlIDxydGVfcmluZ19jb3JlLmg+CgoKdXNpbmcgbmFtZXNwYWNl IHN0ZDsKaW50IGtlZXBSdW5uaW5nPTE7Cgp2b2lkIHNpZ25hbF9oYW5kbGVyKGludCBzaWdudW0p IAp7CiAgICBzdGQ6OmNvdXQgPDwgIlxuU2lnbmFsICgiIDw8IHNpZ251bSA8PCAiKSByZWNlaXZl ZC4gRXhpdGluZy4uLiIgPDwgc3RkOjplbmRsOwogICAga2VlcFJ1bm5pbmcgPSAwOwp9Cgp2b2lk IGluaXRfZHBkaygpCnsKICAgIC8qIERQREsgaW5pdGlhbGl6YXRpb24gKi8KICAgIGludCBpbnN0 SWQgPSAxMjsKICAgIGNoYXIgcHJvY05hbWVbNTBdID0gezB9IDsKICAgIGNoYXIgZmlsZVByZWZp eFs1MF0gPSB7MH0gOwogICAgc3ByaW50Zihwcm9jTmFtZSwgImlwcC1kcGRrLW9wdC0lZCIsIGlu c3RJZCkgOwogICAgc3ByaW50ZihmaWxlUHJlZml4LCAiLS1maWxlLXByZWZpeD1pcHAtaW5zdC0l ZCIsIGluc3RJZCkgOwogICAgaW50IGRwZGtfYXJnYyA9IDg7IGNoYXIgKmRwZGtfYXJndltdID0g eyBwcm9jTmFtZSwgIi1jIiwgIjB4MiIsICItLW5vLWh1Z2UiLCBmaWxlUHJlZml4ICwiLW0iLCI2 NCIgLCAiLS1sb2ctbGV2ZWw9ZWFsLDgifTsKCiAgICBpbnQgcmV0ID0gcnRlX2VhbF9pbml0KGRw ZGtfYXJnYywgZHBka19hcmd2KTsKCWlmKHJldCA8IDApCiAgICB7CiAgICAgICAgY291dCA8PCAi RFBESyBpbml0aWFsaXphdGlvbjogcnRlX2VhbF9pbml0IGZhaWxlZCB3aXRoIGNvZGUgIjw8IHJl dCA8PCBlbmRsOwogICAgICAgIHJldHVybiAgOwogICAgfQoJY291dCA8PCAiXG5cblxuIjsKCn0K CnZvaWQgaW5pdF9yaW5nKCkKewoJZm9yIChpbnQgaT0wOyBpPDI1OyBpKyspCgl7CgkJaW50IHNp emUgPSBwb3coMixpKSA7CgkJY291dCA8PCBpKzEgPDwgIiAiIDw8IHNpemUgLTEgPDwgZW5kbDsg Ly8iICI8PCBydGVfcmluZ19nZXRfbWVtc2l6ZShzaXplKSA8PCBlbmRsIDsKCQljaGFyIG5hbWUg WzUwXTsKCQlzcHJpbnRmIChuYW1lLCJ0ZXN0X3JpbmctJWQiLGkpOwoJCXJ0ZV9yaW5nX2NyZWF0 ZShuYW1lLCBzaXplLTEsIDAsIFJJTkdfRl9FWEFDVF9TWik7Cgl9Cn0KCnN0YXRpYyB2b2lkKiB0 aHJlYWRfZnVuYzEodm9pZCAqYXJnKQp7Cgl3aGlsZShrZWVwUnVubmluZykKCXsKCQlwcmludGYo InRoaXMgaXMgdGhyZWFkMVxuIik7CgkJc2xlZXAoMTAwKTsKCX0KCXJldHVybiBOVUxMOwp9Cgpz dGF0aWMgdm9pZCogdGhyZWFkX2Z1bmMyKHZvaWQgKmFyZykKewoJd2hpbGUoa2VlcFJ1bm5pbmcp Cgl7CgkJcHJpbnRmKCJ0aGlzIGlzIHRocmVhZDJcbiIpOwoJCXNsZWVwKDEwMCk7Cgl9CglyZXR1 cm4gTlVMTDsKfQoKaW50IG1haW4oKSB7CglzdGQ6OmNvdXQgPDwgIiMjIyMjIyMjIyMjIyMjIyMj IyMjIyBTdGFydGluZyB0aGUgdGVzdCAjIyMjIyMjIyMjIyMjIyMjICIgPDwgc3RkOjplbmRsOwoK ICAgIHN0cnVjdCBzaWdhY3Rpb24gc2lnX2FjdGlvbjsKICAgIHNpZ19hY3Rpb24uc2FfaGFuZGxl ciA9IHNpZ25hbF9oYW5kbGVyOwogICAgc2lnZW1wdHlzZXQoJnNpZ19hY3Rpb24uc2FfbWFzayk7 CiAgICBzaWdfYWN0aW9uLnNhX2ZsYWdzID0gMDsKICAgIHNpZ2FjdGlvbihTSUdJTlQsICZzaWdf YWN0aW9uLCBOVUxMKTsKCglpbml0X2RwZGsoKTsKCgkvLyB3b3JrZXIgdGhyZWFkcyBpbml0aWFs aXp0aW9uCiAgICBwdGhyZWFkX3QgdGhyZWFkX2lkMSwgdGhyZWFkX2lkMjsKICAgIHB0aHJlYWRf YXR0cl90IHRocmVhZF9hdHRyOwogICAgcHRocmVhZF9hdHRyX2luaXQoJnRocmVhZF9hdHRyKTsK CiAgICBwdGhyZWFkX2NyZWF0ZSgmdGhyZWFkX2lkMSwgJnRocmVhZF9hdHRyLCAmdGhyZWFkX2Z1 bmMxLE5VTEwpOwogICAgcHRocmVhZF9zZXRuYW1lX25wKHRocmVhZF9pZDEsICJXb3JrZXJUaHJl YWQxIik7CiAgICBwdGhyZWFkX2NyZWF0ZSgmdGhyZWFkX2lkMiwgJnRocmVhZF9hdHRyLCAmdGhy ZWFkX2Z1bmMyLE5VTEwpOwogICAgcHRocmVhZF9zZXRuYW1lX25wKHRocmVhZF9pZDIsICJXb3Jr ZXJUaHJlYWQyIik7CgogICAgd2hpbGUgKGtlZXBSdW5uaW5nKSB7CiAgICAgICAgcGF1c2UoKTsg IAogICAgfQoKICAgIHN0ZDo6Y291dCA8PCAiIyMjIyMjIyMjIyMjIyMjIyMjIyMjIEVkbmluZyB0 aGUgdGVzdCAjIyMjIyMjIyMjIyMjIyMjICIgPDwgc3RkOjplbmRsOwogICAgcHRocmVhZF9qb2lu KHRocmVhZF9pZDEsIE5VTEwpOwogICAgcHRocmVhZF9qb2luKHRocmVhZF9pZDIsIE5VTEwpOwoK CiAgICByZXR1cm4gMDsKfQoK --_004_DM4PR14MB4862B3C1ABF3642E28E916B18DC22DM4PR14MB4862namp_--