From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id tpbOIHchYmno2TkAWB0awg (envelope-from ) for ; Sat, 10 Jan 2026 04:52:55 -0500 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=hIREfvYA; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=QE+6WOnM; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=hIREfvYA; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=QE+6WOnM; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 7A0D31E048; Sat, 10 Jan 2026 04:52:55 -0500 (EST) 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 798851E048 for ; Sat, 10 Jan 2026 04:52:54 -0500 (EST) Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id B56214BA2E1F for ; Sat, 10 Jan 2026 09:52:53 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B56214BA2E1F 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=hIREfvYA; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=QE+6WOnM; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=hIREfvYA; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=QE+6WOnM Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130]) by sourceware.org (Postfix) with ESMTPS id 660094BA2E06 for ; Sat, 10 Jan 2026 09:52:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 660094BA2E06 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 660094BA2E06 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=195.135.223.130 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1768038746; cv=none; b=WU4clS71zebzX/9aG6tPnBJ6RvCHERMzx89VeefTK2Fu8SACi3++2jVhuBrTgU/3LSyQsdbRVsmBouSD2kqVP4M65tiMe3iQ3MieU2AwkRwqr8CcjFvsbODB9yXwvRVI2KFa/olZU/jwAbTCaMgLi0QOH5Fm31UZTRYlrjmcRS8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1768038746; c=relaxed/simple; bh=Y3G5LChmJpFf6qaw2J2SJ30DeLCePz1aplCZ2jDs2SM=; h=DKIM-Signature:DKIM-Signature:DKIM-Signature:DKIM-Signature:From: To:Subject:Date:Message-ID:MIME-Version; b=urynjzsRxdpZRoEIwz4OleQnnCNMZ7FUgPT//FVFhrBhiyT30eJSCMygHuKxAzp7Q2q+f6dZISnewjTDP8O3JCWIwleqrHwjy1H43DYOhO83o0J240CHcw5VwZzqEceIUxE6ZL2sCMpODYQ3uRqs1IQje/51g4qrVJEdQBmsvUU= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 660094BA2E06 Received: from imap1.dmz-prg2.suse.org (unknown [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-out1.suse.de (Postfix) with ESMTPS id 24E573368B for ; Sat, 10 Jan 2026 09:52:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1768038745; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=fIRsstAKTwu/bkPthbQuu0n3WhJh5lTgua1qGB1M3xY=; b=hIREfvYAGAW46KRAnSS+WRia4nKloS+CarWfMlhItUEfmzjthDJOzlHDroe47+0mHOKlmO R56XIUoBpbxoQrmIzLvVG7/1fqzV8at9NLVm+7qw3Ipp8BgSwD6q1HtRH9eN5fWGMS+lbv P59UyckhtK46gAkNCCZGWHTDbbNRr5E= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1768038745; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=fIRsstAKTwu/bkPthbQuu0n3WhJh5lTgua1qGB1M3xY=; b=QE+6WOnMqfbGtSLRFN6gbAtRVSSy8bU+A2bF8GKLrHBhVYT8A2xlqRjlyFCHGMla0UnpwU PD9TTM9en6HCD3Bg== Authentication-Results: smtp-out1.suse.de; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1768038745; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=fIRsstAKTwu/bkPthbQuu0n3WhJh5lTgua1qGB1M3xY=; b=hIREfvYAGAW46KRAnSS+WRia4nKloS+CarWfMlhItUEfmzjthDJOzlHDroe47+0mHOKlmO R56XIUoBpbxoQrmIzLvVG7/1fqzV8at9NLVm+7qw3Ipp8BgSwD6q1HtRH9eN5fWGMS+lbv P59UyckhtK46gAkNCCZGWHTDbbNRr5E= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1768038745; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=fIRsstAKTwu/bkPthbQuu0n3WhJh5lTgua1qGB1M3xY=; b=QE+6WOnMqfbGtSLRFN6gbAtRVSSy8bU+A2bF8GKLrHBhVYT8A2xlqRjlyFCHGMla0UnpwU PD9TTM9en6HCD3Bg== 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 0B9713EA63 for ; Sat, 10 Jan 2026 09:52:25 +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 LgkOAVkhYmmCeAAAD6G6ig (envelope-from ) for ; Sat, 10 Jan 2026 09:52:25 +0000 From: Tom de Vries To: gdb-patches@sourceware.org Subject: [PATCH] [gdb/testsuite] Speed up gdb.base/tls-dlobj.exp Date: Sat, 10 Jan 2026 10:52:24 +0100 Message-ID: <20260110095224.4041403-1-tdevries@suse.de> X-Mailer: git-send-email 2.51.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spamd-Result: default: False [-2.80 / 50.00]; BAYES_HAM(-3.00)[99.99%]; NEURAL_HAM_LONG(-1.00)[-1.000]; MID_CONTAINS_FROM(1.00)[]; R_MISSING_CHARSET(0.50)[]; NEURAL_HAM_SHORT(-0.20)[-1.000]; MIME_GOOD(-0.10)[text/plain]; FUZZY_RATELIMITED(0.00)[rspamd.com]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; ARC_NA(0.00)[]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; DBL_BLOCKED_OPENRESOLVER(0.00)[suse.de:mid,imap1.dmz-prg2.suse.org:helo]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[gdb-patches@sourceware.org]; RCVD_TLS_ALL(0.00)[] 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 In test-case gdb.base/tls-dlobj.exp we use breakpoints to step through the executable. The breakpoints are used only once, but they are permanent, so we end up with 11 breakpoints, 10 of which of the form $srcfile:$n. The executable loads and unloads shared libraries, triggering solib events in gdb, which will re-set the breakpoints. Setting a breakpoint of the form $srcfile:$n triggers a filename search that iterates over all CUs in all objfiles for which we have debuginfo. In case glibc debuginfo is installed, and in case we have a slow gdb, for instance because of building with -O0 and Address Sanitizer, this might become noticeable. While it's a good idea to try to speed up this search (see for instance PR33781), measuring this speed is not the point of this test-case, so fix this by making the breakpoints temporary. Tested on x86_64-linux. --- gdb/testsuite/gdb.base/tls-dlobj.exp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/gdb/testsuite/gdb.base/tls-dlobj.exp b/gdb/testsuite/gdb.base/tls-dlobj.exp index 68c8b781473..2e1b5014541 100644 --- a/gdb/testsuite/gdb.base/tls-dlobj.exp +++ b/gdb/testsuite/gdb.base/tls-dlobj.exp @@ -57,7 +57,7 @@ proc gdb_test_with_xfail { cmd re cond} { proc do_tests {force_internal_tls} { clean_restart $::testfile - if {![runto_main]} { + if {![runto main temporary]} { return } @@ -65,7 +65,7 @@ proc do_tests {force_internal_tls} { gdb_test_no_output "maint set force-internal-tls-address-lookup on" } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-1"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-1"] temporary gdb_continue_to_breakpoint "main-breakpoint-1" with_test_prefix "before assignments" { @@ -100,7 +100,7 @@ proc do_tests {force_internal_tls} { } } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-2"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-2"] temporary gdb_continue_to_breakpoint "main-breakpoint-2" with_test_prefix "at main-breakpoint-2" { @@ -117,7 +117,7 @@ proc do_tests {force_internal_tls} { } } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-3"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-3"] temporary gdb_continue_to_breakpoint "main-breakpoint-3" # At this point lib2 and lib3 have been unloaded. Also, TLS vars @@ -137,7 +137,7 @@ proc do_tests {force_internal_tls} { } } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-4"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-4"] temporary gdb_continue_to_breakpoint "main-breakpoint-4" # lib3 has been loaded again; lib2 is the only one not loaded. @@ -157,7 +157,7 @@ proc do_tests {force_internal_tls} { } } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-5"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-5"] temporary gdb_continue_to_breakpoint "main-breakpoint-5" # lib2 and lib3 are loaded; lib1 and lib4 are not. @@ -177,7 +177,7 @@ proc do_tests {force_internal_tls} { } } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-6"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-6"] temporary gdb_continue_to_breakpoint "main-breakpoint-6" # lib1, lib3 and lib4 are loaded; lib2 is not loaded. @@ -197,7 +197,7 @@ proc do_tests {force_internal_tls} { } } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-7"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-7"] temporary gdb_continue_to_breakpoint "main-breakpoint-7" # lib2 and lib3 are loaded; lib1 and lib4 are not. @@ -217,7 +217,7 @@ proc do_tests {force_internal_tls} { } } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-8"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-8"] temporary gdb_continue_to_breakpoint "main-breakpoint-8" # lib1, lib2, lib3, and lib4 are all loaded. @@ -236,7 +236,7 @@ proc do_tests {force_internal_tls} { } } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-9"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-9"] temporary gdb_continue_to_breakpoint "main-breakpoint-9" # lib2 is loaded; lib1, lib3, and lib4 are not. @@ -255,7 +255,7 @@ proc do_tests {force_internal_tls} { } } - gdb_breakpoint [gdb_get_line_number "main-breakpoint-10"] + gdb_breakpoint [gdb_get_line_number "main-breakpoint-10"] temporary gdb_continue_to_breakpoint "main-breakpoint-10" # lib3 and lib4 are loaded; lib1 and lib2 are not. base-commit: fa20c3de21cd86a90dfe94328626ce6730df3a63 -- 2.51.0