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 A45703857BBD for ; Fri, 15 Jul 2022 15:51:45 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org A45703857BBD Received: from pps.filterd (m0098409.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 26FFhHbY005016; Fri, 15 Jul 2022 15:51:43 GMT Received: from nam04-dm6-obe.outbound.protection.outlook.com (mail-dm6nam04lp2048.outbound.protection.outlook.com [104.47.73.48]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3hbb4fr5gg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 15 Jul 2022 15:51:42 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SKXQQM9z/VOiPhlB99pAy9fJCexP6Vi588mULszz/HMuuei+Am8FmWZRJDuMVBfrE4ux9R+d6vQQ/ksl8/iWMCD/Yx1/1JouiviNdYpxcMZBXQsB2PEdBL4knfWqyN0u+G+29ak7vKqhTJNW48pIc9SnqQN9BdvQdx8+A7xqLtQvcj7H1rcG/+sp6iWod5BDa19brtBUXs2GzkjmZvRROalCXG8qn9veBGUom84D+gZ8K38HYm/d67yhU4ZESdBSQ8GdkOHCibNWov0tg8j8MxZhEtn9xycEuWtSTVLIrYFNFdP+mo6oKddZ6v0wRpXSbHelkdKBX2paaaJwhR2oOg== 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=CWXEMWFBFYGNgAD5dherzjNOZj5OF27Q9pPMlNYrcVk=; b=CwF6pCbG2TosCtOsQZW9XjSS1bTRzlnSSwpDDP8hBCK8segIuNBP4jRmnElDDnF/YlHEOi58YkBryHtzIkJxUeiEdiwfOrnEkIDq7NcNbjjI1H74wthALpmJ3Y7hpt9QfkBAfBJgj5Rl4PGLlwlT15+WjahfGl7Op4Kg3XhbX/vRTFDvy30cZHNyCsSpv8zXV78wEmbx8GaH+QSup6TVbIw77V4e7Sexld0jQeGX/AzrulJprgKZWHRmAL4YoAztB83uhz5a92+Y4adrhNaJba4Y6WcBUD9ROuDWu6zcS545PskRUIdh4phPdIMplW30Zb1sQnCrOdFJ7MN61fEsSA== 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 SJ0PR15MB4204.namprd15.prod.outlook.com (2603:10b6:a03:2c8::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5438.19; Fri, 15 Jul 2022 15:51:39 +0000 Received: from CH2PR15MB3544.namprd15.prod.outlook.com ([fe80::b831:7c28:bc34:6404]) by CH2PR15MB3544.namprd15.prod.outlook.com ([fe80::b831:7c28:bc34:6404%7]) with mapi id 15.20.5417.026; Fri, 15 Jul 2022 15:51:39 +0000 From: Aditya Kamath1 To: Sangamesh Mallayya , "gdb-patches@sourceware.org" , Ulrich Weigand , "simark@simark.ca" Subject: [PATCH] Fix-for-multiple-thread-detection-in-AIX.patch Thread-Topic: [PATCH] Fix-for-multiple-thread-detection-in-AIX.patch Thread-Index: AQHYmFFabt4MyRx2wU+p6E9CkzDq6g== Date: Fri, 15 Jul 2022 15:51:39 +0000 Message-ID: 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-office365-filtering-correlation-id: 65272c7e-ee36-447e-46eb-08da6679e7b0 x-ms-traffictypediagnostic: SJ0PR15MB4204:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: wioSYZ7uAZ+5nyi/3ZgYdo067FgpS6J2efs8BVNPOMLYQPDFX1VHN/7joTsL62IF+WMw6lVjkz1M4xfg7hbwz396FidJ2gjWiCNU4C2vfhPdcScvOVTu3cccLkyT9zgCFZ/Expssr7UmptiTdeCIGPB/Q9Wurj8768LrCovbr8t3u7uYd51kwTVTwwBNt3vM+MpcSBRcemxH5VVrySsfXyXSyFInTguF97LuFcm3nCvibj2wE+jQbiFKtOEKXFmp8dsKJzhqJ946sIn3tM/XaYTUWY1Lhwy5rJePzbt2ej3s/ThRp4U4fqIAo/fbw9n5DK21hDBH9FaWq/T0uBpvgFmrPOQauaIUSpAh6wvZtb4j71qTEXwoHug8M2fuasnq+ArNt6KmgNrmJ+v0oUN9aNch4Jq3vlrNDhjS86miwGLXM781N9qbH73Eg53ew9klicompfsHCAhLYwdobMq5hFJOSyQbfaPp6eUO3U7oQvRN6lySwMqq3ioZy3H+zuMt/DrZ03mZ45DL2RgZx/xz8H63wUn5DW7ygJ5jQyEGyA20KrUjYZ7NI6+kHGwsaBJrjAghVHhZHNlpUP9zKVWE05SEY4LJSatZxcS15YmIPX77vHZKR3SZjKzal4gqG7dJ4pBmh/geHhb04RIm0Mb64Xs1yXV5QIplX4dgiP1yuojeV2fO8XkHvdvgrs2Z0thHic8BpSkKJWR42Rt03+zzvO9LJqUjf7b1V33xsQFHZidlG3Mju8zFNwQu9/rvcq6Bceu+i3PPLQCpmUmjvf2F/bnO41h20cupyOW+2FMKKHlAufJMmmuwegXNQk7YnZhr 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:(13230016)(376002)(366004)(136003)(346002)(396003)(39860400002)(33656002)(83380400001)(66476007)(8676002)(91956017)(52536014)(66446008)(64756008)(5660300002)(66556008)(2906002)(186003)(76116006)(66946007)(19627405001)(8936002)(71200400001)(86362001)(41300700001)(110136005)(316002)(26005)(6506007)(7696005)(9686003)(55016003)(38100700002)(122000001)(478600001)(38070700005)(99936003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?G7qHRUuxFVYvLVGV+lj6UEEtXfKJySGegFtahXdLyzY8AeDjbrgkzR2fx9?= =?iso-8859-1?Q?Q+RvWmrJuhapqU+Et9DlsgxiGbEEmC3AZTqPXBY6WX+cAdux6a5ACAS3/o?= =?iso-8859-1?Q?0DEiFngGWgDwqwiDxRlmK6QeTjxFN1eVVRqA876wVCDxm0SvR/uHh048O3?= =?iso-8859-1?Q?ttFlpbp7Vi+2NboD7gQOp1cTERIfxHhiZ7FMh/U9HMQ5uXqLbsyX6H6akK?= =?iso-8859-1?Q?qC+rjfkX+5tbeXjq6HkTs6DnoNYndmuQteuPuukACUKdH2wIucOuww30M2?= =?iso-8859-1?Q?4RvIMNdPQmZ2KndVVCGDe994+d4qPyIOggB0h4m83Nnq8lpjGr1iB2LU2l?= =?iso-8859-1?Q?p8I/Fi8BmQai1ukBk8nNop6x1y6ivRb8ciWCHg3jlJKuRqAoQU8MHC12fY?= =?iso-8859-1?Q?rATeeEo8TkY2VBnquwV9++Zy9iN8Cr26k4P2R66T0D7VvJrEubt7OvFYrG?= =?iso-8859-1?Q?K7rM8KnZHFwoXOax4AsYffzdEnm2zdCbl5dOVoEnZfcBircxeKfSLzm/JT?= =?iso-8859-1?Q?SWk29SBxUTZR6BY+9Ippqhn8Qy94j1ofCLAIwV3tlze4j8MVg9AE0cNM5H?= =?iso-8859-1?Q?pju2N298FJNirUDvEV4Fu6pBgTJ7JA4Br6wDBlkFs3g4E1ISARB5Wh99Qn?= =?iso-8859-1?Q?DGFnvibAlOit4Z0sZOeSzUSl9BKjjr38XkVHV36C7a1I6rNUaK5qFMnK5m?= =?iso-8859-1?Q?xuf0oIwRLr5u4FK6Bz33OdF9D7Z0ipEoxpxviUioOw/rLLr+8F3JywgQEM?= =?iso-8859-1?Q?PU4d3xszyCOZXHW/e1c+p9nrotEqyUF/ful6lnjEFdS4u7rQxeeayFz2EA?= =?iso-8859-1?Q?r0AuvvBy9GjmdaX01waXaLSBXa7TtedNBuAFGOJMjlv+a/qm8gYMsgqUDC?= =?iso-8859-1?Q?q5OpkUuGZ2eYP9cTqD+pnW1KXWr29rXH/v+lxu9jk4RC2q6eV2pPwh0Tl/?= =?iso-8859-1?Q?aJT8KRbTbw8Fdkt/UL9BzbZ9QoyQ3Z1QtoGD9ohxeZG/kkDKk3gNBsbDcs?= =?iso-8859-1?Q?6pB8aAB2aTfi7fL8i9tNbmIozTnxZrcduqvkSB7bgmnm/K2Jp2VSbw7QEb?= =?iso-8859-1?Q?+Bj51EkmTqkogBgM3OQ/HdVDevF7ScsZRNfGP4JMJwHPiuyFuUnt2VnCz4?= =?iso-8859-1?Q?lG4EUyECYXJvpLDmSKUGbbq2DQPLs7dW5DLaWxPAyrTwTnOYUrSbEpFI/B?= =?iso-8859-1?Q?unxQgn7yJM3lB2Ocl4qQM5u283odVDgekkvh4cK4LZCJLlZ+07WtPeraZK?= =?iso-8859-1?Q?tJyXAgdEGY3GvGhI0oG2KSeu9UK2pB1531W0UImWiyFetnZtM8xu9NHgj6?= =?iso-8859-1?Q?KysIm82xL1I056jLT6A7h9jVYVxyV8DC2dpTmIubRBit9ZaOSh0DE0lQb6?= =?iso-8859-1?Q?SVvGi7VJiyhfWEB4k+vqVy9qQkzpX90i5Q+wC10xv0pP7tSkE4c9iDpbWk?= =?iso-8859-1?Q?HsIbHlDkVd+7DlqSheULyvXztyO8ZYy020RFWyz6mGVCRVnlHjpc/dFz34?= =?iso-8859-1?Q?QcOu44qxMiJABIea1OtlFWcPWyAwEfhK+lt/GG+mVcUsD+90WiNn2oDQWJ?= =?iso-8859-1?Q?nGJhhbWje/3MEs4vG3xQe2BIBkKuay0isplG9IzqDuV1qfw4c8yeMDoYc8?= =?iso-8859-1?Q?Pm4ooceDfm++rOBniJ8fFGo/Q9PpN5uvOW?= Content-Type: multipart/mixed; boundary="_004_CH2PR15MB3544221B808DE441B42A6518D68B9CH2PR15MB3544namp_" 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: 65272c7e-ee36-447e-46eb-08da6679e7b0 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Jul 2022 15:51:39.0199 (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: iAdLOpANJRVzy2C7LKLxgj2+NW7kCKwXxrrwd7LNoSN5ez5kEXDKJc/8UTdY9Pp2Qp3dy1ULZ2XVz2i5W2IuJA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR15MB4204 X-Proofpoint-GUID: Ea_n0O295aipeJazm4SwOh2fZ_jtHZXB X-Proofpoint-ORIG-GUID: Ea_n0O295aipeJazm4SwOh2fZ_jtHZXB X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.883,Hydra:6.0.517,FMLib:17.11.122.1 definitions=2022-07-15_08,2022-07-15_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 suspectscore=0 bulkscore=0 lowpriorityscore=0 priorityscore=1501 clxscore=1011 mlxscore=0 adultscore=0 impostorscore=0 spamscore=0 malwarescore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2206140000 definitions=main-2207150068 X-Spam-Status: No, score=0.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, HTML_MESSAGE, MANY_SPAN_IN_TEXT, RCVD_IN_MSPIKE_H2, 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 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Jul 2022 15:51:47 -0000 --_004_CH2PR15MB3544221B808DE441B42A6518D68B9CH2PR15MB3544namp_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi, Folks using AIX are not able to debug multiple threads. The reason:- Since a new thread addition causes a thread target to wait, in= AIX once the event ptid is got with the waitpid(), we need to set the infe= rior_ptid variable. Every time we come into aix_thread_target::wait() we ch= eck if libpthdebug might be ready to be initialized.In doing so we call pd_= activate(). Here the session needs to be successfully initialised failing t= o which just a pid is returned. We do not enter pd_update() in the former c= ase to take care of the rest of the thread addition process. The pthdb_sess= ion_init() is dependent on inferior_ptid variable as per our observations t= o return PTHDB_SUCCESS. Please find attached the patch. [See: Fix-for-multiple-thread-detection-in-= AIX.patch] This can be shown by the following program:- #include #include #include #include #include pthread_barrier_t barrier; #define NUM_THREADS 2 void * thread_function (void *arg) { /* This ensures that the breakpoint is only hit after both threads are created, so the test can always switch to the non-event thread when the breakpoint triggers. */ pthread_barrier_wait (&barrier); while (1); /* break here */ } int main (void) { int i; alarm (300); pthread_barrier_init (&barrier, NULL, NUM_THREADS); for (i =3D 0; i < NUM_THREADS; i++) { pthread_t thread; int res; res =3D pthread_create (&thread, NULL, thread_function, NULL); assert (res =3D=3D 0); } while (1) sleep (1); return 0; } Output without patch:- (gdb) r Starting program: /home/aditya/gdb_tests/continue-pending-status ^C Program received signal SIGINT, Interrupt. 0xd0595fb0 in _p_nsleep () from /usr/lib/libpthread.a(shr_xpg5.o) (gdb) info threads Id Target Id Frame * 1 process 29557240 0xd0595fb0 in _p_nsleep () from /usr/lib/libpthrea= d.a(shr_xpg5.o) (gdb) Output with patch:- Reading symbols from /home/aditya/gdb_tests/continue-pending-status... (gdb) r Starting program: /home/aditya/gdb_tests/continue-pending-status [New Thread 1] ^C[New Thread 258] [New Thread 515] Thread 1 received signal SIGINT, Interrupt. 0xd0595fb0 in _p_nsleep () from /usr/lib/libpthread.a(shr_xpg5.o) (gdb) info threads Id Target Id Frame * 1 process 29557210 0xd0595fb0 in _p_nsleep () from /usr/lib/libpthread.a(shr_xpg5.o) 2 Thread 1 (tid 120197499, running) 0xd0595fb0 in _p_nsleep () from /usr/lib/libpthread.a(shr_xpg5.o) 3 Thread 258 (tid 130486575, running) thread_function (arg=3D0x0) at continue-pending-status.c:36 4 Thread 515 (tid 131666371, running) thread_function (arg=3Dwarning: = (Internal error: pc 0x0 in read in psymtab, but not in symtab.) 0x0) at continue-pending-status.c:36 (gdb) The gdb base test suite numbers with patch:- # of expected passes 14094 # of unexpected failures 8770 # of unexpected successes 1 # of expected failures 10 # of known failures 46 # of unresolved testcases 121 # of untested testcases 84 # of unsupported tests 61 # of paths in test names 2 # of duplicate test names 5 Kindly let me know what you think. Thanks and regards, Aditya. --_004_CH2PR15MB3544221B808DE441B42A6518D68B9CH2PR15MB3544namp_ Content-Type: application/octet-stream; name="0001-Fix-for-multiple-thread-detection-in-AIX.patch" Content-Description: 0001-Fix-for-multiple-thread-detection-in-AIX.patch Content-Disposition: attachment; filename="0001-Fix-for-multiple-thread-detection-in-AIX.patch"; size=928; creation-date="Fri, 15 Jul 2022 14:14:29 GMT"; modification-date="Fri, 15 Jul 2022 14:16:07 GMT" Content-Transfer-Encoding: base64 RnJvbSA3ZThhYmUyNThmNjdhYmQzODU0ZmVkZjU0ZTQzZGEyYjEzNTQxOTg2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGl0eWEgVmlkeWFkaGFyIEthbWF0aCA8QWRpdHlhLkthbWF0 aDFAaWJtLmNvbT4KRGF0ZTogRnJpLCAxNSBKdWwgMjAyMiAwODo0MDoyNSAtMDUwMApTdWJqZWN0 OiBbUEFUQ0hdIEZpeCBmb3IgbXVsdGlwbGUgdGhyZWFkIGRldGVjdGlvbiBpbiBBSVgKCi0tLQog Z2RiL2FpeC10aHJlYWQuYyB8IDQgKysrKwogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygr KQoKZGlmZiAtLWdpdCBhL2dkYi9haXgtdGhyZWFkLmMgYi9nZGIvYWl4LXRocmVhZC5jCmluZGV4 IGQ0N2Y1MTMyNTkyLi5mNjZiNTkwNGFlOCAxMDA2NDQKLS0tIGEvZ2RiL2FpeC10aHJlYWQuYwor KysgYi9nZGIvYWl4LXRocmVhZC5jCkBAIC0xMDg4LDYgKzEwODgsMTAgQEAgYWl4X3RocmVhZF90 YXJnZXQ6OndhaXQgKHB0aWRfdCBwdGlkLCBzdHJ1Y3QgdGFyZ2V0X3dhaXRzdGF0dXMgKnN0YXR1 cywKICAgICAgcGlkLW9ubHkgcHRpZHMuICAqLwogICBnZGJfYXNzZXJ0IChwdGlkLmlzX3BpZCAo KSk7CiAKKyAgLyogSW4gcGRfYWN0aXZhdGUgdG8gZ2V0IFBUSEJfU1VDQ0VTUyBpbiBwdGhyZWFk IGRlYnVnIHNlc3Npb24gaW5pdAorICAgICB3ZSBuZWVkIGluZmVyaW9yX3B0aWQgc2V0IHRvIHVw ZGF0ZSBtdWx0aXBsZSB0aHJlYWRzLiAqLworICBpbmZlcmlvcl9wdGlkID0gcHRpZDsKKwogICAv KiBDaGVjayB3aGV0aGVyIGxpYnB0aGRlYnVnIG1pZ2h0IGJlIHJlYWR5IHRvIGJlIGluaXRpYWxp emVkLiAgKi8KICAgaWYgKCFwZF9hY3RpdmUgJiYgc3RhdHVzLT5raW5kICgpID09IFRBUkdFVF9X QUlUS0lORF9TVE9QUEVECiAgICAgICAmJiBzdGF0dXMtPnNpZyAoKSA9PSBHREJfU0lHTkFMX1RS QVApCi0tIAoyLjMxLjEKCg== --_004_CH2PR15MB3544221B808DE441B42A6518D68B9CH2PR15MB3544namp_--