From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id mFPiK3ZoF2piOiEAWB0awg (envelope-from ) for ; Wed, 27 May 2026 17:56:06 -0400 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=H9z47/Vh; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=7UN/lOVR; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=H9z47/Vh; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=7UN/lOVR; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id A1FBF1E024; Wed, 27 May 2026 17:56:06 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-2.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,RCVD_IN_VALIDITY_CERTIFIED_BLOCKED, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.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 756C91E024 for ; Wed, 27 May 2026 17:56:05 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id D3AA04BA23FA for ; Wed, 27 May 2026 21:56:04 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D3AA04BA23FA Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=H9z47/Vh; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=7UN/lOVR; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=H9z47/Vh; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=7UN/lOVR Received: from smtp-out2.suse.de (smtp-out2.suse.de [IPv6:2a07:de40:b251:101:10:150:64:2]) by sourceware.org (Postfix) with ESMTPS id 387F64BA2E06 for ; Wed, 27 May 2026 21:55:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 387F64BA2E06 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 387F64BA2E06 Authentication-Results: sourceware.org; arc=none smtp.remote-ip=2a07:de40:b251:101:10:150:64:2 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1779918938; cv=none; b=ICv02r+Q52IKXq54GHfDLkERl1NUt54YMAs7SjM+hOK/H9XOG8vFbALISaI61qVX7PbgK5nErUX3qfTX0RzPfmSXSsjn+el06zAepuQTVHfuy9oOSbWQB/s+znRMyZUhEkqy0bnts543ODc/heArfFFQsdAV/fH7yHKrOBRlNPo= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1779918938; c=relaxed/simple; bh=XmISGSldxS17E1+iJ2CHtlkQTluaxG++8e49BxPHYNM=; h=DKIM-Signature:DKIM-Signature:DKIM-Signature:DKIM-Signature: Message-ID:Date:MIME-Version:Subject:To:From; b=uJl2aD18kXPb1EBJ0u7rD1h8CUYIug0spvqdKpRTqXxNYRJIXkjXc3h61AcLVxrY6UZ/knCTKM3Um+lY9hZ+21ugmCnoMnHftTo8ry+PyZxNxDV4xDrVgJlxYgBnIURAnHU9C9DDULub72XnGhZ0kf79AXHjryoNUiD41IMNXII= ARC-Authentication-Results: i=1; sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=H9z47/Vh; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=7UN/lOVR; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=H9z47/Vh; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=7UN/lOVR DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 387F64BA2E06 Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 0FDA966D10; Wed, 27 May 2026 21:55:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1779918937; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=t+/bkkjTjiIkw/uUSdAQyEwCxHkQeFAzyxTPipn4de0=; b=H9z47/VhXGsIlufBqPcCHY2pKsEPSlNHEwLmre2IHIRxhhjpAWv9oeLv+8iOoLbRvaFnBS LCLVeQMaWUYKWBly/51AxETepe+/1PrtFkgSjMEM3PTNmFeQZxdQJiw9umNc93PxPZM1Xq cSF+E6p/1JCFh+8v1mWiqNOZQ2302mc= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1779918937; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=t+/bkkjTjiIkw/uUSdAQyEwCxHkQeFAzyxTPipn4de0=; b=7UN/lOVRfl7Y2uqEy5waLe+vKM4WaIR+PO5bFYb9b+CdhQ9KjChfycXs+C1sFY6irwZg0U GhQq/Q3QCp12JhBg== Authentication-Results: smtp-out2.suse.de; dkim=pass header.d=suse.de header.s=susede2_rsa header.b="H9z47/Vh"; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b="7UN/lOVR" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1779918937; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=t+/bkkjTjiIkw/uUSdAQyEwCxHkQeFAzyxTPipn4de0=; b=H9z47/VhXGsIlufBqPcCHY2pKsEPSlNHEwLmre2IHIRxhhjpAWv9oeLv+8iOoLbRvaFnBS LCLVeQMaWUYKWBly/51AxETepe+/1PrtFkgSjMEM3PTNmFeQZxdQJiw9umNc93PxPZM1Xq cSF+E6p/1JCFh+8v1mWiqNOZQ2302mc= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1779918937; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=t+/bkkjTjiIkw/uUSdAQyEwCxHkQeFAzyxTPipn4de0=; b=7UN/lOVRfl7Y2uqEy5waLe+vKM4WaIR+PO5bFYb9b+CdhQ9KjChfycXs+C1sFY6irwZg0U GhQq/Q3QCp12JhBg== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id E8C8E5AA41; Wed, 27 May 2026 21:55:36 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id wDYLN1hoF2qeIQAAD6G6ig (envelope-from ); Wed, 27 May 2026 21:55:36 +0000 Message-ID: Date: Wed, 27 May 2026 23:55:36 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 2/2] [gdb/symtab] Fix data race in try_open_dwop_file To: Tom Tromey Cc: gdb-patches@sourceware.org References: <20260216180925.3174052-1-tdevries@suse.de> <20260216180925.3174052-3-tdevries@suse.de> <877brrnxrw.fsf@tromey.com> <878q947f5n.fsf@tromey.com> Content-Language: en-US From: Tom de Vries In-Reply-To: <878q947f5n.fsf@tromey.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspamd2.dmz-prg2.suse.org X-Rspamd-Queue-Id: 0FDA966D10 X-Rspamd-Action: no action X-Spamd-Result: default: False [-4.51 / 50.00]; BAYES_HAM(-3.00)[99.99%]; NEURAL_HAM_LONG(-1.00)[-1.000]; R_DKIM_ALLOW(-0.20)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; NEURAL_HAM_SHORT(-0.20)[-1.000]; MIME_GOOD(-0.10)[text/plain]; MX_GOOD(-0.01)[]; MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_VIA_SMTP_AUTH(0.00)[]; FUZZY_RATELIMITED(0.00)[rspamd.com]; RCPT_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; DNSWL_BLOCKED(0.00)[2a07:de40:b281:106:10:150:64:167:received]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DKIM_TRACE(0.00)[suse.de:+] 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 5/27/26 10:48 PM, Tom Tromey wrote: >>>>>> "Tom" == Tom de Vries writes: > > Tom> AFAIU, bfd_check_format does locking, but it's only used to [1]: > Tom> ... > Tom> lock the internal global data structures of BFD (like its global cache > Tom> or some global counter), but not data in individual `bfd *`instances. > Tom> ... > > Tom> So while it does do locking, it's not sufficient. > > How so? > > I mean, since it's a recursive lock, it's not like locking it some more > can cause a problem. But at the same time I don't think it adds any > more protection. Well, the race is on fields of individual "bfd *" instances. More specifically, this write in bfd_cache_delete: ... abfd->last_io = bfd_io_force; ... vs one of these reads (abfd->format or abfd->direction) in: ... if (!bfd_read_p (abfd) || (unsigned int) abfd->format >= (unsigned int) bfd_type_end) ... As pointed out by Simon, the bfd code doesn't provide any locking for that. So the gdb wrappers provide the additional locking needed. AFAIU, this is not specific to these wrappers, all gdb_bfd wrapper are needed for the same reason. Thanks, - Tom