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 19246A0A0B; Mon, 1 Feb 2021 09:37:35 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 92A5816064D; Mon, 1 Feb 2021 09:37:34 +0100 (CET) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2071.outbound.protection.outlook.com [40.107.20.71]) by mails.dpdk.org (Postfix) with ESMTP id 5494440693 for ; Mon, 1 Feb 2021 09:37:33 +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=v9eGTMZ4zch55kuAPSAy97Hn/rf0OFDn0exxjSsuvXA=; b=P144ejueErQgBABnrl4YaQjloNc7Ea1SubLPX7psW5TTy9JI9vjbYSWkon/FpDK91NiTEDtX9eqyyYfOrEs+t5cNBJrASjsvg4559o3WV2SlLIE3F1XLTu/EKnW99WpzlDF724/02xoyib5YwZnrIQFw28+pdHKYFU8ovw4Ixmk= Received: from AM5PR0701CA0061.eurprd07.prod.outlook.com (2603:10a6:203:2::23) by AM0PR08MB5393.eurprd08.prod.outlook.com (2603:10a6:208:18c::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3805.20; Mon, 1 Feb 2021 08:37:28 +0000 Received: from VE1EUR03FT022.eop-EUR03.prod.protection.outlook.com (2603:10a6:203:2:cafe::4b) by AM5PR0701CA0061.outlook.office365.com (2603:10a6:203:2::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3825.13 via Frontend Transport; Mon, 1 Feb 2021 08:37:28 +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 VE1EUR03FT022.mail.protection.outlook.com (10.152.18.64) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3784.11 via Frontend Transport; Mon, 1 Feb 2021 08:37:28 +0000 Received: ("Tessian outbound f362b81824dc:v71"); Mon, 01 Feb 2021 08:37:27 +0000 X-CR-MTA-TID: 64aa7808 Received: from d5facbcebddd.3 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 085EFBC3-3567-496E-A20F-DDA0BD565EDA.1; Mon, 01 Feb 2021 08:37:22 +0000 Received: from EUR03-AM5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d5facbcebddd.3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 01 Feb 2021 08:37:22 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Mk30UgpLOqcs92Rtn4dkY+OmtPxB63qw5rAKRXYpj1srSWwT3at+D2HIzFMbcWs337cGY4ldykjMGTeOafZaxhw0H7VjrAo7j3ciTxSICOg4/Q9n75uPV6N7xot4/NloEHeAlNTvs4dQR1K8BsDQdf97sjo8E/pKlyN047OsS8PIyRSscnqFiTaW6jBKolKUkZ3HDTsgBC9+x6EZ+fF1cbA+Uad0Px+BfsWzxQJ2psSSU2ZclCGXgxgUav9iHKWQJMhhcJDOcbhXU8EZEm9I1pi0/5mMJlG5o86DLoBK3MikmJ1yS5m+xfpqCsnR3VtptVTl6HG/+kjEHr0ExCMQCQ== 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=v9eGTMZ4zch55kuAPSAy97Hn/rf0OFDn0exxjSsuvXA=; b=PgbA1MP9FnWYJpYMgT6ZW7yxFsRap7ZzGydebE7R3DQ2KeQK1kzmIPQrnqR5iC+8z7qNlLNLl8r2x+pHOBxp2kM0lIx76g0+K6PfeHJOPr407BYFDwOBB7QXlHLNNC/2bgIEg/B0I3g69S/uj7WQHW3DwcU64pkG1Qh8n0YBgBG5sOgi+vDaj2nGcYCYDNSH78rzM+lX5PJFngk6gUtpwlOK8IwUbvV9PWEnuyiIUIvy6UL2Hjbfns4pMflv0TNwV84aMU8+aBtO5Cc7pPaqRlZ90p5MGd2qGOFT2id2VlW+lp1YP3Hfp5II9I2UEP/RKsx2tdR7/xmzFZrTq2wvYw== 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=v9eGTMZ4zch55kuAPSAy97Hn/rf0OFDn0exxjSsuvXA=; b=P144ejueErQgBABnrl4YaQjloNc7Ea1SubLPX7psW5TTy9JI9vjbYSWkon/FpDK91NiTEDtX9eqyyYfOrEs+t5cNBJrASjsvg4559o3WV2SlLIE3F1XLTu/EKnW99WpzlDF724/02xoyib5YwZnrIQFw28+pdHKYFU8ovw4Ixmk= Received: from DBBPR08MB4411.eurprd08.prod.outlook.com (2603:10a6:10:cb::17) by DBBPR08MB6105.eurprd08.prod.outlook.com (2603:10a6:10:20d::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3805.17; Mon, 1 Feb 2021 08:37:21 +0000 Received: from DBBPR08MB4411.eurprd08.prod.outlook.com ([fe80::19c2:8f5f:aabb:16fc]) by DBBPR08MB4411.eurprd08.prod.outlook.com ([fe80::19c2:8f5f:aabb:16fc%7]) with mapi id 15.20.3805.027; Mon, 1 Feb 2021 08:37:21 +0000 From: Feifei Wang To: Honnappa Nagarahalli , Stephen Hemminger CC: "Ananyev, Konstantin" , "dev@dpdk.org" , nd , Ruifeng Wang , nd , nd Thread-Topic: [dpdk-dev] [PATCH v1 1/2] app/test: remove unnecessary barriers for ring stress test Thread-Index: AQHW2CwVC7uPydDODU+rAAzbonoGdaoDD3UAgDlAqQCAAQeKAIAA0qUAgAAcNYCAAVZuAIADh09A Date: Mon, 1 Feb 2021 08:37:20 +0000 Message-ID: References: <20201222063054.44429-1-feifei.wang2@arm.com> <20201222063054.44429-2-feifei.wang2@arm.com> <20210128205847.509412db@hermes.local> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 9436B6D4D0635A459E9E507C25E200C1.0 x-checkrecipientchecked: true Authentication-Results-Original: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com; x-originating-ip: [203.126.0.112] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 23e3f708-e555-46b7-0e8d-08d8c68c9bd5 x-ms-traffictypediagnostic: DBBPR08MB6105:|AM0PR08MB5393: 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-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: t7WlRMh75yA3N68RZmW8l/0LL48P1K/QzBc7W9S3x8vvlMSWDwNG9geBKMX6c9meO7/QjwuBrNxOpRmWjcLufn5fO9wagkutbywgMBmMhVYscRHSqtASWT6SzqZ6vvOXoECa+JSPKrKaMbzOizkOi+9Wz2CoL4qMa7cuWKoMTU/Tpo7LqqRm5ZtClhyqiI58nuvtkqTc+O4Goky0FR6O12R/TijScZ6MR1rnhsWsBBNQxaL1lNbzMRiPtv/D6Jx3wBa6tko3HDKMXxk++zeWyRhUwDff6WNInC5qztAscf3CIXq2JW7f5DlK0KD5PktyYFMAqlCpBp+KWYsUoXAQzv6JZvmHS6596//kL3oSY5D9ZEZq5B7CnHJJD0RWRt/43FUZQC8T7jAPRoeEMwzYXS5uv/GfC2B/FfmrRqYY2sYkgt3N0vhKLQxgRnYKjG20961TbtG0ihPlw2drZb2fOM/MHzoNrQbVRZ91DzUcS8lgEnB57UhI9ZUvsdMMQ/UdOIqY82VFCwWrzFbfah+v1A== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBBPR08MB4411.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(39860400002)(396003)(346002)(366004)(376002)(136003)(2906002)(86362001)(6506007)(478600001)(186003)(26005)(5660300002)(76116006)(4326008)(64756008)(66446008)(66556008)(66476007)(66946007)(52536014)(224303003)(55016002)(316002)(71200400001)(8936002)(54906003)(110136005)(83380400001)(33656002)(9686003)(7696005); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?utf-8?B?ZUp2dXdWc1JBN1lNUlBGZGJQazlVQkhZTDg5U2tablBoNFhEUGQ1TjZ1OU1l?= =?utf-8?B?dW0zYW16MzVNZzJEUU5Zdmx3NStESStaOWFXVzhIaWxYL0ZhMUJFVkJmOTFZ?= =?utf-8?B?bEV6Q3RNMytnYStUTmFzQkNhMkVRV2lKcjhocmtOemNBWFVqb0pjaGErcUc4?= =?utf-8?B?MTJOOTNTaE1nKzNFNDU4YW9pVnlwS1YxVVo4SC9GaDNLQitnWXpLSjBwRVpG?= =?utf-8?B?aW1jdnltVlBQM2g0SFZGZFM0TGpjaU9Na1FCMURSYzlmQ2V5L3gxYmNNT3Mr?= =?utf-8?B?OWFKNW1PM1ppTDU5QUNwKzdZN1Q3SXc3NEZReVVjYkRXN3JFK3BnekdYaHpI?= =?utf-8?B?dEd0NWp2LzY0QUdJU2MyNWRRZVc1Yk5YeUR2SFQ4VW9pOUZ5UERMbDFxMjhJ?= =?utf-8?B?TUJRanFEa05yY04zTWRYZTlMc295cTRKMjUwMk04QkUvaEljM2FUL0l6MHNP?= =?utf-8?B?MDBRcm9VeDdFRmlpT1IvbXVlRVVBR1FiQy9HeU5lVVdMMEFiaGdZTVJSeEwz?= =?utf-8?B?R0dOREhBbjZNQ2d0RG9wSDhId0N4M1dGNU9GUDM4SC84cFVtT2NGeGhsekts?= =?utf-8?B?blFSaGpiUFlaNjB3cDgzYnU0eGtzR052ZFkrWGtRZUdEd3hJVTVsQ3lkdSt2?= =?utf-8?B?bmN1TURVeFAwc1Rxa29hdXRSUHdzdlFJc2g3Um8ra3hXSDErb0FlU1JKdHND?= =?utf-8?B?My9KSmtKUU50WUo3cmdBY21wbkVuUFk2MDNBTVhxMEhkSks2K1NQVjNad09L?= =?utf-8?B?MmZFYjNoMmx0VVdnbm5pTUEyZTE1SzF6c3Z5MzJBejl6Q2pHZVlVR0d0WC83?= =?utf-8?B?WG44KzE5QnY5MHlvWDM5aDZDWnAwQmdLQ3RSRU80K3NBK0dyRXA1UCs5SkYr?= =?utf-8?B?WXhWVXdTelQxSlBWV1dLR1RuRmlaN2hMdmdzaVBHVk1INWdOU0NYdDBaNVhW?= =?utf-8?B?eUdMMkVyWDNveHBrNElKMWVhRC80em93d2tHbFViejNqTUJvYXJJL1NVZjMx?= =?utf-8?B?YWhPd1N0OEVEa1FrL2QyaFVkcEVWNDNrNkZBNlZZNnJ6bXY2NHpJSW12dytY?= =?utf-8?B?elVjNHVGNERWUTZVZXE2bXhIeTFFNDdIWjR2TzljQ0UyNmEyblQ1MlZNR1l6?= =?utf-8?B?UE14TzZFdG15R0xjOU9RZ3h1Z1pkQ2J6VlVzSkk5LzU1YSt5SkFlbjVRUmpH?= =?utf-8?B?N3N2U0lSclJCS3VycWc3dTNTay9OclhFVnk5UHNHV1dRb0cyTDhITkVyK2hF?= =?utf-8?B?alVhaktvY29SSDVqMk1Ealh1ZHEwaEp0K3VUY0phSGsra3FtWFowTkk0ak5o?= =?utf-8?B?c1FsUUFMS0orRStOZXlGRDFFM1NGa2ZzNTBtNkJ6S1ptTERESzQ2djlZMytS?= =?utf-8?B?M2ZGK25pWWVzVHJUTzFsQUNxRm5jWTd6VmE1Vlg4bkVhbUVlSEEweE95V0FK?= =?utf-8?Q?x/e1Kuo2?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6105 Original-Authentication-Results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VE1EUR03FT022.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 61065c8b-bc1d-431c-e14c-08d8c68c976c X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fZ/LRUfcvreKuggi2WPOs3wOrOBUTOrxNxIcq0lxA6sDRA9kqDLMGs3oN4zLznxReM7AHU+U/OabF6Eu4ACMTfjT9DCullmLaC5qzXyuGcwEaKfoGd265AoXGFhFdZFv7uvA05RsmauHj5AOkPBOy0X5hx2GaAdeQCeA1+4/1cNwBHfekWF0m02P0/GQAComkY4vWCKPdtUoVeRXnDa3E+GOwNJamjHicJxBQREoAud49cH1IXJOgHE91zoIZf2C9FY7sUDpRxiT31oh2WTz6SPNt/7pXhm5QtstIjgQtV/WYPtv+pbwXyRaQZTY1+/df/I6O8QGOIbxaUgr5PA3WdJ+ItPl/AKxqTyvzVEci1cM8VO95S0cAVNPicAzzz16epvzzV1VvB4ZND8I4O3KQE7o0HzlR3AQAldeErqtflAub7tc39ve2xgyt9H9wkMftr+vKnCEoiNpEJIYOqVnGe6KeUQJ9tWF3ax5IEVPO2bzlI76f3YWnO8BgFVFHGlM8S2EOZIUR/2hbqh9NPWVB22P5TMfG/riXS1FHz5n/EEXvQSzpHNyrH+JPi/yuNvZJP8TmKk9/M3WzdAtVhz/uA== 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)(396003)(346002)(376002)(136003)(39860400002)(46966006)(5660300002)(316002)(8936002)(478600001)(9686003)(26005)(52536014)(55016002)(6506007)(33656002)(336012)(86362001)(186003)(82740400003)(224303003)(54906003)(82310400003)(4326008)(7696005)(81166007)(83380400001)(70586007)(356005)(2906002)(70206006)(47076005)(110136005); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Feb 2021 08:37:28.3328 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 23e3f708-e555-46b7-0e8d-08d8c68c9bd5 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: VE1EUR03FT022.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5393 Subject: [dpdk-dev] =?utf-8?b?5Zue5aSNOiAgW1BBVENIIHYxIDEvMl0gYXBwL3Rl?= =?utf-8?q?st=3A_remove_unnecessary_barriers_for_ring_stress_test?= 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" SGksIEhvbm5hcHBhLCBLb25zdGFudGluIGFuZCBTdGVwaGVuDQoNClRoYW5rcyB2ZXJ5IG11Y2gg Zm9yIHlvdXIgYXR0ZW50aW9uIG9mIHRoaXMgcGF0Y2guIEJhc2VkIG9uIHlvdXIgb3Bpbmlvbiwg UnVpZmVuZyBhbmQgSSBkaXNjdXNzIGFib3V0IHRoaXMgYW5kIG1ha2UgYSBzdW1tYXJ577yaDQpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xw0KCQkJCQkJbWFpbiB0aHJlYWQJCQkJCQl3b3JrZXIgdGhyZWFkDQpydGVfZWFsX3JlbW90ZV9s YXVuY2g6CQkJCQkJCQkJCQkJCQkJWyBIb25uYXBwYSBmb2N1cyBdDQoJCQkJCQkJCQkJCQkJCQkJ CQlUbyBlbnN1cmUgZiBjYW4gbG9hZCBjb3JyZWN0IGFyZywNCgkJCQkJCQkJCQkJCQkJCQkJCWFy ZyBzdG9yZSBzaG91bGQgYmVmb3JlIGYNCgkJCQkJCWxjb3JlX2NvbmZpZ1t3b3JrZXJfaWRdLmYg PSBmOw0KCQkJCQkJbGNvcmVfY29uZmlnW3dvcmtlcl9pZF0uYXJnID0gYXJnOw0KCQkJCQkJd21i KCk/IG9yIHN0b3JlLXJlbGFzZSBvbiBmPw0KCQkJCQkJDQoJCQkJCQkJCQkJZWFsX3RocmVhZF9s b29wOg0KCQkJCQkJcGlwZWxpbmVfY29tbXVuaWNhdGlvbgktLS0tLS0tLS0tLS0tLS0tLS0tLS0t PglwaXBlbGluZV9jb21tdW5pY2F0aW9uDQoJCQkJCQkJCQkJCQkJaWYgKGxjb3JlX2NvbmZpZ1ts Y29yZV9pZF0uZiA9PSBOVUxMKQ0KCQkJCQkJCQkJCQkJCXJ0ZV9wYW5pYygiTlVMTCBmdW5jdGlv biBwb2ludGVyXG4iKTsNCgkJDQoJCQkJCQkJCQkJCQkJZmN0X2FyZyA9IGxjb3JlX2NvbmZpZ1ts Y29yZV9pZF0uYXJnOw0KCQkJCQkJCQkJCQkJCXJldCA9IGxjb3JlX2NvbmZpZ1tsY29yZV9pZF0u ZihmY3RfYXJnKTsNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18NCg0KdGVzdF9yaW5nX3N0cmVzczoJCQkJd21iKCk/CQkJCQkJCQkJCQkJ WyBLb25zdGFudGluIGZvY3VzIF0NCgkJCQkJCQkJCQl0ZXN0X3dvcmtlcjoJCQkJCQkJTWFpbiB0 aHJlYWQgY2FuIHVzZSB3cmtfY21kIHRvDQoJCQkJCQlXcmtfY21kID1XUktfQ01EX1JVTjsJLS0t LS0tLS0tLS0tLS0tLS0tLS0tLT4JV3JrX2NtZCA9PSBXUktfQ01EX1JVTjsJCWNvbnRyb2wgbXVs dGlwbGUgdGhyZWFkcyB0byBzdGFydCBydW5uaW5nDQoJCQkJCQkJCQkJCQkJd21iKCk/CQkJCQlh dCB0aGUgc2FtZSB0aW1lIGFzIG11Y2ggYXMgcG9zc2libGUNCgkJCQkJCQkJCQkJCQlyaW5nX2Rl cXVldWU7DQoJCQkJCQkJCQkJCQkJcmluZ19lbnF1ZXVlOw0KCQkJCQkJV3JrX2NtZCA9V1JLX0NN RF9TVE9QOwktLS0tLS0tLS0tLS0tLS0tLS0tLS0tPglXcmtfY21kID09IFdSS19DTURfU1RPUDsN Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fDQoNCnJ0ZV9lYWxfd2FpdF9sY29yZToJCQkJCQkJCQkJCXdtYigpCQkJCQlbIEhvbm5hcHBh IGZvY3VzIF0NCgkJCQlsY29yZV9jb25maWdbbGNvcmVfaWRdLnN0YXRlID09IEZJTklTSEVECTwt LS0tLS0tLS0tLS0tLS0tLS0tLS0JbGNvcmVfY29uZmlnW2xjb3JlX2lkXS5zdGF0ZSA9IEZJTklT SEVECUxvYWQtYWNxdWlyZSBhbmQgc3RvcmUtcmVsZWFzZQ0KCQkJCQkJCQkJCQkJCQkJCQkJYXJl IHVzZWQgb24gdGhlIHZhcmlhYmxlIOKAnHN0YXRl4oCdDQoJCQkJCQlybWIoKTsNCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQoJCQkJ CQkNCkZyb20gdGhlIHBpY3R1cmUgYWJvdmUsDQoNCjEuRmlyc3QsIGZvciB0aGUgdW5kZXJseWlu ZyBmdW5jdGlvbiBydGVfZWFsX3JlbW90ZV9sYXVuY2gsIEhvbm5hcHBhIGZvY3VzZXMgb24gdGhh dCwNCnBpcGVsaW5lX2NvbW11bmljYXRpb24gY2Fubm90IGVuc3VyZSDigJhhcmfigJkgcGFyYW1l dGVycyBpcyBsb2FkZWQgY29ycmVjdGx5IGJ5DQp0aGUgd29ya2VyIHRocmVhZC4gDQpUaGlzIGlz IGJlY2F1c2UgaW4gd2VhayBtZW1vcnkgb3JkZXIgZnJhbWV3b3JrLCBtYXliZSB0aGUgbWFpbiB0 aHJlYWQgYW5kIHdvcmtlcg0KdGhyZWFkIGZpcnN0bHkgZmluaXNoIHBpcGVsaW5lIGNvbW11bmlj YXRpb24sIGFuZCB0aGVuIHRoZSB3b3JrZXIgdGhyZWFkIHJlY2VpdmUgc2lnbmFsDQphbmQgZXhl Y3V0ZSB0aGUgZnVuY3Rpb24g4oCYIGYg4oCZLiBIb3dldmVyLCBpdCBtYXliZSBsb2FkIGEgd3Jv bmcgdmFsdWUgb2Yg4oCYYXJn4oCZIGR1ZSB0byB0aGF0DQp0aGUgbWFpbiB0aHJlYWQgc3RvcmVz IOKAmGFyZ+KAmSBhZnRlciBwaXBlbGluZSBjb21tdW5pY2F0aW9uLiBTbyB3bWIgb3Igc3RvcmVf cmVsZWFzZSBpcw0KbmVjZXNzYXJ5IGZvciDigJhhcmfigJkuDQoNCjIuU2Vjb25kLCBmb3IgdGhl IHVwcGVyLWxheWVyIHRlc3RfcmluZ19zdHJlc3MsIEtvbnN0YW50aW4gZm91Y2VzZSBvbiB0aGF0 LA0KV2hldGhlciB0aGUgbWFpbiB0aHJlYWQgY2FuIHVzZSDigJh3cmtfY21k4oCZIHRvIGNvbnRy b2wgbXVsdGlwbGUgdGhyZWFkcyB0byBydW4gYXQgdGhlDQpzYW1lIHRpbWUgYXMgbXVjaCBhcyBw b3NzaWJsZS4NCkJlY2F1c2UgcnRlX2VhbF9yZW1vdGVfbGF1bmNoIG9ubHkgY2FuIGNvbW11bmlj YXRlcyB3aXRoIG9uZSB3b3JrZXIgdGhyZWFkDQphdCB0aGUgc2FtZSB0aW1lLiBUaGlzIG1lYW5z IHNvbWUgd29ya2VyIHRocmVhZCBtYXliZSBzdGFydCB3b3JraW5nIHZlcnkgZWFybHkgYnV0IG90 aGVyDQp3b3JrZXIgdGhyZWFkcyBtYXliZSBuZWVkIHRvIHdhaXQgYSBsb25nIHRpbWUgdG8gc3Rh cnQgd29ya2luZyBpZiAg4oCYd3JrX2NtZCcgaXMgc3RvcmVkICdSVU4nIGZsYWcNCmJlZm9yZSBy dGVfcmVtb3RlX2xhdW5jaC4NCkF0IGxhc3QsIGZvciB1bml0IHRlc3QsIHRoaXMgbWF5IGNhdXNl IHRoYXQgdGhlIHRlc3QgcmVzdWx0cyBhcmUgbm90IHN0YWJsZS4NCg0KMy5UaGlyZCwgZm9yIHJ0 ZV9lYWxfd2FpdF9sY29yZSwgSG9ubmFwcGEgZm9jdXNlcyBvbiB0aGF0IHRoZSDigJhzdGF0ZeKA mSBhcyBhICAgc3luY2hyb25vdXMgYmFyaWFibGUsDQp3ZSBzaG91bGQgYWRkIGxvYWQtYWNxdWly ZSBhbmQgc3RvcmUtcmVsZWFzZSBvbiBpdC4gSG93ZXZlciwgdGhlcmUgaGF2ZSBiZWVuIHJtYiBh bmQgd21iDQphZnRlciBhbmQgYmVmb3JlIOKAmHN0YXRl4oCZLCBTbyBJ4oCZbSBub3Qgc3VyZSB3 aGV0aGVyIHdlIHNob3VsZCByZXBsYWNlIHRoZW0uDQoNCkluIHN1bW1hcnksIEkgdGhpbmsgSG9u bmFwcGEgYW5kIEtvbnN0YW50aW4gaGF2ZSBkaWZmZXJlbnQgY29uY2VybnMuDQpGb3IgSG9ubmFw cGEsIHdlIGNhbiBhZGQgd21iIG9yIHN0b3JlLXJlbGVhc2UgdG8gZW5zdXJlIHRoZSDigJhhcmfi gJkgY2FuIGJlIGxvYWRlZCBjb3JyZWN0bHkNCmluIHJ0ZV9lYWxfcmVtb3RlX2xhdW5jaC4NCkZv ciBLb25zdGFudGluLCB3ZSBjYW4gYWRkIHdtYiBhbmQgcm1iIHRvIGVuc3VyZSB0aGUgbWFpbiB0 aHJlYWQgY2FuIGNvbnRyb2wgdGhlIHdvcmtlcg0KVGhyZWFkcyB0byBydW4gYXQgdGhlIHNhbWUg dGltZSwgYW5kIHRoZW4gbWFrZSB0aGUgdGVzdCByZXN1bHRzIG1vcmUgYWNjdXJhdGUgaW4gdGhl DQpyaW5nX3N0cmVzc190ZXN0Lg0KDQoNCkJlc3QgUmVnYXJkcw0KRmVpZmVpDQoNCj4gLS0tLS3p gq7ku7bljp/ku7YtLS0tLQ0KPiDlj5Hku7bkuro6IEhvbm5hcHBhIE5hZ2FyYWhhbGxpIDxIb25u YXBwYS5OYWdhcmFoYWxsaUBhcm0uY29tPg0KPiDlj5HpgIHml7bpl7Q6IDIwMjHlubQx5pyIMzDm l6UgOToyNA0KPiDmlLbku7bkuro6IFN0ZXBoZW4gSGVtbWluZ2VyIDxzdGVwaGVuQG5ldHdvcmtw bHVtYmVyLm9yZz4NCj4g5oqE6YCBOiBBbmFueWV2LCBLb25zdGFudGluIDxrb25zdGFudGluLmFu YW55ZXZAaW50ZWwuY29tPjsgRmVpZmVpIFdhbmcNCj4gPEZlaWZlaS5XYW5nMkBhcm0uY29tPjsg ZGV2QGRwZGsub3JnOyBuZCA8bmRAYXJtLmNvbT47IFJ1aWZlbmcNCj4gV2FuZyA8UnVpZmVuZy5X YW5nQGFybS5jb20+OyBIb25uYXBwYSBOYWdhcmFoYWxsaQ0KPiA8SG9ubmFwcGEuTmFnYXJhaGFs bGlAYXJtLmNvbT47IG5kIDxuZEBhcm0uY29tPg0KPiDkuLvpopg6IFJFOiBbZHBkay1kZXZdIFtQ QVRDSCB2MSAxLzJdIGFwcC90ZXN0OiByZW1vdmUgdW5uZWNlc3NhcnkgYmFycmllcnMNCj4gZm9y IHJpbmcgc3RyZXNzIHRlc3QNCj4gDQo+IDxzbmlwPg0KPiANCj4gPiA+DQo+ID4gPiA+DQo+ID4g PiA+ID4gPg0KPiA+ID4gPiA+ID4gSGkgRmVpZmVpLA0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ ID4NCj4gPiA+ID4gPiA+ID4gVGhlIHZhcmlhYmxlICJ3cmtfY21kIiBpcyBhIHNpZ25hbCB0byBj b250cm9sIHRocmVhZHMgZnJvbQ0KPiA+ID4gPiA+ID4gPiBydW5uaW5nIGFuZCBzdG9wcGluZy4g V2hlbiB3b3JrZXIgbGNvcmVzIGxvYWQgIndya19jbWQgPT0NCj4gPiA+ID4gV1JLX0NNRF9SVU4i LA0KPiA+ID4gPiA+ID4gPiB0aGV5DQo+ID4gPiA+ID4gPiBzdGFydA0KPiA+ID4gPiA+ID4gPiBy dW5uaW5nIGFuZCB3aGVuIHdvcmtlciBsY29yZXMgbG9hZCAid3JrX2NtZCA9PQ0KPiA+ID4gPiA+ ID4gPiBXUktfQ01EX1NUT1AiLA0KPiA+ID4gPiA+ID4gdGhleQ0KPiA+ID4gPiA+ID4gPiBzdG9w Lg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBGb3IgdGhlIHdtYiBpbiB0ZXN0X210MSwg bm8gc3RvcmluZyBvcGVyYXRpb25zIG11c3Qga2VlcCB0aGUNCj4gPiA+ID4gPiA+ID4gb3JkZXIg YWZ0ZXIgc3RvcmluZyAid3JrX2NtZCIuIFRodXMgdGhlIHdtYiBpcyB1bm5lY2Vzc2FyeS4NCj4g PiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBJIHRoaW5rIHRoZXJlIGlzIGEgYnVnIGluIG15IG9yaWdp bmFsIGNvZGUsIHdlIHNob3VsZCBkbw0KPiA+ID4gPiA+ID4gc21wX3dtYigpDQo+ID4gPiA+ID4g PiAqYmVmb3JlKiBzZXR0aW5nIHdya19jbWQsIG5vdCBhZnRlcjoNCj4gPiA+ID4gPiA+DQo+ID4g PiA+ID4gPiAgICAgICAgIC8qIGxhdW5jaCBvbiBhbGwgd29ya2VycyAqLw0KPiA+ID4gPiA+ID4g ICAgICAgICBSVEVfTENPUkVfRk9SRUFDSF9XT1JLRVIobGMpIHsNCj4gPiA+ID4gPiA+ICAgICAg ICAgICAgICAgICBhcmdbbGNdLnJuZyA9IHI7DQo+ID4gPiA+ID4gPiAgICAgICAgICAgICAgICAg YXJnW2xjXS5zdGF0cyA9IGluaXRfc3RhdDsNCj4gPiA+ID4gPiA+ICAgICAgICAgICAgICAgICBy dGVfZWFsX3JlbW90ZV9sYXVuY2godGVzdCwgJmFyZ1tsY10sIGxjKTsNCj4gPiA+ID4gPiA+ICAg ICAgICAgfQ0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ICAgICAgICAgLyogc2lnbmFsIHdvcmtl ciB0byBzdGFydCB0ZXN0ICovDQo+ID4gPiA+ID4gPiArICAgICAgcnRlX3NtcF93bWIoKTsNCj4g PiA+ID4gPiA+ICAgICAgICAgd3JrX2NtZCA9IFdSS19DTURfUlVOOw0KPiA+ID4gPiA+ID4gLSAg ICAgICBydGVfc21wX3dtYigpOw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ICAgICAgICAgdXNs ZWVwKHJ1bl90aW1lICogVVNfUEVSX1MpOw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+DQo+ID4g PiA+ID4gPiBJIHN0aWxsIHRoaW5rIHdlJ2QgYmV0dGVyIGhhdmUgc29tZSBzeW5jaHJvbmlzYXRp b24gaGVyZS4NCj4gPiA+ID4gPiA+IE90aGVyd2lzZSB3aGF0IHdvdWxkIHByZXZlbnQgY29tcGls ZXIgYW5kL29yIGNwdSB0byB1cGRhdGUNCj4gPiA+ID4gPiA+IHdya19jbWQgb3V0IG9mIG9yZGVy IChiZWZvcmUgX2luaXRfIHBoYXNlIGlzIGNvbXBsZXRlZCk/DQo+ID4gPiA+ID4gPiBXZSBwcm9i YWJseSBjYW4gc2FmZWx5IGFzc3VtZSBubyByZW9yZGVyaW5nIGZyb20gdGhlIGNvbXBpbGVyDQo+ ID4gPiA+ID4gPiBoZXJlLCBhcyB3ZSBoYXZlIGZ1bmN0aW9uIGNhbGxzIHN0cmFpZ2h0IGJlZm9y ZSBhbmQgYWZ0ZXINCj4gPiA+ID4gPiA+ICd3cmtfY21kID0NCj4gPiA+ID4gV1JLX0NNRF9SVU47 Jw0KPiA+ID4gPiA+ID4gQnV0IGZvciBjb25zaXN0ZW5jeSBhbmQgZWFzaWVyIG1haW50ZW5hbmNl LCBJIHN0aWxsIHRoaW5rIGl0DQo+ID4gPiA+ID4gPiBpcyBiZXR0ZXIgdG8gaGF2ZSBzb21ldGhp bmcgaGVyZSwgYWZ0ZXIgYWxsIGl0IGlzIG5vdA0KPiA+ID4gPiA+ID4gcGVyZm9ybWFuY2UgY3Jp dGljYWwNCj4gPiBwYXNzLg0KPiA+ID4gPiA+IEFncmVlIHRoYXQgdGhpcyBpcyBub3QgcGVyZm9y bWFuY2UgY3JpdGljYWwuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBUaGlzIGlzIG1vcmUgYWJvdXQg Y29ycmVjdG5lc3MgKGFzIHVzdWFsbHkgcGVvcGxlIHJlZmVyIHRvIGNvZGUNCj4gPiA+ID4gPiB0 byB1bmRlcnN0YW5kIHRoZSBjb25jZXB0cykuIFlvdSBjYW4gcmVmZXIgdG8gdmlkZW8gWzFdLg0K PiA+ID4gPiA+IEVzc2VudGlhbGx5LCB0aGUgcHRocmVhZF9jcmVhdGUgaGFzICdoYXBwZW5zLWJl Zm9yZScgYmVoYXZpb3IuDQo+ID4gPiA+ID4gaS5lLiBhbGwgdGhlIG1lbW9yeSBvcGVyYXRpb25z IGJlZm9yZSB0aGUgcHRocmVhZF9jcmVhdGUgYXJlDQo+ID4gPiA+ID4gdmlzaWJsZSB0byB0aGUg bmV3DQo+ID4gdGhyZWFkLg0KPiA+ID4gPiA+IFRoZQ0KPiA+ID4gPiA+IHJ0ZV9zbXBfcm1iKCkg YmFycmllciBpbiB0aGUgdGhyZWFkIGZ1bmN0aW9uIGlzIG5vdCByZXF1aXJlZCBhcw0KPiA+ID4g PiA+IGl0IHJlYWRzIHRoZQ0KPiA+ID4gPiBkYXRhIHRoYXQgd2FzIHNldCBiZWZvcmUgdGhlIHRo cmVhZCB3YXMgbGF1bmNoZWQuDQo+ID4gPiA+DQo+ID4gPiA+IHJ0ZV9lYWxfcmVtb3RlX2xhdW5j aCgpIGRvZXNuJ3QgY2FsbCBwdGhyZWFkX2NyZWF0ZSgpLg0KPiA+ID4gPiBBbGwgaXQgZG9lcyAt ICB1cGRhdGVzIGdsb2JhbCB2YXJpYWJsZSAobGNvcmVfY29uZmlnKSBhbmQNCj4gPiA+ID4gd3Jp dGVzL3JlYWRzIHRvL2Zyb20gdGhlIHBpcGUuDQo+ID4gPiA+DQo+ID4gPiBUaGFua3MgZm9yIHRo ZSByZW1pbmRlciDimLkNCj4gPiA+IEkgdGhpbmsgcnRlX2VhbF9yZW1vdGVfbGF1bmNoIGFuZCBy dGVfZWFsX3dhaXRfbGNvcmUgbmVlZCB0byBwcm92aWRlDQo+ID4gYmVoYXZpb3Igc2ltaWxhciB0 byBwdGhyZWFkX2xhdW5jaCBhbmQgcHRocmVhZF9qb2luIHJlc3BlY3RpdmVseS4NCj4gPiA+DQo+ ID4gPiBUaGVyZSBpcyB1c2Ugb2YgcnRlX3NtcF8qbWIgaW4gdGhvc2UgZnVuY3Rpb25zIGFzIHdl bGwuIFRob3NlIG5lZWQNCj4gPiA+IHRvIGJlIGZpeGVkDQo+ID4gZmlyc3QgYW5kIHRoZW4gbG9v ayBhdCB0aGVzZS4NCj4gPg0KPiA+IExvb2tzIGxpa2UgeW91IHdhbnQgX19hdG9taWNfdGhyZWFk X2ZlbmNlKCkgaGVyZS4NCj4gPg0KPiBJbiB0aGUgcnRlX2VhbF9yZW1vdGVfbGF1bmNoIGNhc2Us IGFsbCB0aGUgbWVtb3J5IG9wZXJhdGlvbnMgYmVmb3JlIHRoZQ0KPiBBUEkgY2FsbCBuZWVkIHRv IGJlIHZpc2libGUgdG8gdGhlIHdvcmtlci4gSWYgdGhpcyBpcyB0aGUgb25seSByZXF1aXJlbWVu dCwgd2UNCj4gY2FuIHVzZSB0aGUgZnVuY3Rpb24gcG9pbnRlciBhcyB0aGUgZ3VhcmQgdmFyaWFi bGUgYW5kIHVzZSBzdG9yZS1yZWxlYXNlLiBJbg0KPiB0aGUgZWFsX3RocmVhZF9sb29wIGZ1bmN0 aW9uIHdlIGNvdWxkIGRvIGxvYWQtYWNxdWlyZSBvbiB0aGUgZnVuY3Rpb24NCj4gcG9pbnRlci4N Cj4gDQo+IEkgZG8gbm90IHRoaW5rIHRoYXQgdGhlcmUgaXMgYSByZXF1aXJlbWVudCB0byBlbnN1 cmUgdGhhdCB0aGUgbWVtb3J5DQo+IG9wZXJhdGlvbnMgYWZ0ZXIgdGhlIEFQSSBjYWxsIGRvIG5v dCBoYXBwZW4gYmVmb3JlIHRoZSB3b3JrZXIgdGhyZWFkIHN0YXJ0cw0KPiBydW5uaW5nIHRoZSBm dW5jdGlvbiAoQXMgdGhlcmUgaXMgbm8gZ3VhcmFudGVlIG9uIHdoZW4gdGhlIHdvcmtlciB0aHJl YWQNCj4gd2lsbCBydW4uIElmIHRoZSBtYWluIHRocmVhZCBuZWVkcyB0byBrbm93IGlmIHRoZSB3 b3JrZXIgdGhyZWFkIGlzIHJ1bm5pbmcNCj4gZXhwbGljaXQgaGFuZC1zaGFraW5nIG5lZWRzIHRv IGhhcHBlbikuDQo+IA0KPiBUaGUgcnRlX2VhbF93YWl0X2xjb3JlIEFQSSBuZWVkcyB0byBlbnN1 cmUgdGhhdCB0aGUgbWVtb3J5IG9wZXJhdGlvbnMgaW4NCj4gdGhlIHdvcmtlciBhcmUgdmlzaWJs ZSB0byB0aGUgbWFpbi4gcnRlX2VhbF93YWl0X2xjb3JlIGFuZCBlYWxfdGhyZWFkX2xvb3ANCj4g YXJlIHN5bmNocm9uaXppbmcgdXNpbmcgbGNvcmVfY29uZmlnW3dvcmtlcl9pZF0uc3RhdGUuIEkg bmVlZCB0byB1bmRlcnN0YW5kDQo+IHdoYXQgZWxzZSAnc3RhdGUnIGlzIHVzZWQgZm9yLiBJZiB0 aGVyZSBhcmUgbm8gaXNzdWVzLCB3ZSBjYW4gZG8gYSBzdG9yZS1yZWxlYXNlDQo+IG9uICdzdGF0 ZScgaW4gZWFsX3RocmVhZF9sb29wIGFuZCBhIGxvYWQtYWNxdWlyZSBpbiBydGVfZWFsX3dhaXRf bGNvcmUuDQo+IA0KPiBTbywgd2UgZG8gbm90IGhhdmUgdG8gdXNlIHRoZSBfX2F0b21pY190aHJl YWRfZmVuY2UuDQo+IA0KDQo=