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 77BA63858CDA for ; Tue, 10 Jan 2023 12:23:11 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 77BA63858CDA Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=ibm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=ibm.com Received: from pps.filterd (m0098410.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 30ABBdbH015362; Tue, 10 Jan 2023 12:23:09 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 : mime-version; s=pp1; bh=aZj/vWw9NM520KMRWcJ315wmTIaqVDZ1EsePQuvQoks=; b=UmmED3znDfUlrDQN+kMLM3J2wzmrncBmOdjS5Hx19QHJlw3bV3TACM0YBFzl8eQyUtRR DfFlvRFmInJhcby9t2DXzXI5bt5oEBV5udV8cpiXU6iwFnn8eq8gsptFKSz9MlqUZc43 t64y4oTV26I9kEJkP2c106LtypkXgZ/Ho4NhIA6DravZoaJR02ZIaYzHUBXlEXRIM8KQ ovEie7cXBhJTKnjmbG7DZm4qLxjXNUGtdMDZ0uHIqxUS3u2Ot6A/w04PYThqKrKROY6G XhIjrJLNWYcIkY/T9s/gnpoa8vgKaNeLVCwzUPPsDnAS1azhh76cgnQq2v4gDVkM/4qI tw== Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2041.outbound.protection.outlook.com [104.47.51.41]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3n16x69gw7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 10 Jan 2023 12:23:08 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VR5WN2C0cf22WvEKta4kRh8O4jVJhYKkfd7ryC9IBcDTnW5tBiKdl+dsq26XI/1lgN10j37/hj76Fr0fGOtkYXVSfjg0evKlFPchwiINEsSzfLoCQRPjXbIY8ZD1MLk8zEt1M1jz8W9rNRvsprzqdanNTrAc0iWUdmm+lx7rPw1Ruq6g9Y8+MSgY0ub6gZ/SPOgdTTCOnTUKCz5jpLFeNEpzGuhwzwmB/0ZLkesstS9hpn+NlxyPnj1+4268volWgvxhniu2SKa/fq2POlaAjZ4HifFY8kqMrojvRILxTMdO17mWFEdbCxBZyqUQAOp2Q+U/hulYvtNAM64WSVc8tw== 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=aZj/vWw9NM520KMRWcJ315wmTIaqVDZ1EsePQuvQoks=; b=PyviDqhhsU82dJl3zy7zNrycdqL2ubHZ9rGV3bdI3ivyYqwI5SdWEAQrgbJxtsZDr4aQKMPwL3eHQ82wpo/2iTYBw8TdJQs8soUbGWFmxbcODhkzOSs5t8yNl2MH75lB8ILWyQUDftYWhAEbn9nOCvxQASyUCaLOLyu7XksITjqjpyVFoP+uveV0Cwd7e9PUnbHxN3B8Ygk2G3fAzOQ7nZILySoINeE/2uM9JxppxEuqn1SyJ0WrJsk3Y0wr2eZXIzHNJS/VdSmS/7wcw6jAnw28XndLjLjB6tUU4BqkABVcY7dpc9MrP8pF4LwvezrhidMR7TB7nCigawAsf/DAUQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ibm.com; dmarc=pass action=none header.from=ibm.com; dkim=pass header.d=ibm.com; arc=none Received: from CH2PR15MB3544.namprd15.prod.outlook.com (2603:10b6:610:5::26) by DM6PR15MB2218.namprd15.prod.outlook.com (2603:10b6:5:85::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5986.18; Tue, 10 Jan 2023 12:23:05 +0000 Received: from CH2PR15MB3544.namprd15.prod.outlook.com ([fe80::1e54:c91e:9426:8880]) by CH2PR15MB3544.namprd15.prod.outlook.com ([fe80::1e54:c91e:9426:8880%6]) with mapi id 15.20.5986.018; Tue, 10 Jan 2023 12:23:05 +0000 From: Aditya Kamath1 To: Ulrich Weigand , "simark@simark.ca" , "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: AQHY6DximDPpCqTL9kGyFvcEZokFBq4jlIiAgBFljYeAAA2HgIAIORaygAMrdQCACMPAdYADi8KAgAAbf+aAABUYgIAADhDtgAjHItiAAgYnAIACq/WKgAVsGwCABC6K8oAAZcYAgAq8WQ+AADoMgIAFnB/fgAUxEICABkBkK4AWHiQAgAFvY+g= Date: Tue, 10 Jan 2023 12:23:05 +0000 Message-ID: References: <0866c91331b08f2870fad6e6a13fbcd1a9823b48.camel@de.ibm.com> <5df6ab523034d1997ffda5bb06c3bd87777dcccb.camel@de.ibm.com> <0dba07cfad3da44c0281c53702d73f807bca7d06.camel@de.ibm.com> <5956432ab1e0eedc8f65e01d3793a80ccf3a3a1f.camel@de.ibm.com> <139ff3da5e35905c963869569bebf280733740c2.camel@de.ibm.com> <8302c3570292b864ab21176e58bdee546f6e4544.camel@de.ibm.com> <5324a4027099ed44a32b3de8db71df875e034deb.camel@de.ibm.com> In-Reply-To: <5324a4027099ed44a32b3de8db71df875e034deb.camel@de.ibm.com> Accept-Language: en-IN, en-US Content-Language: en-IN X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH2PR15MB3544:EE_|DM6PR15MB2218:EE_ x-ms-office365-filtering-correlation-id: e0f16033-820a-4c30-53a3-08daf3056cc7 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: HEg0tJBgutX1687XH/3ZNWYzPSSszdOg6ua2hULVES012BJ2uSjOhU7HgaIctMNobHfuJJFSzhbRwDbvP+CQJnqkjIH1rs/vGkmwtRzUnTemuatMIMfMs4f1GB2zexyr8+SX5o8QnDM43JLrfMpVQOwwWIQ0RwM0nTmtJmIlPX+PdyP2H5zXAsT5Hq/CKpabpm2wu4ff3VT2nH+0Z1kEl+CeUA6gDOsDJQrlaYgnYmEQF6L+mbudlbJ7ffSE3DeVM5TSqumw2t4e9HN/a1uRBHIseMozQU4brCfkkCtoNC3entxCw1DJCLD18VU6SnrWlJ7V9K1DoEf+AcxYemJaZ1N8IKiNk/CyzSYDMEeg41IlpHuKOlWZEDBloPdCGrrvtnvlkcOqy/0DZeXX9qb/qpq7Us6o23Tn/jmJYi0CZcQBwWRueLengnGya2evGGWCJs5ju2gGVNEBtnwvHWUHT8b8Sob2Rn+ZzVrWgVKqFQx6TpT210EjIIlszNxFYuE5zPFbmUx/69EG8t3ZGoz0mOzKsdfOjpTxwsN5aOWhQUor/6Km1XjxdGmQMaR8xbHipRzPSfY1E7MwybyeYz3TserBXP9Rb6HUKHTwf+LzmWrLL8aem4H/2ppWEBKjqe12GgDJYDiNa9Hfycl4N00EKOJGn+Yzdec3ObOBcPugsSU+xFVjEMWmovoeRMI1EyjLtHrFCeHPsY53pUJcQNfHJQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH2PR15MB3544.namprd15.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199015)(38100700002)(99936003)(122000001)(33656002)(83380400001)(38070700005)(86362001)(66946007)(41300700001)(8676002)(76116006)(91956017)(66446008)(4326008)(66476007)(64756008)(66556008)(110136005)(55016003)(8936002)(2906002)(5660300002)(316002)(52536014)(9686003)(186003)(6506007)(71200400001)(7696005)(53546011)(478600001)(19627405001)(579004)(559001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?yNe+AsU5IWZ2rvxLtDbsIctwPnCbn91NIyqLzzRPww7a2dEzr1Lc9v+sQcON?= =?us-ascii?Q?sYxSArEQFQW+8HNnYq+sD6K6nj5PrlD7ur053oZg4igVoyhd2svqVhZegoQ6?= =?us-ascii?Q?qQTZwkXb61EezD8APYsCfx7/ggpYn1GlJH6wG6Hvz2yCLq6DLWNyGmoAChuu?= =?us-ascii?Q?8lgV2MP6BJDStqp7m2Nl2OLGwkXdjqvTJksbp01Bo9o+pLpwh0ElkKWGtnEm?= =?us-ascii?Q?Xv9cdNeInlenUEkt6mZzITjfREqhHbwkuf+E4X3rR+GovvZKKC8QXHY4e83r?= =?us-ascii?Q?AmqH7oK5xREuaMHq9BL6UiD5fZyjZsM/+gCZaQ/aKkjHL+JFt26+kSioOJGI?= =?us-ascii?Q?iCuas8LdVFK+Wd5K2pxU6QdC7Zdqg3lZBDdiLNwk4q25LPkIKQqUgxtyYMDd?= =?us-ascii?Q?f7TkRxLQSJxVzhvqUVqr2uddkGdhEShR4/db/GfT5iebPLXUTcaJemTdTnXy?= =?us-ascii?Q?NeuluEC6R0US2MqAQZv6Ru4iq3nBxE5SJCSl7Z+tGc/pAsPjOxjm72C+vm0r?= =?us-ascii?Q?NewWBUeCECG/d91OJ5W4w90nki4sWMJctxGAL6NE4nSCvovEhJi5XT4XQabn?= =?us-ascii?Q?pfTWevFn7PFPEnFFHZq0cjFDDx8dkWBb1wGFqT1fdmbi05fKv6Npl7sHV37y?= =?us-ascii?Q?0Lw6cY/cmD4+q3mYuapPCkduLuZgk7KDR0g+nqk4/IvG4mWAiMROkA0M+jbw?= =?us-ascii?Q?AGLf8ovK+j7OXKAFnECgOgEV1HjsMWn6QBfjFnkYPebKjBUhQ/4sG2B7c3pB?= =?us-ascii?Q?mVGCDXAunKbcJpnIspOLvUsaaKIa+cCFOUr9akuAogJqDCRFBc44oWAMGumL?= =?us-ascii?Q?CXx2mMcPnaAo1tP7G5oDKW11CA7ET2buYc0+pfSwsuidnxuok8OGcffbV6m9?= =?us-ascii?Q?NV1W3NHHuy55Ft9jzCOwxiBnjwN+8V+8V8lHJJIQuFUyuzJhbsniTbxEKe30?= =?us-ascii?Q?+EQJP/UYPPvH4cg9wWHxHHlEs0VKTo5EQ8itEIFNKJhA3olQTII3m0VOMkFp?= =?us-ascii?Q?ZDIPXXmaVzS/kU2VRJ+y+TZsKsKMSjDdtv44wh+Ujcmp9c9ihCpZtdCL4ZsK?= =?us-ascii?Q?C64sPfVV/ARMD2F5scWz+X6lBzCgFIkInec1qucDsdqJHvBUysc7ALjsBQg0?= =?us-ascii?Q?vFfsXHnhcBt1lXEJxI4TuKFPXEAWj15I3R8riIAZedn6IEkivXfzVkBNq82r?= =?us-ascii?Q?DqIybtCStTzQFhOKI2S0/c6fBHrgJ8xQhT6KEKW6sWf2UCmv3vj5CtRZJiP8?= =?us-ascii?Q?OzET62tM3h17Gv/ZAh0ZUgVTKWKqI5VrzYIJuGlyykRArB11KTbXUbq+RY9t?= =?us-ascii?Q?cnNXMQ2vIyzy68WO8yX/6m7okxg82O0vYz2xG7y0VHU0vGtT/92C55HtIHR+?= =?us-ascii?Q?XKMGMTr9CyhKtrsYaq3O3q8752tAVxm5VQ9zapAftw3e4jY4ZP9TVK9cqEFR?= =?us-ascii?Q?mQvx8vRDkrNrjWBDcYBacChL4O9gdBRka+4trlp4ndVpdY4AVk1o3gHrA7xO?= =?us-ascii?Q?XiYoMnVHuMM1xG4oIPNUPtKhnl5P8+/ztH4IBBXV5tACyDcb3NhiF1pvc/02?= =?us-ascii?Q?m5zIR4J6233Ui34wGMcbQn+fCSAWbvADlWSQFo1vj9NGQlKF8fHSaWZobTed?= =?us-ascii?Q?C1paj+CGsE4nlQkskuGtzFtiFgPAHg+mwYxCY3HBQmSp?= Content-Type: multipart/mixed; boundary="_004_CH2PR15MB354417A03BCE77E3BA1C3A20D6FF9CH2PR15MB3544namp_" MIME-Version: 1.0 X-OriginatorOrg: ibm.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH2PR15MB3544.namprd15.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e0f16033-820a-4c30-53a3-08daf3056cc7 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jan 2023 12:23:05.1266 (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: S0XraJ2keXktEVToKBdJtSSJpvw4fZxCfBYE7TWGXoqvd+0s0wF/n91hhbzrEwQH9eoSjg7lmtj4Ul1ZYd9+lQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR15MB2218 X-Proofpoint-GUID: Cz2N8G65PGYL9ueIBbR9zITTSOsC3dXk X-Proofpoint-ORIG-GUID: Cz2N8G65PGYL9ueIBbR9zITTSOsC3dXk X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2023-01-10_03,2023-01-10_03,2022-06-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 mlxlogscore=999 phishscore=0 bulkscore=0 priorityscore=1501 lowpriorityscore=0 suspectscore=0 malwarescore=0 impostorscore=0 spamscore=0 mlxscore=0 clxscore=1015 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2301100073 X-Spam-Status: No, score=-2.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,HTML_MESSAGE,MANY_SPAN_IN_TEXT,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --_004_CH2PR15MB354417A03BCE77E3BA1C3A20D6FF9CH2PR15MB3544namp_ Content-Type: multipart/alternative; boundary="_000_CH2PR15MB354417A03BCE77E3BA1C3A20D6FF9CH2PR15MB3544namp_" --_000_CH2PR15MB354417A03BCE77E3BA1C3A20D6FF9CH2PR15MB3544namp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Ulrich and community, Please find attached the patch. [See: 0001-Fix-multi-thread-debug-bug-in-AI= X.patch] >I think you'll have to allow for that modified form of the name as well. I have allowed the same. Please see the solib-aix change. With this we are = able to read all the symbols in any inferior successfully. One can verify t= his by using the set debug aix-thread. If one executes a "info shared library" command, one can see the 4 librarie= s for any inferior. Kindly check output 1,pasted below in this email for pr= ogram 1. >>Even if I allow a pathname match to the member_name we end up losing all = the >>information of our threads in the first process though we still have the >>process information. >This needs further debugging to understand what's going on once you allow >that match. That original problem should be fixed by that change, so >there's probably something else as well ... Yeah. As mentioned in my previous mail we are losing our threads informatio= n. Though in the output we do get a new thread my attempt to understand the= root cause in the code failed miserably. Thread 1 belonging to process 1 i= s getting shown as 2.1 in output 2 pasted below. What's worse is the top ta= rget is also not setting properly in the process of having the right name f= or the shared library. I have the correct program space as well while readi= ng the symbol. And since the top target is wrong, the new process appears t= hough this is a threaded one in the output. So, looking at this, I have missed out something may be minor or major caus= ing the bug which I am unaware of in the code base. I have tried debugging = the aix-thread.c.. But things look to be properly aligned as it should be t= here at least. Single inferior examples with multiple threads pass. But mul= ti inferior with multi threads fail. Kindly guide me on what I am missing here. It is surely something which I h= ave not explored and unaware of. Your expertise can help us resolve this bu= g. Thank you for the guidance so far in this bug. Waiting for a reply soon. Have a nice day ahead. Thanks and regards, Aditya. --------------------------------------------------------------------------- Program 1:- #include #include #include #include #include pthread_barrier_t barrier; #define NUM_THREADS 1 void * thread_function (void *arg) { pthread_barrier_wait (&barrier); pid_t child; child =3D fork (); if (child > 0) printf ("I am parent \n"); else { child =3D fork (); if (child > 0) printf ("I am child \n"); else printf ("I am grandchild \n"); } while (1); /* break here */ } int main (void) { int i; pthread_t thread[NUM_THREADS]; alarm (300); pthread_barrier_init (&barrier, NULL, NUM_THREADS); for (i =3D 0; i < NUM_THREADS; i++) { int res; res =3D pthread_create (&thread[i], NULL, thread_function, NULL); assert (res =3D=3D 0); } while (1) { sleep (15); } return 0; } ---------------------------------------------------------------------------= ------------------------------ Output 1:- Reading symbols from /home/aditya/gdb_tests/ultimate-multi-thread-fork... (gdb) set detach-on-fork off (gdb) r Starting program: /home/aditya/gdb_tests/ultimate-multi-thread-fork [New Thread 258] [New inferior 2 (process 15925744)] I am parent ^C[New process 11665696] Thread 1.3 received signal SIGINT, Interrupt. 0xd0595fb0 in _p_nsleep () from /usr/lib/libpthread.a(shr_xpg5.o) (gdb) info sharedlibrary =46rom To Syms Read Shared Object Library 0xd05bc124 0xd05bf194 Yes (*) /usr/lib/libpthreads.a(shr_comm.o) 0xd05bb240 0xd05bb9a1 Yes (*) /usr/lib/libcrypt.a(shr.o) 0xd0576180 0xd05ba731 Yes (*) /usr/lib/libpthread.a(shr_xpg5.o) 0xd0100e00 0xd0575123 Yes (*) /usr/lib/libc.a(shr.o) (*): Shared library is missing debugging information. (gdb) inferior 2 [Switching to inferior 2 [process 15925744] (/home/aditya/gdb_tests/ultimat= e-multi-thread-fork)] [Switching to thread 2.1 (Thread 258)] #0 0xd0594fc8 in _sigsetmask () from /usr/lib/libpthread.a(shr_xpg5.o) (gdb) info sharedlibrary =46rom To Syms Read Shared Object Library 0xd05bc124 0xd05bf194 Yes (*) /usr/lib/libpthreads.a(shr_comm.o) 0xd05bb240 0xd05bb9a1 Yes (*) /usr/lib/libcrypt.a(shr.o) 0xd0576180 0xd05ba731 Yes (*) /usr/lib/libpthread.a(shr_xpg5.o) 0xd0100e00 0xd0575123 Yes (*) /usr/lib/libc.a(shr.o) (*): Shared library is missing debugging information. (gdb) ---------------------------------------------------------------------------= ------------------------------ Output 2:- Reading symbols from /home/aditya/gdb_tests/ultimate-multi-thread-fork... (gdb) set detach-on-fork off (gdb) r Starting program: /home/aditya/gdb_tests/ultimate-multi-thread-fork [New Thread 258] [New inferior 2 (process 16122342)] I am parent ^C[New process 11665700] Thread 1.3 received signal SIGINT, Interrupt. 0xd0595fb0 in _p_nsleep () from /usr/lib/libpthread.a(shr_xpg5.o) (gdb) info threads Id Target Id Frame * 1.3 process 11665700 0xd0595fb0 in _p_nsleep () from /usr/lib/libpthread.a(shr_xpg5.o) 2.1 Thread 258 (tid 28115287, running) 0xd0594fc8 in _sigsetmask () from /usr/lib/libpthread.a(shr_xpg5.o) (gdb) ________________________________ From: Ulrich Weigand Sent: 09 January 2023 19:34 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 Aditya Kamath1 wrote: >Here I have added a print statement to ensure we are able to find the memb= er in the archive. > >What's interesting is for the first inferior this works fine for all share= d libraries. >For the second one and every inferior thereafter the output is as shown be= low in the next paragraph, >object_bfd is shr.o --- compared with --- member_name is shr_comm.o in pat= h /usr/lib/libpthreads.a(shr_comm.o) >object_bfd is /usr/lib/libpthreads.a(shr_comm.o) --- compared with --- mem= ber_name is shr_comm.o >in path /usr/lib/libpthreads.a(shr_comm.o) >I was surprised that the bfd_get_filename (object_bfd.get ()) is returning= the pathname >instead of the object file descriptor. Everything until here seems to corr= ect in the >solib_aix_bfd_open () function and this makes it hard for me to understand= what is going on. Looks like this is because solib_aix_bfd_open *changes* the BFD filename he= re: /* Override the returned bfd's name with the name returned from solib_find along with appended parenthesized member name in order to allow comman= ds listing all shared libraries to display. Otherwise, we would only be displaying the name of the archive member object. */ std::string fname =3D string_printf ("%s%s", bfd_get_filename (archive_bfd.get ()), sep); bfd_set_filename (object_bfd.get (), fname.c_str ()); so when the same BFD gets checked a second time, you'll now see the changed filename instead of the original one. I think you'll have to allow for that modified form of the name as well. >Even if I allow a pathname match to the member_name we end up losing all t= he >information of our threads in the first process though we still have the >process information. This needs further debugging to understand what's going on once you allow that match. That original problem should be fixed by that change, so there's probably something else as well ... Bye, Ulrich --_000_CH2PR15MB354417A03BCE77E3BA1C3A20D6FF9CH2PR15MB3544namp_-- --_004_CH2PR15MB354417A03BCE77E3BA1C3A20D6FF9CH2PR15MB3544namp_ Content-Type: application/octet-stream; name="0001-Fix-multi-thread-debug-bug-in-AIX.patch" Content-Description: 0001-Fix-multi-thread-debug-bug-in-AIX.patch Content-Disposition: attachment; filename="0001-Fix-multi-thread-debug-bug-in-AIX.patch"; size=9936; creation-date="Tue, 10 Jan 2023 12:00:38 GMT"; modification-date="Tue, 10 Jan 2023 12:00:49 GMT" Content-Transfer-Encoding: base64 RnJvbSBmYjhkMjRkZjdjMTM2MjIwNGNhMDA0NTM2MWFjZDM3NDM5ZjQ2NzQ2 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBZGl0eWEgVmlkeWFk aGFyIEthbWF0aCA8QWRpdHlhLkthbWF0aDFAaWJtLmNvbT4KRGF0ZTogVHVl LCAxMCBKYW4gMjAyMyAwNTo1ODoyOCAtMDYwMApTdWJqZWN0OiBbUEFUQ0hd IEZpeCBtdWx0aSB0aHJlYWQgZGVidWcgYnVnIGluIEFJWAoKLS0tCiBnZGIv YWl4LXRocmVhZC5jIHwgMTAzICsrKysrKysrKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBnZGIvc29saWItYWl4LmMgIHwgICA2 ICsrKwogMiBmaWxlcyBjaGFuZ2VkLCA2NCBpbnNlcnRpb25zKCspLCA0NSBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9nZGIvYWl4LXRocmVhZC5jIGIv Z2RiL2FpeC10aHJlYWQuYwppbmRleCBlNTU2YzE1MzU3Ni4uM2EyYWZhZDI1 YTEgMTAwNjQ0Ci0tLSBhL2dkYi9haXgtdGhyZWFkLmMKKysrIGIvZ2RiL2Fp eC10aHJlYWQuYwpAQCAtNTUsNiArNTUsNyBAQAogI2luY2x1ZGUgPHN5cy9y ZWcuaD4KICNpbmNsdWRlIDxzY2hlZC5oPgogI2luY2x1ZGUgPHN5cy9wdGhk ZWJ1Zy5oPgorI2luY2x1ZGUgPHZlY3Rvcj4KIAogI2lmICFIQVZFX0RFQ0xf R0VUVEhSRFMKIGV4dGVybiBpbnQgZ2V0dGhyZHMgKHBpZF90LCBzdHJ1Y3Qg dGhyZHNpbmZvNjQgKiwgaW50LCB0aWRfdCAqLCBpbnQpOwpAQCAtNzAsNyAr NzEsNyBAQCBzdGF0aWMgYm9vbCBkZWJ1Z19haXhfdGhyZWFkOwogCiAvKiBS ZXR1cm4gd2hldGhlciB0byB0cmVhdCBQSUQgYXMgYSBkZWJ1Z2dhYmxlIHRo cmVhZCBpZC4gICovCiAKLSNkZWZpbmUgUERfVElEKHB0aWQpCShwZF9hY3Rp dmUgJiYgcHRpZC50aWQgKCkgIT0gMCkKKyNkZWZpbmUgUERfVElEKHB0aWQp CShzdGQ6OmZpbmQgKHBkX2FjdGl2ZS5iZWdpbiAoKSwgcGRfYWN0aXZlLmVu ZCAoKSwgcHRpZC5waWQgKCkpICE9IHBkX2FjdGl2ZS5lbmQgKCkgJiYgcHRp ZC50aWQgKCkgIT0gMCkKIAogLyogU3VjY2VzcyBhbmQgZmFpbHVyZSB2YWx1 ZXMgcmV0dXJuZWQgYnkgcHRoZGIgY2FsbGJhY2tzLiAgKi8KIApAQCAtMTUx LDExICsxNTIsMTEgQEAgc3RhdGljIENPUkVfQUREUiBwZF9icmtfYWRkcjsK IAogLyogV2hldGhlciB0aGUgY3VycmVudCBhcHBsaWNhdGlvbiBpcyBkZWJ1 Z2dhYmxlIGJ5IHB0aGRiLiAgKi8KIAotc3RhdGljIGludCBwZF9hYmxlID0g MDsKK3N0YXRpYyBzdGQ6OnZlY3RvcjxwaWRfdD4gcGRfYWJsZTsKIAogLyog V2hldGhlciBhIHRocmVhZGVkIGFwcGxpY2F0aW9uIGlzIGJlaW5nIGRlYnVn Z2VkLiAgKi8KIAotc3RhdGljIGludCBwZF9hY3RpdmUgPSAwOworc3RhdGlj IHN0ZDo6dmVjdG9yPHBpZF90PiBwZF9hY3RpdmU7CiAKIC8qIFdoZXRoZXIg dGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIGlzIDY0LWJpdC4gIAogICAgT25s eSB2YWxpZCB3aGVuIHBkX2FibGUgaXMgdHJ1ZS4gICovCkBAIC0zMzEsNiAr MzMyLDkgQEAgcGRjX3N5bWJvbF9hZGRycyAocHRoZGJfdXNlcl90IHVzZXJf Y3VycmVudF9waWQsIHB0aGRiX3N5bWJvbF90ICpzeW1ib2xzLCBpbnQgY28K ICAgc3RydWN0IGJvdW5kX21pbmltYWxfc3ltYm9sIG1zOwogICBpbnQgaTsK ICAgY2hhciAqbmFtZTsKKyAgc2NvcGVkX3Jlc3RvcmVfY3VycmVudF9wcm9n cmFtX3NwYWNlIHJlc3RvcmVfcHNwYWNlOyAKKyAgaW5mZXJpb3IgKmluZiA9 IGZpbmRfaW5mZXJpb3JfcGlkIChjdXJyZW50X2luZmVyaW9yICgpLT5wcm9j ZXNzX3RhcmdldCAoKSwgdXNlcl9jdXJyZW50X3BpZCk7CisgIHNldF9jdXJy ZW50X3Byb2dyYW1fc3BhY2UgKGluZi0+cHNwYWNlKTsKIAogICBpZiAoZGVi dWdfYWl4X3RocmVhZCkKICAgICBnZGJfcHJpbnRmIChnZGJfc3RkbG9nLApA QCAtNTA4LDE0ICs1MTIsMTMgQEAgcGRjX3JlYWRfZGF0YSAocHRoZGJfdXNl cl90IHVzZXJfY3VycmVudF9waWQsIHZvaWQgKmJ1ZiwKICAgLyogVGhpcyBp cyBuZWVkZWQgdG8gZWxpbWluYXRlIHRoZSBkZXBlbmRlbmN5IG9mIGN1cnJl bnQgdGhyZWFkCiAgICAgIHdoaWNoIGlzIG51bGwgc28gdGhhdCB0aHJlYWQg cmVhZHMgdGhlIGNvcnJlY3QgdGFyZ2V0IG1lbW9yeS4gICovCiAgIHsKLSAg ICBzY29wZWRfcmVzdG9yZV9jdXJyZW50X3RocmVhZCByZXN0b3JlX2N1cnJl bnRfdGhyZWFkOworICAgIHNjb3BlZF9yZXN0b3JlIHNhdmVfaW5mZXJpb3Jf cHRpZCA9IG1ha2Vfc2NvcGVkX3Jlc3RvcmUgKCZpbmZlcmlvcl9wdGlkKTsK ICAgICAvKiBCZWZvcmUgdGhlIGZpcnN0IGluZmVyaW9yIGlzIGFkZGVkLCB3 ZSBwYXNzIGluZmVyaW9yX3B0aWQucGlkICgpCiAgICAgICAgZnJvbSBwZF9l bmFibGUgKCkgd2hpY2ggaXMgMC4gIFRoZXJlIGlzIG5vIG5lZWQgdG8gc3dp dGNoIHRocmVhZHMKICAgICAgICBkdXJpbmcgZmlyc3QgaW5pdGlhbGlzYXRp b24uICBJbiB0aGUgcmVzdCBvZiB0aGUgY2FsbGJhY2tzIHRoZQogICAgICAg IGN1cnJlbnQgdGhyZWFkIG5lZWRzIHRvIGJlIGNvcnJlY3QuICAqLwogICAg IGlmICh1c2VyX2N1cnJlbnRfcGlkICE9IDApCi0gICAgICBzd2l0Y2hfdG9f dGhyZWFkIChjdXJyZW50X2luZmVyaW9yICgpLT5wcm9jZXNzX3RhcmdldCAo KSwKLQkJCXB0aWRfdCAodXNlcl9jdXJyZW50X3BpZCkpOworICAgICAgaW5m ZXJpb3JfcHRpZCA9IHB0aWRfdCAodXNlcl9jdXJyZW50X3BpZCk7CiAgICAg c3RhdHVzID0gdGFyZ2V0X3JlYWRfbWVtb3J5IChhZGRyLCAoZ2RiX2J5dGUg KikgYnVmLCBsZW4pOwogICB9CiAgIHJldCA9IHN0YXR1cyA9PSAwID8gUERD X1NVQ0NFU1MgOiBQRENfRkFJTFVSRTsKQEAgLTYzOSwzNiArNjQyLDIzIEBA IHBjbXAgKGNvbnN0IHZvaWQgKnAxdiwgY29uc3Qgdm9pZCAqcDJ2KQogICBy ZXR1cm4gcDEtPnB0aGlkIDwgcDItPnB0aGlkID8gLTEgOiBwMS0+cHRoaWQg PiBwMi0+cHRoaWQ7CiB9CiAKLS8qIGl0ZXJhdGVfb3Zlcl90aHJlYWRzKCkg Y2FsbGJhY2sgZm9yIGNvdW50aW5nIEdEQiB0aHJlYWRzLgotCi0gICBEbyBu b3QgY291bnQgdGhlIG1haW4gdGhyZWFkICh3aG9zZSB0aWQgaXMgemVybyku ICBUaGlzIG1hdGNoZXMKLSAgIHRoZSBsaXN0IG9mIHRocmVhZHMgcHJvdmlk ZWQgYnkgdGhlIHB0aHJlYWRkZWJ1ZyBsaWJyYXJ5LCB3aGljaAotICAgZG9l cyBub3QgaW5jbHVkZSB0aGF0IG1haW4gdGhyZWFkIGVpdGhlciwgYW5kIHRo dXMgYWxsb3dzIHVzCi0gICB0byBjb21wYXJlIHRoZSB0d28gbGlzdHMuICAq LworLyogaXRlcmF0ZV9vdmVyX3RocmVhZHMoKSBjYWxsYmFjayBmb3IgY291 bnRpbmcgR0RCIHRocmVhZHMuICAqLwogCiBzdGF0aWMgaW50CiBnaXRlcl9j b3VudCAoc3RydWN0IHRocmVhZF9pbmZvICp0aHJlYWQsIHZvaWQgKmNvdW50 cCkKIHsKLSAgaWYgKFBEX1RJRCAodGhyZWFkLT5wdGlkKSkKLSAgICAoKihp bnQgKikgY291bnRwKSsrOworICAoKihpbnQgKikgY291bnRwKSsrOwogICBy ZXR1cm4gMDsKIH0KIAotLyogaXRlcmF0ZV9vdmVyX3RocmVhZHMoKSBjYWxs YmFjayBmb3IgYWNjdW11bGF0aW5nIEdEQiB0aHJlYWQgcGlkcy4KLQotICAg RG8gbm90IGluY2x1ZGUgdGhlIG1haW4gdGhyZWFkICh3aG9zZSB0aWQgaXMg emVybykuICBUaGlzIG1hdGNoZXMKLSAgIHRoZSBsaXN0IG9mIHRocmVhZHMg cHJvdmlkZWQgYnkgdGhlIHB0aHJlYWRkZWJ1ZyBsaWJyYXJ5LCB3aGljaAot ICAgZG9lcyBub3QgaW5jbHVkZSB0aGF0IG1haW4gdGhyZWFkIGVpdGhlciwg YW5kIHRodXMgYWxsb3dzIHVzCi0gICB0byBjb21wYXJlIHRoZSB0d28gbGlz dHMuICAqLworLyogaXRlcmF0ZV9vdmVyX3RocmVhZHMoKSBjYWxsYmFjayBm b3IgYWNjdW11bGF0aW5nIEdEQiB0aHJlYWQgcGlkcy4gICovCiAKIHN0YXRp YyBpbnQKIGdpdGVyX2FjY3VtIChzdHJ1Y3QgdGhyZWFkX2luZm8gKnRocmVh ZCwgdm9pZCAqYnVmcCkKIHsKLSAgaWYgKFBEX1RJRCAodGhyZWFkLT5wdGlk KSkKLSAgICB7Ci0gICAgICAqKihzdHJ1Y3QgdGhyZWFkX2luZm8gKioqKSBi dWZwID0gdGhyZWFkOwotICAgICAgKCooc3RydWN0IHRocmVhZF9pbmZvICoq KikgYnVmcCkrKzsKLSAgICB9CisgICoqKHN0cnVjdCB0aHJlYWRfaW5mbyAq KiopIGJ1ZnAgPSB0aHJlYWQ7CisgICgqKHN0cnVjdCB0aHJlYWRfaW5mbyAq KiopIGJ1ZnApKys7CisKICAgcmV0dXJuIDA7CiB9CiAKQEAgLTcxOSw3ICs3 MDksNyBAQCBnZXRfc2lnbmFsZWRfdGhyZWFkIChpbnQgcGlkKQogCQkgICAg c2l6ZW9mICh0aHJpbmYpLCAma3RpZCwgMSkgIT0gMSkKIAlicmVhazsKIAot ICAgICAgaWYgKHRocmluZi50aV9jdXJzaWcgPT0gU0lHVFJBUCkKKyAgICAg IGlmICh0aHJpbmYudGlfY3Vyc2lnKQogCXJldHVybiB0aHJpbmYudGlfdGlk OwogICAgIH0KIApAQCAtNzUwLDYgKzc0MCw5IEBAIHN5bmNfdGhyZWFkbGlz dHMgKGludCBwaWQpCiAgIHB0aGRiX3B0aHJlYWRfdCBwZHRpZDsKICAgcHRo cmVhZF90IHB0aGlkOwogICBwdGhkYl90aWRfdCB0aWQ7CisgIHByb2Nlc3Nf c3RyYXR1bV90YXJnZXQgKnByb2NfdGFyZ2V0CisgICAgICAgICAgICA9IGN1 cnJlbnRfaW5mZXJpb3IgKCktPnByb2Nlc3NfdGFyZ2V0ICgpOworICB0aHJl YWRfaW5mbyAgKnRwOwogCiAgIC8qIEFjY3VtdWxhdGUgYW4gYXJyYXkgb2Yg bGlicHRoZGVidWcgdGhyZWFkcyBzb3J0ZWQgYnkgcHRocmVhZCBpZC4gICov CiAKQEAgLTgxMCw4ICs4MDMsNiBAQCBzeW5jX3RocmVhZGxpc3RzIChpbnQg cGlkKQogCSAgcHJpdi0+cGR0aWQgPSBwYnVmW3BpXS5wZHRpZDsKIAkgIHBy aXYtPnRpZCA9IHBidWZbcGldLnRpZDsKIAotCSAgcHJvY2Vzc19zdHJhdHVt X3RhcmdldCAqcHJvY190YXJnZXQKLQkgICAgPSBjdXJyZW50X2luZmVyaW9y ICgpLT5wcm9jZXNzX3RhcmdldCAoKTsKIAkgIHRocmVhZCA9IGFkZF90aHJl YWRfd2l0aF9pbmZvIChwcm9jX3RhcmdldCwKIAkJCQkJIHB0aWRfdCAocGlk LCAwLCBwYnVmW3BpXS5wdGhpZCksCiAJCQkJCSBwcml2KTsKQEAgLTg0MSw4 ICs4MzIsMjIgQEAgc3luY190aHJlYWRsaXN0cyAoaW50IHBpZCkKIAkgICAg fQogCSAgZWxzZSBpZiAoY21wX3Jlc3VsdCA+IDApCiAJICAgIHsKLQkgICAg ICBkZWxldGVfdGhyZWFkIChnYnVmW2dpXSk7Ci0JICAgICAgZ2krKzsKKyAg ICAgICAgICAgICAgaWYgKGdwdGlkLmlzX3BpZCAoKSAmJiBncHRpZC5waWQg KCkgPT0gcHB0aWQucGlkICgpKQorICAgICAgICAgICAgICAgIHsKKyAgICAg ICAgICAgICAgICAgIHRocmVhZF9jaGFuZ2VfcHRpZCAocHJvY190YXJnZXQs IGdwdGlkLCBwcHRpZCk7CisgICAgICAgICAgICAgICAgICBhaXhfdGhyZWFk X2luZm8gKnByaXYgPSBuZXcgYWl4X3RocmVhZF9pbmZvOworICAgICAgICAg ICAgICAgICAgcHJpdi0+cGR0aWQgPSBwYnVmW3BpXS5wZHRpZDsKKyAgICAg ICAgICAgICAgICAgIHByaXYtPnRpZCA9IHBidWZbcGldLnRpZDsKKyAgICAg ICAgICAgICAgICAgIHRwID0gZmluZF90aHJlYWRfcHRpZCAocHJvY190YXJn ZXQsIHBwdGlkKTsKKyAgICAgICAgICAgICAgICAgIHRwLT5wcml2LnJlc2V0 IChwcml2KTsKKyAgICAgICAgICAgICAgICAgIHBpKys7CisgICAgICAgICAg ICAgICAgICBnaSsrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg ICAgZWxzZQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg IGRlbGV0ZV90aHJlYWQgKGdidWZbZ2ldKTsKKyAgICAgICAgICAgICAgICAg IGdpKys7CisgICAgICAgICAgICAgICAgfQogCSAgICB9CiAJICBlbHNlCiAJ ICAgIHsKQEAgLTg4OCw3ICs4OTMsOCBAQCBwZF91cGRhdGUgKGludCBwaWQp CiAgIHB0aGRiX3RpZF90IHRpZDsKICAgc3RydWN0IHRocmVhZF9pbmZvICp0 aHJlYWQgPSBOVUxMOwogCi0gIGlmICghcGRfYWN0aXZlKQorICBpZiAoc3Rk OjpmaW5kIChwZF9hY3RpdmUuYmVnaW4gKCksIHBkX2FjdGl2ZS5lbmQgKCks IHBpZCkKKyAgICA9PSBwZF9hY3RpdmUuZW5kICgpKQogICAgIHJldHVybiBw dGlkX3QgKHBpZCk7CiAKICAgc3RhdHVzID0gcHRoZGJfc2Vzc2lvbl91cGRh dGUgKHBkX3Nlc3Npb24pOwpAQCAtOTI2LDcgKzkzMiw3IEBAIHBkX2FjdGl2 YXRlIChpbnQgcGlkKQogICAgIHsKICAgICAgIHJldHVybiBwdGlkX3QgKHBp ZCk7CiAgICAgfQotICBwZF9hY3RpdmUgPSAxOworICBwZF9hY3RpdmUucHVz aF9iYWNrIChwaWQpOwogICByZXR1cm4gcGRfdXBkYXRlIChwaWQpOwogfQog CkBAIC05MzUsMjYgKzk0MSwyOSBAQCBwZF9hY3RpdmF0ZSAoaW50IHBpZCkK IHN0YXRpYyB2b2lkCiBwZF9kZWFjdGl2YXRlICh2b2lkKQogewotICBpZiAo IXBkX2FjdGl2ZSkKKyAgaWYgKHN0ZDo6ZmluZCAocGRfYWN0aXZlLmJlZ2lu ICgpLCBwZF9hY3RpdmUuZW5kICgpLCBpbmZlcmlvcl9wdGlkLnBpZCAoKSkK KyAgICA9PSBwZF9hY3RpdmUuZW5kICgpKQogICAgIHJldHVybjsKICAgcHRo ZGJfc2Vzc2lvbl9kZXN0cm95IChwZF9zZXNzaW9uKTsKICAgCiAgIHBpZF90 b19wcmMgKCZpbmZlcmlvcl9wdGlkKTsKLSAgcGRfYWN0aXZlID0gMDsKKyAg cGRfYWN0aXZlLmVyYXNlIChzdGQ6OmZpbmQgKHBkX2FjdGl2ZS5iZWdpbiAo KSwgcGRfYWN0aXZlLmVuZCAoKSwgaW5mZXJpb3JfcHRpZC5waWQgKCkpKTsK IH0KIAogLyogQW4gb2JqZWN0IGZpbGUgaGFzIGp1c3QgYmVlbiBsb2FkZWQu ICBDaGVjayB3aGV0aGVyIHRoZSBjdXJyZW50CiAgICBhcHBsaWNhdGlvbiBp cyBwdGhyZWFkZWQsIGFuZCBpZiBzbywgcHJlcGFyZSBmb3IgdGhyZWFkIGRl YnVnZ2luZy4gICovCiAKIHN0YXRpYyB2b2lkCi1wZF9lbmFibGUgKHZvaWQp CitwZF9lbmFibGUgKGluZmVyaW9yICppbmYpCiB7CiAgIGludCBzdGF0dXM7 CiAgIGNoYXIgKnN0dWJfbmFtZTsKICAgc3RydWN0IGJvdW5kX21pbmltYWxf c3ltYm9sIG1zOworICBwaWRfdCBwaWQgPSAoaW5mID09IE5VTEw/aW5mZXJp b3JfcHRpZC5waWQgKCk6aW5mLT5waWQpOwogCiAgIC8qIERvbid0IGluaXRp YWxpemUgdHdpY2UuICAqLwotICBpZiAocGRfYWJsZSkKKyAgaWYgKHN0ZDo6 ZmluZCAocGRfYWJsZS5iZWdpbiAoKSwgcGRfYWJsZS5lbmQgKCksIHBpZCkg CisJIT0gcGRfYWJsZS5lbmQgKCkpCiAgICAgcmV0dXJuOwogCiAgIC8qIENo ZWNrIGFwcGxpY2F0aW9uIHdvcmQgc2l6ZS4gICovCkBAIC05NjIsNyArOTcx LDcgQEAgcGRfZW5hYmxlICh2b2lkKQogCiAgIC8qIENoZWNrIHdoZXRoZXIg dGhlIGFwcGxpY2F0aW9uIGlzIHB0aHJlYWRlZC4gICovCiAgIHN0dWJfbmFt ZSA9IE5VTEw7Ci0gIHN0YXR1cyA9IHB0aGRiX3Nlc3Npb25fcHRocmVhZGVk IChpbmZlcmlvcl9wdGlkLnBpZCAoKSwgUFRIREJfRkxBR19SRUdTLAorICBz dGF0dXMgPSBwdGhkYl9zZXNzaW9uX3B0aHJlYWRlZCAocGlkLCBQVEhEQl9G TEFHX1JFR1MsCiAJCQkJICAgICZwZF9jYWxsYmFja3MsICZzdHViX25hbWUp OwogICBpZiAoKHN0YXR1cyAhPSBQVEhEQl9TVUNDRVNTCiAgICAgICAgJiYg c3RhdHVzICE9IFBUSERCX05PVF9QVEhSRUFERUQpIHx8ICFzdHViX25hbWUp CkBAIC05NzgsMTIgKzk4NywxMiBAQCBwZF9lbmFibGUgKHZvaWQpCiAKICAg LyogUHJlcGFyZSBmb3IgdGhyZWFkIGRlYnVnZ2luZy4gICovCiAgIGN1cnJl bnRfaW5mZXJpb3IgKCktPnB1c2hfdGFyZ2V0ICgmYWl4X3RocmVhZF9vcHMp OwotICBwZF9hYmxlID0gMTsKKyAgcGRfYWJsZS5wdXNoX2JhY2sgKHBpZCk7 CiAKICAgLyogSWYgd2UncmUgZGVidWdnaW5nIGEgY29yZSBmaWxlIG9yIGFu IGF0dGFjaGVkIGluZmVyaW9yLCB0aGUKICAgICAgcHRocmVhZCBsaWJyYXJ5 IG1heSBhbHJlYWR5IGhhdmUgYmVlbiBpbml0aWFsaXplZCwgc28gdHJ5IHRv CiAgICAgIGFjdGl2YXRlIHRocmVhZCBkZWJ1Z2dpbmcuICAqLwotICBwZF9h Y3RpdmF0ZSAoaW5mZXJpb3JfcHRpZC5waWQgKCkpOworICBwZF9hY3RpdmF0 ZSAocGlkKTsKIH0KIAogLyogVW5kbyB0aGUgZWZmZWN0cyBvZiBwZF9lbmFi bGUoKS4gICovCkBAIC05OTEsMTEgKzEwMDAsMTQgQEAgcGRfZW5hYmxlICh2 b2lkKQogc3RhdGljIHZvaWQKIHBkX2Rpc2FibGUgKHZvaWQpCiB7Ci0gIGlm ICghcGRfYWJsZSkKKyAgaWYgKHN0ZDo6ZmluZCAocGRfYWJsZS5iZWdpbiAo KSwgcGRfYWJsZS5lbmQgKCksIAorCWluZmVyaW9yX3B0aWQucGlkICgpKSA9 PSBwZF9hYmxlLmVuZCAoKSkKICAgICByZXR1cm47Ci0gIGlmIChwZF9hY3Rp dmUpCisgIGlmIChzdGQ6OmZpbmQgKHBkX2FjdGl2ZS5iZWdpbiAoKSwgcGRf YWN0aXZlLmVuZCAoKSwKKyAgICAgICAgaW5mZXJpb3JfcHRpZC5waWQgKCkp ICE9IHBkX2FjdGl2ZS5lbmQgKCkpCiAgICAgcGRfZGVhY3RpdmF0ZSAoKTsK LSAgcGRfYWJsZSA9IDA7CisgIHBkX2FibGUuZXJhc2UgKHN0ZDo6ZmluZCAo cGRfYWJsZS5iZWdpbiAoKSwgcGRfYWJsZS5lbmQgKCksIAorCWluZmVyaW9y X3B0aWQucGlkICgpKSk7CiAgIGN1cnJlbnRfaW5mZXJpb3IgKCktPnVucHVz aF90YXJnZXQgKCZhaXhfdGhyZWFkX29wcyk7CiB9CiAKQEAgLTEwMTAsNyAr MTAyMiw3IEBAIHN0YXRpYyB2b2lkCiBuZXdfb2JqZmlsZSAoc3RydWN0IG9i amZpbGUgKm9iamZpbGUpCiB7CiAgIGlmIChvYmpmaWxlKQotICAgIHBkX2Vu YWJsZSAoKTsKKyAgICBwZF9lbmFibGUgKE5VTEwpOwogICBlbHNlCiAgICAg cGRfZGlzYWJsZSAoKTsKIH0KQEAgLTEwMjAsNyArMTAzMiw3IEBAIG5ld19v YmpmaWxlIChzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsZSkKIHN0YXRpYyB2b2lk CiBhaXhfdGhyZWFkX2luZmVyaW9yX2NyZWF0ZWQgKGluZmVyaW9yICppbmYp CiB7Ci0gIHBkX2VuYWJsZSAoKTsKKyAgcGRfZW5hYmxlIChpbmYpOwogfQog CiAvKiBEZXRhY2ggZnJvbSB0aGUgcHJvY2VzcyBhdHRhY2hlZCB0byBieSBh aXhfdGhyZWFkX2F0dGFjaCgpLiAgKi8KQEAgLTEwOTYsNyArMTEwOCw4IEBA IGFpeF90aHJlYWRfdGFyZ2V0Ojp3YWl0IChwdGlkX3QgcHRpZCwgc3RydWN0 IHRhcmdldF93YWl0c3RhdHVzICpzdGF0dXMsCiAgIGdkYl9hc3NlcnQgKHB0 aWQuaXNfcGlkICgpKTsKIAogICAvKiBDaGVjayB3aGV0aGVyIGxpYnB0aGRl YnVnIG1pZ2h0IGJlIHJlYWR5IHRvIGJlIGluaXRpYWxpemVkLiAgKi8KLSAg aWYgKCFwZF9hY3RpdmUgJiYgc3RhdHVzLT5raW5kICgpID09IFRBUkdFVF9X QUlUS0lORF9TVE9QUEVECisgIGlmIChzdGQ6OmZpbmQgKHBkX2FjdGl2ZS5i ZWdpbiAoKSwgcGRfYWN0aXZlLmVuZCAoKSwgcHRpZC5waWQgKCkpID09IHBk X2FjdGl2ZS5lbmQgKCkKKyAgICAgICYmIHN0YXR1cy0+a2luZCAoKSA9PSBU QVJHRVRfV0FJVEtJTkRfU1RPUFBFRAogICAgICAgJiYgc3RhdHVzLT5zaWcg KCkgPT0gR0RCX1NJR05BTF9UUkFQKQogICAgIHsKICAgICAgIHByb2Nlc3Nf c3RyYXR1bV90YXJnZXQgKnByb2NfdGFyZ2V0CmRpZmYgLS1naXQgYS9nZGIv c29saWItYWl4LmMgYi9nZGIvc29saWItYWl4LmMKaW5kZXggZjQ4M2Y1NGRl MTMuLjE4MTE0MGIzMzQ1IDEwMDY0NAotLS0gYS9nZGIvc29saWItYWl4LmMK KysrIGIvZ2RiL3NvbGliLWFpeC5jCkBAIC02MTgsNiArNjE4LDEyIEBAIHNv bGliX2FpeF9iZmRfb3BlbiAoY29uc3QgY2hhciAqcGF0aG5hbWUpCiAgICAg ICBpZiAobWVtYmVyX25hbWUgPT0gYmZkX2dldF9maWxlbmFtZSAob2JqZWN0 X2JmZC5nZXQgKCkpKQogCWJyZWFrOwogCisgICAgICBzdGQ6OnN0cmluZyBz ID0gYmZkX2dldF9maWxlbmFtZSAob2JqZWN0X2JmZC5nZXQgKCkpOworICAg ICAgaWYgKHMuZmluZCAobWVtYmVyX25hbWUpICE9IHN0ZDo6c3RyaW5nOjpu cG9zKQorICAgICAgeworCXJldHVybiBvYmplY3RfYmZkOworICAgICAgfQor CiAgICAgICBvYmplY3RfYmZkID0gZ2RiX2JmZF9vcGVucl9uZXh0X2FyY2hp dmVkX2ZpbGUgKGFyY2hpdmVfYmZkLmdldCAoKSwKIAkJCQkJCSAgICAgb2Jq ZWN0X2JmZC5nZXQgKCkpOwogICAgIH0KLS0gCjIuMzEuMQoK --_004_CH2PR15MB354417A03BCE77E3BA1C3A20D6FF9CH2PR15MB3544namp_--