From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id 7XSvEZ4XT2eGrQIAWB0awg (envelope-from ) for ; Tue, 03 Dec 2024 09:37:18 -0500 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=yahoo.de header.i=@yahoo.de header.a=rsa-sha256 header.s=s2048 header.b=bKeGdxKJ; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 3F5051E0BB; Tue, 3 Dec 2024 09:37:18 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-5.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=4.0.0 Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id B0BCB1E092 for ; Tue, 3 Dec 2024 09:37:17 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 4EE393858C48 for ; Tue, 3 Dec 2024 14:37:17 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4EE393858C48 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=yahoo.de header.i=@yahoo.de header.a=rsa-sha256 header.s=s2048 header.b=bKeGdxKJ Received: from sonic308-17.consmr.mail.ir2.yahoo.com (sonic308-17.consmr.mail.ir2.yahoo.com [77.238.178.145]) by sourceware.org (Postfix) with ESMTPS id 4765A3858C41 for ; Tue, 3 Dec 2024 14:35:03 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 4765A3858C41 Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=yahoo.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=yahoo.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 4765A3858C41 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=77.238.178.145 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1733236503; cv=none; b=j9lAwPiIxT9Y6WBFb1tSCCipUYRNW5Gbd6RFmFjnv81VLiUQzHjkLYRMkbdGBgVpd6wrNS0f7FlDFbQGhYy/FsWJVoHahb2C9FWHicR32g4UuGiJ6lYnrB02/99fbvvnCH+EC8EZmymG83JOBCEC654hHAYDJwY37ft3yoiYeO8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1733236503; c=relaxed/simple; bh=kd7eY/P+b8DM0+Ah1AnPhIznNBXxC+wjgrrapaRpVzY=; h=DKIM-Signature:Date:From:To:Message-ID:Subject:MIME-Version; b=VxmZXlTspY1aSSlrypgQdMX8iR1fqwrIHyWmVhAWBxJhEO0dtplTajlTdYT08v+Yh0joSkmSeYow53F+76fh56mYxuSr5Hpt0SeByG+pXiVHQgOunq1/BmTnQR0MY1LfQ4GKPWrm5I2pMBItEjEpmBm4gNAeX+3V+VxiGfe9AWI= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4765A3858C41 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.de; s=s2048; t=1733236501; bh=kd7eY/P+b8DM0+Ah1AnPhIznNBXxC+wjgrrapaRpVzY=; h=Date:From:To:In-Reply-To:References:Subject:From:Subject:Reply-To; b=bKeGdxKJyo9UCHrKgSbOrqUOvSgTXtR8f7RfFEVQnwYox45RJCNY8lMuVWTCBJVOfmLACqxEoVf6PG0Eg3K/Be/cQsZVipjumCKjmBzd+TBehkuRfm0vVAGBoiNKygfSKG8DuuY4VlhUIlKrLeLoAxS21cEuC4833RsD64qqvjxB9d6IvIrGW79a80DU3QokYQXI1rllhNcOgj0Tc1PrOCQUhLsg1kG12pCIf4zj5OqQ/y6AUOWoCu0HJ7Xub7f9rDJKoE6v9W9p2AFJkCjjNtjOEuNhXrV84lw7PP3aHXD0nzy26Mj7rcFErvIs2R6sW4hP+rbQbiLDTMp8eDU5Pw== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1733236501; bh=U3N2XrETtf6pAlt87PM1LDROnxjQ6x98c0EOV1PehZF=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=h92leI7isHBJGD9R++0JduSDGL5Yn1dv1yixhgsrlR2TQtMKXkn7x4ob4kl68Cyli6o+7clL3l6uSYY4Mm6BbAu2qO8JZ/Xyyx166GNWzbKKzbuaaBoqP8XDPgs9ssBuvAi2XS1bFiINKIYUYttgqtOcEFGvmtrudFqDY+kXzGr3pvQNe5s2txWJ5hEe4DECnv+0jcIZti5lkKTZZJoa9bTKJHE+XgM29gBDXFmqI4UjmdLVSAa9Tz4zXCctnOtzxjgkxTKnwZoanceeIlPx5OMvKx3Abfhm9mz+FYf0bithtImg8pqM6Tn34z5XRpUOcHMgC+RLo2cE01ED+WANKQ== X-YMail-OSG: ewOj7MMVM1lMIF8HpeOni21JuLe5sIEXbNr3c2jtjafpGsSEpE6GzaRFjrU6mcs H8GZ55NORAdFFtQipSbeEVZMxRiop78QUD8pWOL0CgP0vGo4KhTa4jC0ALXh08e95fbuaRxncRhT 336hmGlwnlin1WFKDZD4r4WBNiIBe5PYMmGKIo1DB7k7x83gV1MxosjHYpfqz7eyHtoL.mDEBJ3p tmeZW_YNtMSIaDFVBl0b.N5trmXlkU92yF_vfhCKYoWEQMN9VBR3qCp0sB35AfaOiNpczqG3B.CB 04Zn3TCxBxikgAVUk5b4cr9cJ9Oway_HWEAW.f6KZtjAOcrR1fc8bYqeTZoUYokeSlLMkhiNYvVi R9ILd5C3oCka0ou1.nVsFR51C68KapbdxPyFQ1Rg9W70eekvU3mPIfJlJhkkwWoqHrblaS0frjVW 2lewG_PhTiTdvD4.hjX91sMkS2iymCl8TJZzq1V7kO518ZOf00MOrAPXaf5HUx1wNK7e_62DQfkj vRabQ_lUGexwQ5hBuLqXRteKaQXCOiZaq1CfFbsZmbMqWONSkaVSq4DS.iGoDg9EPBQNlZODTvof tqJIvdF16fMFKmHd1n4Owc2fqmE7.0mI.RFw9fXDeULkzYogdiZpff8XFs9mmnh3ry_Su20o2R9U GtJ1zC.bQ.FzC5HgHPukVrCLDR1UhqaYCdGfGeVSN5bhnQSA8Dn1wv6sn3I8i4gl73Tf3tjkhKIj 5mSKFxbe8YKp25mOm2XtIToZvdojtp68KNMnogV1Ap2U6ea1p6ZPhX_1uTu6T.uVR9dS8Iaujgs1 B2e9ebQ3ShJzy9sVcNOBhvuhYCKulT9a2arq_ghBsgWvwjpMleoZFuY1Sl9Kzx4eL6arZi71Ry5z wzh3gY7yNdIbfY9ap2uiHK4setvJv_dMRYRofLuixvx1DOgOgeCLY6J0raItLYdSSR16xAQM949i 8lPqqrdxiuSQ62nQ26d5N_40wbPAs2Od3DMSkKAVG19H2GxQrPIZdZFqrYKSVzhWRjGPDYk84dAC fc657r_j5qPym1aC8u867M9CUC2wYZ4nDWJFOtNN4TrCARHDLf1AyvYiMvT40NpqoI2sQ19L0k4q yMwjjWikR1D2WX8Kayd.QRL4dCWfDqKWogJxzqU2bn83GlZFbVTKoJh6BwTU.ExKItgrMS_vPLyb kYAEKpgiKaVrFBcGaaWUwYkZwADywJUDuQpzgfCJe4rYbzlkjEIunJvL1atxqpQ7HWXK5JtEkPBU LVOpD3gUYZjzkCottP_6i9DXjwOlVAiPx.QGpvac4PaME8y4GT3Xfo0x0uP7aDwwJhNs1QMuDmBb SQGCRIi6jphZtoBBltDafVSOkEGBoJ1imsnLRzaOZgmZEHVomdbTB7os05wjlvbpNGt5x_dB5xOQ TZd1nFUsruYgHy1rn_hbQpIiaRBLiR__5TMwaYzwPsW.0uB6rsl2XMzVNDRMDkibK26BF_0.1QGY 9n8R3g10racdtUYmG.PBqDwWiibjYbjSKALW5wbh0oW2lFh.u_LImA52EKNGtwS1SaAHq0Q7Hjk6 kxl5vD1dLl.8REXAYerRCttpmXtK7jkkD7Ecaouv4V64rfbsp31JHf0eRAc9miCnkyhhtYga9HcY ZfH.1e5JCjU40ZrWfsmaCMuVyD0xdcEdSqsy9wYps6GFxpAE_Sr0ynhxQI0i4sZ3TtD4vGlWKCS3 Rj_NHQVrWbxld4WRC.MgpPoomC62iqM2CUS5mbytUymHB30y8RELXX5VsNaMWz8MouHqz0nBmzVG 6QVJwnxXG3LI69uVXQ7uaHBUa.IicyKp9OsAFBNs1DXQCHce_khHLxnySL8EGF5NuB0ebwgxBlll xpO3p1hpOCb0m0evdTVVsf2y1.aWRF3rUn51yD.RLbaxrlYM8KCbXKurMy3UDPZloaTocxXb_FxK 0DeJWVk8YNoR7YNPlakBZpLS5kCr_B6JfE4NYkcJdrFsW1UwMoxiyPCKGHah_3Tt3SE6SR_TtPIV asuqRX3lCvNl1MQxuFLmBAuFprixZOo21Q.6QUqUt3AZyol6K7nlovacFdJPRh1a6r4seXq4Ub5l bGerO0KLfOI1McgOxSx03jeGMV0.nakyrZTV9VHb8px9J1Xm.QhB25GayrsFiODlSKmI6V275vir U5dERoGdZ3cy6FCHzMxorh80pXYOF2jxvoWcRmWNPTyu.cYwA1zgaPxtk3GWQ6KQJeZL9YfeT_3C Qh1Yr959SgH2jWhbTGUHBDA-- X-Sonic-MF: X-Sonic-ID: 994a6ae6-1d53-492e-b478-bae8e1761dfe Received: from sonic.gate.mail.ne1.yahoo.com by sonic308.consmr.mail.ir2.yahoo.com with HTTP; Tue, 3 Dec 2024 14:35:01 +0000 Date: Tue, 3 Dec 2024 14:34:57 +0000 (UTC) From: Hannes Domani To: "gdb-patches@sourceware.org" , Simon Marchi Message-ID: <1118788268.7833323.1733236497630@mail.yahoo.com> In-Reply-To: <20241202194722.1297596-1-simon.marchi@polymtl.ca> References: <20241202194722.1297596-1-simon.marchi@polymtl.ca> Subject: Re: [PATCH] gdbserver/win32-low.cc: remove use of `all_threads` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Mailer: WebService/1.1.22941 YMailNorrin X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org Am Montag, 2. Dezember 2024 um 20:50:34 MEZ hat Simon Marchi Folgendes geschrieben: > Fix this: > >=C2=A0=C2=A0=C2=A0=C2=A0 /home/simark/src/binutils-gdb/gdbserver/win32-low= .cc: In function =E2=80=98void child_delete_thread(DWORD, DWORD)=E2=80=99: >=C2=A0=C2=A0=C2=A0=C2=A0 /home/simark/src/binutils-gdb/gdbserver/win32-low= .cc:192:7: error: =E2=80=98all_threads=E2=80=99 was not declared in this sc= ope; did you mean =E2=80=98using_threads=E2=80=99? >=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 192 |=C2=A0 if (all_threads.size () = =3D=3D 1) >=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 ^~~~~~~~~~~ >=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 using_threads > > Commit 9f77b3aa0bfc ("gdbserver: change 'all_processes' and > 'all_threads' list type") changed the type of `all_thread` to an > intrusive_list, without changing this particular use, which broke the > build because an intrusive_list doesn't know its size (we, could, > Boost's version has an option for that, but we don't need it at the > moment).=C2=A0 The subsequent commit removed `all_threads`, leading to th= e > error above. > > Fix it by using the number of threads of the current process instead. > My rationale: as far as I know, GDBserver on Windows only supports one > process at a time, so there's no need to iterate over all processes.=C2= =A0 It > would be nice if someone familiar with the Windows port could confirm > (and test) this. I tested it now, and there seems to be no problem. But this if() actually never triggered for me, I never got an EXIT_THREAD_DEBUG_EVENT for the final thread, only an EXIT_PROCESS_DEBUG_EVENT. I tried it out on both Win7 and Win11, but maybe there is some special constellation where this can happen, or it was different on earlier Windows versions. Tested-By: Hannes Domani Hannes > Change-Id: I84d6226532b887d99248cf3be90f5065fb7a074a > --- > gdbserver/win32-low.cc | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/gdbserver/win32-low.cc b/gdbserver/win32-low.cc > index 0174a32e5d19..ef00f3452f31 100644 > --- a/gdbserver/win32-low.cc > +++ b/gdbserver/win32-low.cc > @@ -189,7 +189,7 @@ static void > child_delete_thread (DWORD pid, DWORD tid) > { >=C2=A0=C2=A0 /* If the last thread is exiting, just return.=C2=A0 */ > -=C2=A0 if (all_threads.size () =3D=3D 1) > +=C2=A0 if (current_process ()->thread_map ().size () =3D=3D 1) >=C2=A0=C2=A0=C2=A0=C2=A0 return; > >=C2=A0=C2=A0 thread_info *thread =3D find_thread_ptid (ptid_t (pid, tid)); > > base-commit: 3eccfdce99e030be759ea20c66d6f78978b11a25 > -- > 2.47.1