From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by sourceware.org (Postfix) with ESMTPS id 938083853D5A for ; Wed, 23 Nov 2022 14:15:48 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 938083853D5A Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=de.ibm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=de.ibm.com Received: from pps.filterd (m0098404.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 2ANECREU023453; Wed, 23 Nov 2022 14:15:45 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=pp1; bh=D7ttNNn/k4Xj2kpJNSt47wy58I8sY3OH8uQg2HKWpys=; b=nus1NI9/bxO4SfiEKN2r3+TSJFMBZef9F5wwev5/BVZPUh2t+MXde+falExbtwH9hvyq KiZnatQh4sz+kp1k5Diyc9eBgd3u4uw8vfNdMEiNDwRnCkkmfc569D9xt4Xdu8vj8CUl sZDHln36EgtBpjKnLdb/JgRZE7ecw2Hzo2Xw2XSQ/TfVesOuDefs/t/f3BEzF0D9/+Sw /VNXd9i4khHeElolJw7HceJTHLueE0p4yXQAKRzAJT0u2hSL9ltP+4XhcOXjqmNxoyRE krTbB+VRsIbcug7Et3cbGFfdkPSkwrFDFGpumtwNLtlfyS1xcRVnC/+MzECsg0Fsn/lE Sg== Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2045.outbound.protection.outlook.com [104.47.66.45]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3m1n2vg33s-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 23 Nov 2022 14:15:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gkc3/1CuGaStJur+pAwgsCyXgf2qTmxmpUeJ1SteTJNJH6iNW3aBQ/Z1oIKOZeWJlY8wU9vITz5soTrKj5FeuThsHJ9tUAU4xhCj0cRvJpETHs+BPCIB7zkggOK/rGdcnpa9gizO0SgnfM6rrrNRA+cm5x5FNuXOZTJIKlo0B2+pfBWkAtnlZU2/ENydeyqO9uN5a5hHOhrxNVIHqUhviZUZJI1eSOdIKpmhFpd1rah65t7cJ0rMhYub7hUj6qpW06R+uPtHpxQb6MvuIPDHTQoQ6euPVUQ6gTj8V+uV/jCouh+s/HDjO4u/9SMy8gDd/+9YA8zM0p2G0ZJlaQhM2A== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=D7ttNNn/k4Xj2kpJNSt47wy58I8sY3OH8uQg2HKWpys=; b=Pqe+vrr/SkB6uKJJfeeMJJAAfYwl7jfH9U+lRz5rg6X7Ui3MvUU2tpR6C6pcgKX6zXyhhNnTv2fZCrVTQHS7RaM68ybUE5vDA4MTu1MBKCE8uMgQ4S5RaNVtazF6itBIsAYqPYqoBvxJeAdeMTsx3uMo2V3Xi/uXYpIq3iWGS6ISiG+2lmMC/ZAQxvHJduVwPs43MslJG7zWd0x0Rn5ChvLYQh6wgc9r4U3Vujc5DeV8xRysoENW+2F8VYZTR0OY1J2RTHXoATZuGc2FB+gO21frQNDpNiOO7UPJ/XKQNvGqGBhi/uEskIUHrE46hm8/U30aJSwWn4XpNAJ+JRc/Sg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=de.ibm.com; dmarc=pass action=none header.from=de.ibm.com; dkim=pass header.d=de.ibm.com; arc=none Received: from MN2PR15MB3149.namprd15.prod.outlook.com (2603:10b6:208:ea::29) by MN2PR15MB2784.namprd15.prod.outlook.com (2603:10b6:208:12f::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5834.15; Wed, 23 Nov 2022 14:15:43 +0000 Received: from MN2PR15MB3149.namprd15.prod.outlook.com ([fe80::3c65:c09c:5060:694f]) by MN2PR15MB3149.namprd15.prod.outlook.com ([fe80::3c65:c09c:5060:694f%3]) with mapi id 15.20.5857.017; Wed, 23 Nov 2022 14:15:43 +0000 From: Ulrich Weigand To: "simark@simark.ca" , Aditya Kamath1 , "gdb-patches@sourceware.org" CC: Sangamesh Mallayya Subject: Re: [PATCH] 0001-Fix-multi-thread-debug-bug-in-AIX.patch Thread-Topic: [PATCH] 0001-Fix-multi-thread-debug-bug-in-AIX.patch Thread-Index: AQHY6DximDPpCqTL9kGyFvcEZokFBq4jlIiAgBFljYeAAA2HgIAIORaygAMrdQCACMPAdYADi8KA Date: Wed, 23 Nov 2022 14:15:43 +0000 Message-ID: <0dba07cfad3da44c0281c53702d73f807bca7d06.camel@de.ibm.com> References: <0866c91331b08f2870fad6e6a13fbcd1a9823b48.camel@de.ibm.com> <5df6ab523034d1997ffda5bb06c3bd87777dcccb.camel@de.ibm.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN2PR15MB3149:EE_|MN2PR15MB2784:EE_ x-ms-office365-filtering-correlation-id: 1084ba1d-c0c3-4378-ea36-08dacd5d3504 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: r6L1gGTbfncXvOtniE5OlVXgTCg83yHNeWSYjbs5lIQwyYD6gYgKE25rmGeWXIHa3ogDMgqLLUe+xX1K1fACPkrHXRrIO8jP/lguSYHlPFVRARbDAJzuYb/oRSku+7dymw9tn4it45F+3OLhXyjbkc6eA3YLrYl0vVgXqeQU8omMS1GdC4o/QFkE49lTlaYgtn8Yh1dA8eCt+8oTQ0usViSUWsTqFdWR3NCrLm/9B0phWmWig0wef+t/FaUVp/8nEWEYnM44/B39P2hDZevA0NGuKqiAwT5R3uaQpeYt2FckmbC8FaeSJvDfr5G9tcaWLzLBiOoDSjZTJ5B3YRbAGWw12IDYEamVPr3JbnNm58mdhKfLvbOcGBTF4cxlUCRc3aspD02djdj5zzNJkzh06pkqUL5bCOd47B5RPcbfVtobmmEMb7HicqSfIKmbSsAMPx/nhuLm647gyXA8XKHOcDdGFA3xd6kIE0/vf+cbWn/6ow0uIkaKk4CvUcD4clYjdKlbq2b4Mv4nY6d3bJuTOusXfBsJHfmZWIcbnwhRR3WW/soS0C1OIw9JGOmGTT+rn7+uX1s1EYsgJfONOvO4TcEHVaJ+8ufHGWYvIcI1L+Mj1rWACdvjKjZKlbHR100de+YMyD5nPjD7Oz4OhAyoCv83jHBGL2fcH7jVn1Zjh6voB8Hx5pnXnO6a98fJpCHAnivLVkoDyAVte24onlMH4A== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR15MB3149.namprd15.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(136003)(376002)(396003)(366004)(346002)(39860400002)(451199015)(38070700005)(6512007)(2616005)(186003)(83380400001)(76116006)(64756008)(38100700002)(2906002)(122000001)(5660300002)(6506007)(4326008)(66556008)(71200400001)(66946007)(8676002)(8936002)(478600001)(316002)(41300700001)(66446008)(66476007)(110136005)(6486002)(91956017)(86362001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WnA4eWc5eXNQckdCNUxYckM2QWNWYWV6SjNJRTlPMjAybGlqeEZlYkZRRy9E?= =?utf-8?B?TjBMblkyK085WW1vR3lmcEtRNVk2QmtQNnI4b0lCYXNHNlluclRrK0ZBblFs?= =?utf-8?B?MHpHMnBJUXhqS0ZZRWRIS0NrbnRtdUs3dnJjZVk4ZzZoT3NubFhjajUrYVhB?= =?utf-8?B?OUdPeXp6K29SU0Nkc015UFF4Mm10QWRDR1Y0UVM0NjJET3FvbjNEV25OeXh1?= =?utf-8?B?U1lkWWNlSVJvejhWc3EyaTRyU3A2ajJiL255VmpIZy9LRVZXdnFPa1hDd0FZ?= =?utf-8?B?N1VQMkppbFBpUjc5TkJZMFY1NXRsWE00azNmRW85aXEydXY1RXpOZGR5T0tU?= =?utf-8?B?MVRZVlUzdkFndmlDUjlicDZPNEtYdGIzUzU5SGJueHYyTWhpMVZicURPNnJa?= =?utf-8?B?Z2FzdEtWZm9HSTNJZjNSN21ZMlZmYXpnS2dRU2hnbHhrdlUrcSt0OHFGVDc5?= =?utf-8?B?QlRNM3B0REQ2Zyt6UUo3a09ubWdQUi9SU2hlMHRUSndON2NZdDU1V2tQcEhz?= =?utf-8?B?YUdMdUd5UlFTTi9PSkxTb1dkWit5RjZLTGJTRERjUmpHRk9oRWpaQmtrdjI1?= =?utf-8?B?VVM2eVUvWlRyMkd4U3pWTTRhSjA4cTBsYUJURFdUZUl3OEFxV2VtNVg5UE1s?= =?utf-8?B?N2x1N3ZNOGFPNXB2bWpkZU9iU0lpaHpkVTlBUUhsRmVCL3JLZ29CeUx3NGMy?= =?utf-8?B?cTR1N2dlV3phL2x4S1dmUjMrZUpUY3A5UmU2NG5YUkFwcVA5emxzRGhLYzZr?= =?utf-8?B?TWJGcUZKeXdIV2lsRVo4anlkUHF0c1B6WGxhY05FNTBHallHeXowWUorUmN6?= =?utf-8?B?T016Ly9OVkxZVEFjelJNZlRSRVEzQzFFQk0yemxOZVZlS0tNSkh3cTI3RmNN?= =?utf-8?B?Y0tjMHhYektRY0Jpb21iWnVSRU85MzgwaTdOMk9jeUN1bzJ6OGNTRDZNS0wz?= =?utf-8?B?Qm5kcFdIbWtIWVQzcHlsOVNueUJYYUZ0V1BKREh1NzlCNy9sdlIwQ00vNmtl?= =?utf-8?B?UnE0Vi9CVStLY3lxVU9lU1l4U0pmSUtxWG1XVFpsYzdxaGVvU3FaRy83cWxT?= =?utf-8?B?bmQyd2RaSlJnZy9Zd1N1L0hROHMvV0VSU2EzVEs2MXFGTUdaQ0toWWR6YUJQ?= =?utf-8?B?NENBbmRncnU0Nkc1NkdJZ3Z3Q0xMby9KUm9vUmZTY2JRTkNFVzhLeUpVK0Rs?= =?utf-8?B?cUNmWmxIMTZYS0dVRml6dWJEOVpnN0VEOG9lRVA3Z1NUM1Q2emNyZVBTb1B4?= =?utf-8?B?WXZ5MDR3SElrOHRLSzBhN0RiZmkrbFZ6elUyY0YyRjY5Ylo1N3ZzRUR4WGlW?= =?utf-8?B?TnpBQzdmYW85Z2NHNGFqdzhyMlJkSnl4UTlPcGdINnZVUG5IVnM1VDk0S00x?= =?utf-8?B?ZVIyUHZDWkJLTnhoRHZ2cVdJNDRqL1Z5TlVaZG5ML0YrbVdpR282WVpDa3RE?= =?utf-8?B?T0lXTWVOc0Npc3V0SjhtazRXM2tFQnlxVURUWFNOZ2p4SW9SR2t5YlVKVWxI?= =?utf-8?B?RlVya2NoWjl6VTkzbUZGTEY4N1g4WldodXNjNkFFTE9hcDk3VWE5QUNrZ0NP?= =?utf-8?B?Umd6Q3BhWUpoVnBiU0JSdG1OSmJGbnVTcW03b0NzYnNoSm9KaU91SytSUmJK?= =?utf-8?B?VEF0ckYrKzhSZnMyeUV6TE9lcURaK2l1N3VsRmFPUU1DQVdESWJwMEs2ZERR?= =?utf-8?B?TnFNL2ZwdEt3MFhiMXJDdDk3dHJBVW1VbzgrbFN6TmJvRVBtL1VVdElmendx?= =?utf-8?B?NEtaamdKVzVOVlBRbmdwdC9oaDNsY3lxTVdOS1BvSWFqZDBxKzV4cVVjNFVq?= =?utf-8?B?dXRWQU51NHFMRFhha3VqZ3NuV2dScWxSaGVaS0ZBcEd5aTZYVUdObGd3YWND?= =?utf-8?B?WjRDa3lWMW5XZXRodTN6Wno3MXRBMFJSZ3ZXOGthYWVoNTNzeTVCZk04eWhM?= =?utf-8?B?OEZIVVA2SmJsdHNNaElJZEU0MGd5eXl1aitKVitnR3J5akkxUW5lYW9PTmto?= =?utf-8?B?L2pyMklMS1BvTUFQV2NpQk1GQXBpS0gvR1NtSkJNRXBtVTFQMEI5aEpGTFlT?= =?utf-8?B?MEYwQU9lQWxuSTR0UlNGNXdkLytQb0w3UjBWMWM4U2hhRy9Ba05uYXp6Vy9C?= =?utf-8?B?ZjQ1dU5XbFpmSEtmbEo2UDc4K25xTmh3cEYrcDJINGxOcENLN3hxdVFxRlZa?= =?utf-8?B?Y0IzR0ptMnQ2ams1dTlubkFKRlVJa0tISVNVT0ZuWXVZSlRVZy9YTm40NGJH?= =?utf-8?B?QVgyYXJhYWJ4ZjRSd25SQWorbW93PT0=?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: de.ibm.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN2PR15MB3149.namprd15.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1084ba1d-c0c3-4378-ea36-08dacd5d3504 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Nov 2022 14:15:43.1201 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fcf67057-50c9-4ad4-98f3-ffca64add9e9 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ULqzBoPQyu8cI2ncSqt6pcSQYs+1CXBSdBYgrf/EtrQQLT807/zobgfczAMI93bWsP4ujdVq0beQTABEiejYLJUE68J0UK9bIURQEge3eSc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR15MB2784 X-Proofpoint-ORIG-GUID: rCmnWE5ZZ6BMACMm82R4Rm6K_lp6DIAc X-Proofpoint-GUID: rCmnWE5ZZ6BMACMm82R4Rm6K_lp6DIAc X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.895,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-11-23_08,2022-11-23_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 impostorscore=0 adultscore=0 suspectscore=0 spamscore=0 mlxscore=0 bulkscore=0 phishscore=0 malwarescore=0 mlxlogscore=949 lowpriorityscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2210170000 definitions=main-2211230104 X-Spam-Status: No, score=-2.3 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: QWRpdHlhIEthbWF0aDEgPEFkaXR5YS5LYW1hdGgxQGlibS5jb20+IHdyb3RlOg0KDQo+QEAgLTUx NCw4ICs1MTQsMTYgQEAgcGRjX3JlYWRfZGF0YSAocHRoZGJfdXNlcl90IHVzZXJfY3VycmVudF9w aWQsIHZvaWQgKmJ1ZiwNCj4gICAgICAgIGR1cmluZyBmaXJzdCBpbml0aWFsaXNhdGlvbi4gIElu IHRoZSByZXN0IG9mIHRoZSBjYWxsYmFja3MgdGhlDQo+ICAgICAgICBjdXJyZW50IHRocmVhZCBu ZWVkcyB0byBiZSBjb3JyZWN0LiAgKi8NCj4gICAgIGlmICh1c2VyX2N1cnJlbnRfcGlkICE9IDAp DQo+LSAgICAgIHN3aXRjaF90b190aHJlYWQgKGN1cnJlbnRfaW5mZXJpb3IgKCktPnByb2Nlc3Nf dGFyZ2V0ICgpLA0KPi0JCQlwdGlkX3QgKHVzZXJfY3VycmVudF9waWQpKTsNCj4rICAgIHsNCj4r CWluZmVyaW9yICppbmYgPSBmaW5kX2luZmVyaW9yX3B0aWQgKGN1cnJlbnRfaW5mZXJpb3IgKCkt PiBwcm9jZXNzX3RhcmdldCAoKSwNCj4rCQkJCQkgICAgcHRpZF90ICh1c2VyX2N1cnJlbnRfcGlk KSk7DQpUaGlzIHdvdWxkIGJlIHNpbXBsZXIgdXNpbmcgZmluZF9pbmZlcmlvcl9waWQuDQo+KyAg ICAgICAgZm9yICh0aHJlYWRfaW5mbyAqdHA6IGluZi0+dGhyZWFkcyAoKSkgDQo+KwkgIGlmICh0 cCAhPSBOVUxMKQ0KVGhpcyB3b3VsZCBiZSBzaW1wbGVyIHVzaW5nIGFueV90aHJlYWRfb2ZfaW5m ZXJpb3IuDQo+KyAgICAgICAgICB7DQo+KyAgICAgICAgICAgIHN3aXRjaF90b190aHJlYWQgKHRw KTsNCj4rICAgICAgICAgICAgYnJlYWs7DQo+KyAgICAgICAgICB9DQo+KyAgICB9DQo+ICAgICBz dGF0dXMgPSB0YXJnZXRfcmVhZF9tZW1vcnkgKGFkZHIsIChnZGJfYnl0ZSAqKSBidWYsIGxlbik7 DQoNCkhvd2V2ZXIsIHN3aXRjaGluZyB0byBqdXN0IGFueSByYW5kb20gdGhyZWFkIG9mIHRoZSBw cm9jZXNzIHNlZW1zIG9kZC4NCg0KTG9va2luZyBhdCBzb2wtdGhyZWFkLmMsIHRoZXkgZG9uJ3Qg c3dpdGNoIHRvIGEgdGhyZWFkIGF0IGFsbA0KaW4gdGhlIGVxdWl2YWxlbnQgcGxhY2UsIGJ1dCBy YXRoZXIgZG8gdGhpczoNCg0KICBzY29wZWRfcmVzdG9yZSBzYXZlX2luZmVyaW9yX3B0aWQgPSBt YWtlX3Njb3BlZF9yZXN0b3JlICgmaW5mZXJpb3JfcHRpZCk7DQoNCiAgaWYgKGluZmVyaW9yX3B0 aWQudGlkX3AgKCkgfHwgIXRhcmdldF90aHJlYWRfYWxpdmUgKGluZmVyaW9yX3B0aWQpKQ0KICAg IHsNCiAgICAgIC8qIEl0J3MgZWl0aGVyIGEgdGhyZWFkIG9yIGFuIExXUCB0aGF0IGlzbid0IGFs aXZlLiAgQW55IGxpdmUNCiAgICAgICAgIExXUCB3aWxsIGRvIHNvIHVzZSB0aGUgZmlyc3QgYXZh aWxhYmxlLg0KDQogICAgICAgICBOT1RFOiBXZSBkb24ndCBuZWVkIHRvIGNhbGwgc3dpdGNoX3Rv X3RocmVhZDsgd2UncmUganVzdA0KICAgICAgICAgcmVhZGluZyBtZW1vcnkuICAqLw0KICAgICAg aW5mZXJpb3JfcHRpZCA9IHByb2Nmc19maXJzdF9hdmFpbGFibGUgKCk7DQogICAgfQ0KDQpTaW5j ZSB5b3VyIHhmZXJfcGFydGlhbCByb3V0aW5lIG9ubHkgZXZlciBsb29rcyBhdCB0aGUgUElEDQpj b21wb25lbnQgb2YgdGhlIHB0aWQsIEknbSB3b25kZXJpbmcgaWYgd2UgY291bGRuJ3Qgc2ltaWxh cmx5DQpqdXN0IHN3aXRjaCBpbmZlcmlvcl9wdGlkLCB3aXRob3V0IGFjdHVhbGx5IHN3aXRjaGlu ZyB0aGVhZHMuDQpTb21ldGhpbmcgYWxvbmcgdGhlIGxpbmVzIG9mDQoNCiAgc2NvcGVkX3Jlc3Rv cmUgc2F2ZV9pbmZlcmlvcl9wdGlkID0gbWFrZV9zY29wZWRfcmVzdG9yZSAoJmluZmVyaW9yX3B0 aWQpOw0KICBpZiAodXNlcl9jdXJyZW50X3BpZCAhPSAwKQ0KICAgIGluZmVyaW9yX3B0aWQgPSBw dGlkX3QgKHVzZXJfY3VycmVudF9waWQpOw0KDQpEb2VzIHRoaXMgd29yayBmb3IgeW91Pw0KDQo+ LSAgICAgIGlmICh0aHJpbmYudGlfY3Vyc2lnID09IFNJR1RSQVApDQo+KyAgICAgIC8qIEluIGEg bXVsdGkgdGhyZWFkZWQgYXBwbGljYXRpb24gdXNlciBjYW4gaW50ZXJydXB0IHRoZSBtYWluDQo+ KwkgdGhyZWFkIGFzIHdlbGwuIFRoaXMgZnVuY3Rpb24gc2hvdWxkIHJldHVybiB0aGUgdGlkIGlu IHRoaXMNCj4rICAgICAgICAgY2FzZSBhcGFydCBmcm9tIHRocmVhZHMgdGhhdCBjYW4gdHJhcCBv ciBiZSBpbnRlcnJ1cHRlZC4gICovDQpXaGl0ZXNwYWNlIHByb2JsZW0uDQo+Kw0KPisgICAgICBp ZiAodGhyaW5mLnRpX2N1cnNpZyA9PSBTSUdUUkFQIHx8IHRocmluZi50aV9jdXJzaWcgPT0gU0lH SU5UKQ0KPiAJcmV0dXJuIHRocmluZi50aV90aWQ7DQoNClRoaXMgc2VlbXMgYW4gdW5yZWxhdGVk IGNoYW5nZT8gIElmIHRoaXMgaXMgYWN0dWFsbHkgbmVjZXNzYXJ5LA0KdGhlbiBhbGwgdGhlIGNv bW1lbnRzIChlLmcuIGF0IHRoZSB0b3Agb2YgdGhpcyBmdW5jdGlvbiwgb3IgYXQNCnRoZSBjYWxs IHNpdGUpIGxpa2V3aXNlIG5lZWQgdG8gYmUgdXBkYXRlZCAtIHRoZXkgb25seSByZWZlciB0bw0K dHJhcCBzaWduYWxzIGN1cnJlbnRseS4NCg0KPiAJICBwcm9jZXNzX3N0cmF0dW1fdGFyZ2V0ICpw cm9jX3RhcmdldA0KPiAJICAgID0gY3VycmVudF9pbmZlcmlvciAoKS0+cHJvY2Vzc190YXJnZXQg KCk7DQo+LQkgIHRocmVhZCA9IGFkZF90aHJlYWRfd2l0aF9pbmZvIChwcm9jX3RhcmdldCwNCj4t CQkJCQkgcHRpZF90IChwaWQsIDAsIHBidWZbcGldLnB0aGlkKSwNCj4tCQkJCQkgcHJpdik7DQo+ KwkgIA0KPisJICB0aHJlYWRfaW5mbyAqdHAgPSBmaW5kX3RocmVhZF9wdGlkIChwcm9jX3Rhcmdl dCwgcHRpZF90IChwaWQpKTsNCj4rDQo+KwkgIC8qIElmIHRoZSBwdGhyZWFkIGxpYnJhcnkgaXMg dXNlZCB0aGVuIHdlIHJlcGxhY2UgdGhlIG1haW4NCj4rCSAgICAgd2l0aCB0aGUgdGhyZWFkIGhh dmluZyB0aGUgbWFpbiB0aHJlYWQgSUQgYW5kIHByb2Nlc3MgSUQuDQo+KwkgICAgIE90aGVyd2lz ZSB0aGlzIGlzIGEgbmV3IHRocmVhZCBhbmQgd2UgbmVlZCB0byBhZGQgaXQuICAqLw0KPisJICBp ZiAodHAgIT0gTlVMTCAmJiB0cC0+cHJpdiA9PSBOVUxMKQ0KPisgICAgICAgICAgew0KPisJICAg IHRocmVhZF9jaGFuZ2VfcHRpZCAocHJvY190YXJnZXQsIHRwLT5wdGlkLA0KPisJCQkJcHRpZF90 IChwaWQsIDAsIHBidWZbcGldLnB0aGlkKSk7DQo+KwkgICAgdHAtPnByaXYucmVzZXQgKHByaXYp Ow0KPisgICAgICAgICAgfQ0KPisJICBlbHNlCQ0KPisJICAgIHRocmVhZCA9IGFkZF90aHJlYWRf d2l0aF9pbmZvIChwcm9jX3RhcmdldCwNCj4rCQkJCQkgICBwdGlkX3QgKHBpZCwgMCwgcGJ1Zltw aV0ucHRoaWQpLA0KPisJCQkJCSAgIHByaXYpOw0KDQpJJ20gY29uZnVzZWQgd2h5IHRoaXMgaXMg dGhlIGNvcnJlY3QgcGxhY2UuICBGcm9tIHdoYXQgSSBjYW4gc2VlLA0KaW4gdGhpcyBzY2VuYXJp bywgd2UgaGF2ZToNCg0KLSBsaWJwdGhkZWJ1ZyByZXBvcnRzIHNvbWUgdGhyZWFkcyB1c2luZyBh IHRocmVhZCBJRCwgaS5lLiBwYnVmIGhhcw0KICAgcHRpZF90IChwaWQsIDAsIHB0aGlkMSkNCiAg ICAuLg0KICAgcHRpZF90IChwaWQsIDAsIHB0aGlkTikNCndpdGggcGNvdW50ID49IDEuDQoNCi0g R0RCIG9ubHkgaGFzIG9uZSBzaW5nbGUgdGhyZWFkIGluIHVudGhyZWFkZWQgbW9kZSwgaS5lLiBn YnVmIGhhcw0KICAgcHRpZF90IChwaWQsIDAsIDApDQp3aXRoIGdjb3VudCA9PSAxLg0KDQpTbyB3 aGVuIHJ1bm5pbmcgdGhlIGxvb3AsIGR1cmluZyB0aGUgZmlyc3QgaXRlcmF0aW9uLCB3ZSBzaG91 bGQgY29tcGFyZQ0KICAgcHRpZF9jbXAgKHB0aWRfdCAocGlkLCAwLCBwdGhpZDEpLCBwdGlkX3Qg KHBpZCwgMCwgMCkpDQp3aGljaCBzaG91bGQgYmUgPiAwIHNpbmNlIHB0aGlkMSA+IDAuICBSaWdo dD8NCg0KVGhpcyBtZWFucyB3ZSdsbCBnZXQgaW50byB0aGUgYnJhbmNoIHRoYXQganVzdCBkb2Vz Og0KICAgICAgICAgICAgICBkZWxldGVfdGhyZWFkIChnYnVmW2dpXSk7DQp0aGVyZWJ5IGRlbGV0 aW5nIHRoZSBvcmlnaW5hbCB0aHJlYWQuICBEb2VzIHRoaXMgbm90IGhhcHBlbiBmb3IgeW91Pw0K V2hhdCBpcyBnb2luZyBvbiBpbnN0ZWFkPw0KDQpbIE5vdGUgdGhhdCB0aGlzIGlzIGEgc2ltcGxp ZmllZCBjYXNlIHdpdGggb25seSBhIHNpbmdsZSBwcm9jZXNzOyBpbiB0aGUNCm11bHRpLXByb2Nl c3Mgc2NlbmFyaW8sIHRoaXMgbWF5IGJlIG1vcmUgY29tcGxleC4gXQ0KIA0KDQpCeWUsDQpVbHJp Y2gNCg0K