From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id CU9/JrfFv2o5IioAWB0awg (envelope-from ) for ; Fri, 02 Oct 2026 10:54:47 -0400 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=efficios.com header.i=@efficios.com header.a=rsa-sha256 header.s=selector1 header.b=PI2hzbuR; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 8AD081E04E; Fri, 02 Oct 2026 10:54:47 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) 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,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [IPv6:2620:52:6:3111::32]) (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 1CEE81E04E for ; Fri, 02 Oct 2026 10:54:46 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 3EE174BB24CC for ; Fri, 2 Oct 2026 14:54:44 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3EE174BB24CC Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=efficios.com header.i=@efficios.com header.a=rsa-sha256 header.s=selector1 header.b=PI2hzbuR Received: from YQZPR01CU011.outbound.protection.outlook.com (mail-canadaeastazlp170100000.outbound.protection.outlook.com [IPv6:2a01:111:f403:c104::]) by sourceware.org (Postfix) with ESMTPS id C12084BA799D for ; Fri, 2 Oct 2026 14:54:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C12084BA799D Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=efficios.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=efficios.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org C12084BA799D Authentication-Results: sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:c104:: ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1790952859; cv=pass; b=gJjsN/5+KePwXTNGYC9XgejKlgpkJxb0aqqNTvtKfztAPaXE0AwmCUm147qt1cn5RXgV7HCQusfxbP2vz2RqPWfD4Pt2tfIE+RZb5ZsicdKEO+qQ2GyH6rRF9qmROAzAztp4R1vZvkOi+hqRXWEIQW3jKFsF3UGsYkPdLFat+xY= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1790952859; c=relaxed/simple; bh=JGcK1tCjHu6vhe4mAmG+chWzYSk36pg8TY8eSEbP1UU=; h=DKIM-Signature:Message-ID:Date:Subject:To:From:MIME-Version; b=wjGL8hHgK5mdaCClhjo4CNAjYqEmxnAJwsR9OS98rR44Z8DPVmHuoVpPPMrTLr6LV/PgvwYD7UWdTF0W1qF4Kz6rcy5b+Pw2ErWn0d1zA6a18jSxX2v1H8iD5FyM8TrFfq6c0f8m01WL8SOqAmrugpH/9Lv83aAzMoRHISbuwuQ= ARC-Authentication-Results: i=2; sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=efficios.com header.i=@efficios.com header.a=rsa-sha256 header.s=selector1 header.b=PI2hzbuR DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C12084BA799D ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=XR15ZOCNBMLPbbPh6Yl5pIOk5pBUoAequLV2U4R1rb1DIHOMiCaR3karNKK4M/YNHKpO0E8VhM8gXTz3pI3856RTxcnnf3My9CJ0zxq0vIU3x2U/wX9pcbIxIXOMu3SHDCJvbolr2biUS8wlerLe1F5jTSNPWhrwJGjOz+/FRcQZim3x6y++yIVoTsMpJFw4E9WhRFtNHfYvuddD1OMW8NfZL0a0F3ko3vrezgpN87uaen4HVOh16ycVMD2XHfaKx3ZsZtm0nJi6/atRtEshKwxRFvcrlGNs9LLTHZZlpmOJzhtmS/jrh6gsLQ8VHpTtVjkBioRr1uUJG6f9W+bfew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=duzTC3W4D9qzwKDo4ffXlIJC87IGD5MfAahUSkDJ7tM=; b=rE9kMKguqoevcuwidmLv0jmnAxCPxQOkXkkTKikoNjiRsceCc2XNVYhTdctn2pJGOouFdtmmtyLqDtRY06zAJ4ZvIQCP20wyC4/CwJIGD7EmT2bsqPrmgIjW/0O4FRVtYVZHKEiYbuDsw8Rozyhgp7pSnsGA5SC+ggPxrTZnZCkSQgvV6fo9+wSJoGNXxpZK/EQ4Cdmb1Wm2o0VmRfp6A9s+3Olkrf+Rm1PBaZ1v74YYDz2XiY0/GmgVqdHYImOvXZhvMY2CzHx2ivT9UZ+ovV5PDibHl5HhCX/I9CspDTVqCau7X69552bl9zVRFMkwOCa1gwDkC3GMDaUsDZXHcQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=efficios.com; dmarc=pass action=none header.from=efficios.com; dkim=pass header.d=efficios.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficios.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=duzTC3W4D9qzwKDo4ffXlIJC87IGD5MfAahUSkDJ7tM=; b=PI2hzbuR9Hmc7tJ5EB4AHxdyOu8aWtu3Crd1Q608zcuwKDRUTxTjYIv2+Uh8JT6KZb55U+FBcv4fjZa2uP+3b8UaopE2x5SiaIg+TV5CGDSsTG9xpqbyhXvFLPBCHOkZ1EAhYWhJNZST1G2fmVOD7h+b4hrI/smS02T03F54nxHg+1ME9ywNbx7gptH702qA/lESzyNhY/+QOXwvVuJ0sUl0gyPmEu6ocHh/u/KCGTULNE2gPt6bwE1DTWSIc+1WyBWcvNRqktlNL/Jr6fQxQIxjFl1znu3eKkSTkhqosIU0qEqHqK9L+F7YOXTutM07stGd9+FJtQeTX8Yv5h6EDg== Authentication-Results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=efficios.com; Received: from YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:2c::6) by YT8PR01MB719683.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b00:11::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.472.19; Fri, 2 Oct 2026 14:54:13 +0000 Received: from YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM ([fe80::bbfa:179f:fdc8:b15d]) by YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM ([fe80::bbfa:179f:fdc8:b15d%7]) with mapi id 15.21.0472.016; Fri, 2 Oct 2026 14:54:13 +0000 Message-ID: <651ca3ad-a2ca-4560-8bea-771bd39e46cd@efficios.com> Date: Fri, 2 Oct 2026 10:54:12 -0400 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 1/2] gdb: don't return an exited thread from any_non_exited_thread_of_inferior To: Matthieu Longo , gdb-patches@sourceware.org References: <20260917201755.589524-1-simon.marchi@efficios.com> <294f46b7-a6c8-4f5e-9a26-8454910d6c21@arm.com> Content-Language: en-US From: Simon Marchi In-Reply-To: <294f46b7-a6c8-4f5e-9a26-8454910d6c21@arm.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: YQBPR01CA0154.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:7e::12) To YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:2c::6) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: YQXPR01MB5418:EE_|YT8PR01MB719683:EE_ X-MS-Office365-Filtering-Correlation-Id: f28dbb34-9844-43b7-f813-08df209505b5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|10070799003|366016|23010399003|1800799024|10067099003|56012099006|4143699003|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: Q8RpfFBsDC2nnpGTaXTWcv+0EMxMoRvhdecgvH547b4QQEAomrsc40PYRpc5MILzYLyMmf4z0FpwZN82JSzyZIXGLZT/Z+ZrI2a1c4r+6qYurjnVn3u2gZCg3U/91FwmvAW7gQQbhnwGgEqiKiUr+KWojgTeVNjVdccl7Cuo7WGiHX1fTdneqP1RTHzx0fc9DbVMA0KBcl0OQdQIMUEeP7XL8ovrfFtOeHCkaGd2q/ZX1lQrcnowbuTS/Q5gQ2PhKzv6dGSV4fVv8+O0vNJiZKSVQ7yiGjtcXwsPGvzAJx74dpHUuqfB+fZAnExpgcalSL5NmCnDpfi+RuVGhOO8N/5MBfI8e0HllcJfDJ5U7pxAmV2bmTywgUHj8Vu6z59xnkL2hbUQTHvag0h5qEcgi2gPYqZdZ2yJpzP2fDh+wJiTaN0rpmIZpRX7EXl0nS+Y15xbuW1xiq1f92yevGgAPQRJN6G9yjhgBJnl9ZMOe56NH1oYcAVhI6bQpeesgbF7l+v0OWLzkOUWtyQpEDb2mBDBudtzIOR6dzfUw7CF06Wb99+ErpRRo5ssip/4NDZHlRjoeFfwK1PJzRHZObE2oqW1pkvltXghP3rduVPn9WlRXLB6LJudSymOodch3oTe26r6EkQrV+IWRjIApWixE42ifIjam+KOW8reRYmVyAA= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230040)(376014)(10070799003)(366016)(23010399003)(1800799024)(10067099003)(56012099006)(4143699003)(18002099003)(22082099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NGYxdjRKeEdHVnE3WVZCZzVXUVk0eU8zeERBMGdxc2tRemxDb29Qam5kcGwy?= =?utf-8?B?c0VQcFJhcE9VY1VYYlJYZ3VqWEplYnYwbFVoSU05M3QzR1NySWRhN2RhYXdM?= =?utf-8?B?dTU4RDcrVFQyQVZjT3NFUmNiZC9FcGRISUtTOXBKU1VIK2ZycFlSNWUycmtM?= =?utf-8?B?MmRrSDZ2bytmM0V0TmxjTHhOdExZSU1DbWdwdGcxM3JweHNDRzlLNHUxQTdI?= =?utf-8?B?S1kwZndyZlNnSEgzMTFKWVFYcEJYNmpWeWV6NlhUd2dWUTJQcDQ5bHBtMjZX?= =?utf-8?B?ZDllcmlIZlg4VTZuaXVuU2pzU1ppV1MzSjdoQWdCNmpVRHhzZWNVWjRBUlMy?= =?utf-8?B?eDJCZGRDbVNkTnZmZU1HRzNmeUZqSnBJcm9EWVNJWURhcXZ3djYyTTMwQ2JM?= =?utf-8?B?NjlPdmozRkV1OEdiUS9FdGEwRnFKcVpMRlJ3endQYllmOUZjdDY1bWUzRGFW?= =?utf-8?B?MENRcmFLa3BUbWxxcHNZanpBWDFkallzSC8xYk1jN1lLSm0zN1JNY3ZTK0pJ?= =?utf-8?B?T2ViUjN5VHVvOXJVMW80Q0trbUxJdGNGMVhSWG9tNkNGQUZ6bVJPQTQvQm8z?= =?utf-8?B?VXEwaXp0djhIcnBPV0kxVWx6ZHFtUW5FSGQxaUFyZWN5M0NZYmxXS3hxKzkv?= =?utf-8?B?aEFKTERQVnF2U1VRV2lrQXV0dlh0T2d3bHFEVDZiZUtaRU9pellWcUduMmlT?= =?utf-8?B?cXhkcVBWRCtkbmFRakVBYzRPMG8yeGtMc3Z1OEN4UjAwMVlvNnZORlhVSkVa?= =?utf-8?B?K3lzUUpVbUl2RkQzd3htclRXdm02aUM3Wld3a3ZGMVZJTElFTmxwbTVnVWdP?= =?utf-8?B?dU9tMWhjZFBnS3pGMUtJQmE1MDNlTFVHUzM4eFEvOWJWTHdvVGhYeTdIbzdN?= =?utf-8?B?R2xZeXpmUVh2TUR2Q0pZZzBpVVhEMXNPTHFFQkZ3U1Q1K3dJRHRYbGh6UGxU?= =?utf-8?B?WGNDY2FMcTB3WElUdVBkbFU4MzlaRVdTMUhnV2RFVm5Dc2gvaFhkOUM0U2I1?= =?utf-8?B?K2x1bC82aXk2dWE0U0RvVWtETFZuajVjQVE1OVRHY1RNdjNpZlZ1TUlCVmdy?= =?utf-8?B?cjlIQlFPdjBhYnBMc1QvV052UzJzeUZ0a1llaHpPaVYrcVVqaHB6NEo2NlVG?= =?utf-8?B?bVI5VTAxZFduOTNPcjFiYldScHF4VHhkUHBXbmNqSmVwUGJ4aFBhblU2U1Jk?= =?utf-8?B?RHIrMUxwWmkwMG03bE9FOFNLREtzZXhZeks3WjFDZk04TkIyMUdSUlZ1TEl3?= =?utf-8?B?RlRFU3QxbWVzYjJQS0VXd1BJZVgxS1M0WHA1Y2JNbThBTWJXdVdiTXNZazJM?= =?utf-8?B?VmpLdXJzaURMY0lJRlhKVnVUUmRtejJQU2FUVW5zRGhwZ0V2NnR6R0VxVi9V?= =?utf-8?B?RlB6SUhtUFNDaG8wZ1BXSHErZ1dkeFRzOEFWcERXMTJHVlVrZnZ1Znl2MkpP?= =?utf-8?B?YTYzQmljck5XbHNHc3BUSXR1Z0V4SHB4K05JNHJLV2VaVTRiSjQrS01uMzdl?= =?utf-8?B?WEdSM3ZmckJWMms5NWZEVXQ5eGVUSnZHcTBuSnJwV2tpYlB4N3lUU3ErVVpY?= =?utf-8?B?QmtKbkNKMWVkS2RaQVk2ZUFFcHE5WTZ2VGZIY1FTNFpWeVROS1AybUN3QWZR?= =?utf-8?B?RDVkSE45MnRMR2dBTTk4Q0RqcmJjSVFvc0NEL2ZucFE2MXVOMncwQWEyZ1Fi?= =?utf-8?B?cDJEQmJMU3RGTUlqU2dkT2Y0NENzUFRnTmpyclVHblNDeXdHWWZZTEZhUldL?= =?utf-8?B?WFJyemszYUNvQXc0RmJUUjZjWDdOeERicnhSdlEzcCtEL0tjRUlPK1ZTNUJ2?= =?utf-8?B?Qng4QWFUdGQ5d0h1TzM2Y3ZkeTJIbE5ZVm5ETjlraGZBOUpaR0Y3cWJyVlBm?= =?utf-8?B?VzlSaGZwbmNxSjRkbDlpUHY1V1QvR2hjbEQrTWdsWlEyU0lhQnUxdWJWSFR4?= =?utf-8?B?N0E1aXFod3FDdzlNNHZzV25Gb1V0UUc3L2pXT3ZiQ3B3cXNHUDVlekdhQnN2?= =?utf-8?B?N2Jjb1haMHcwR0JQRnRaYWhpOURjblpEQjYvajFYd1VySngzL0RRYlkrRHR0?= =?utf-8?B?NGMzOENwWGVJWSsxa3BoUTNhVzRaa3BYNlpFYnFSTHRNRWx3SzZyL3lqVDZ5?= =?utf-8?B?OGI4NVBZd2FqOHY4N0l3Q2RTcUViOWlTTTE5UlcyeFVuRHBGWU85RlRvell1?= =?utf-8?B?aWsvaUgyWHFsY0pHMFRIakJRY2tOMVZxUk5ad055OENmdkNRYXNNYkFMZ1F3?= =?utf-8?B?K3J0eE9mcVNTUVNTOXA5M1pJR3RDWXcraGV1WkVUbnZvVjBTOENOYmF3bGlO?= =?utf-8?B?Y0tkRC9ObHQwVlBhOHg2SUlyUFlNV0wxRjByT1lMT1p6MTcxNEI5cVVla04z?= =?utf-8?Q?Pdp1anDFdYr9eZGsrqnsXqdnshX69Ehxpwj8jOIx3yv/Q?= X-MS-Exchange-AntiSpam-MessageData-1: bDb+SZob2gV7Eg== X-OriginatorOrg: efficios.com X-MS-Exchange-CrossTenant-Network-Message-Id: f28dbb34-9844-43b7-f813-08df209505b5 X-MS-Exchange-CrossTenant-AuthSource: YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2026 14:54:13.0028 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4f278736-4ab6-415c-957e-1f55336bd31e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: K2ip84EeAx2HStmlVD2XhqX21EojG0NGEbz2kjy6DRPc21hag9gmNZQBtHJ9Bhj7G77IkfMTVkZNTM6LK2q7jQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: YT8PR01MB719683 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 On 2026-10-02 07:12, Matthieu Longo wrote: > On 17/09/2026 21:16, Simon Marchi wrote: >> any_non_exited_thread_of_inferior prefers to return the selected thread: >> >> /* Prefer the current thread, if there's one. */ >> if (inf == current_inferior () && inferior_ptid != null_ptid) >> return inferior_thread (); >> >> ... but the selected thread can be an exited thread. This can happen in >> non-stop when the selected thread exits, in which case it is kept around >> but marked as exited (see thread_info::deletable). >> >> Check the current thread's state before returning it, and fall through >> to the existing loop otherwise. >> >> Note that we also have any_live_thread_of_inferior, which is similar but >> differs in subtle ways. We should probably check if we can merge them >> at some point. >> >> Change-Id: I620ee200037c6a3fd3d59b96f16750d6b962c724 >> --- >> gdb/thread.c | 8 ++++++-- >> 1 file changed, 6 insertions(+), 2 deletions(-) >> >> diff --git a/gdb/thread.c b/gdb/thread.c >> index 0f86f6efe380..e14254619e34 100644 >> --- a/gdb/thread.c >> +++ b/gdb/thread.c >> @@ -670,9 +670,13 @@ any_non_exited_thread_of_inferior (inferior *inf) >> { >> gdb_assert (inf->pid != 0); >> >> - /* Prefer the current thread, if there's one. */ >> + /* Prefer the current thread, if there's one and it hasn't exited. */ >> if (inf == current_inferior () && inferior_ptid != null_ptid) >> - return inferior_thread (); >> + { >> + if (thread_info *curr_thr = inferior_thread (); >> + curr_thr->state () != THREAD_EXITED) >> + return curr_thr; >> + } >> >> for (thread_info &tp : inf->non_exited_threads ()) >> return &tp; >> >> base-commit: 0595410d007e5f628e14717cd268e557e166675f > > Hi Simon, > > Given that there was no further feedback, would it be possible to merge this patch and the following > one ? Or is it required to get an approval from another maintainer ? > > Matthieu Since it's been a couple of weeks and you tested it, I'll go ahead and push it, thanks. Simon