* [committed][gdb/testsuite] Fix core file load FAIL in tls-core.exp
@ 2020-03-12 8:51 Tom de Vries
2020-03-12 9:20 ` Andreas Schwab
0 siblings, 1 reply; 3+ messages in thread
From: Tom de Vries @ 2020-03-12 8:51 UTC (permalink / raw)
To: gdb-patches
Hi,
After deinstalling package glibc-debugsource, I run into the following FAIL
with test-case gdb.threads/tls-core.exp:
...
(gdb) core gdb/testsuite/outputs/gdb.threads/tls-core/tls-core.core^M
[New LWP 30081]^M
[New LWP 30080]^M
[Thread debugging using libthread_db enabled]^M
Using host libthread_db library "/lib64/libthread_db.so.1".^M
Core was generated by `gdb/testsuite/outputs/gdb.threads/tls-core/tls-c'.^M
Program terminated with signal SIGABRT, Aborted.^M
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.^M
[Current thread is 1 (Thread 0x7fb568d4b700 (LWP 30081))]^M
(gdb) FAIL: gdb.threads/tls-core.exp: native: load core file (file not found)
...
The problem is that this gdb_test_multiple clause in gdb_core_cmd:
...
-re ": No such file or directory.*\r\n$gdb_prompt $" {
fail "$test (file not found)"
return -1
}
...
triggers on the message about raise.c, while it is intended to catch:
...
$ gdb
(gdb) core bla
/home/vries/bla: No such file or directory.
...
Fix this by making the regexp more precise:
...
- -re ": No such file or directory.*\r\n$gdb_prompt $" {
+ -re "$core: No such file or directory.*\r\n$gdb_prompt $" {
...
Tested on x86_64-linux.
Also tested the test-case with this patch in place to verify that the regexp
still triggers:
...
- set core_loaded [gdb_core_cmd $corefile $test]
+ set core_loaded [gdb_core_cmd $corefile/bla $test]
...
Committed to trunk.
Thanks,
- Tom
[gdb/testsuite] Fix core file load FAIL in tls-core.exp
gdb/testsuite/ChangeLog:
2020-03-12 Tom de Vries <tdevries@suse.de>
* lib/gdb.exp (gdb_core_cmd): Make "No such file or directory" regexp
more precise.
---
gdb/testsuite/lib/gdb.exp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index 9e903ba347..bb70ef13f2 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -4648,7 +4648,7 @@ proc gdb_core_cmd { core test } {
fail "$test (bad file format)"
return -1
}
- -re ": No such file or directory.*\r\n$gdb_prompt $" {
+ -re "$core: No such file or directory.*\r\n$gdb_prompt $" {
fail "$test (file not found)"
return -1
}
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [committed][gdb/testsuite] Fix core file load FAIL in tls-core.exp
2020-03-12 8:51 [committed][gdb/testsuite] Fix core file load FAIL in tls-core.exp Tom de Vries
@ 2020-03-12 9:20 ` Andreas Schwab
2020-03-12 10:04 ` [committed][gdb/testsuite] Use string_to_regexp on core filename in gdb_core_cmd Tom de Vries
0 siblings, 1 reply; 3+ messages in thread
From: Andreas Schwab @ 2020-03-12 9:20 UTC (permalink / raw)
To: Tom de Vries; +Cc: gdb-patches
On Mär 12 2020, Tom de Vries wrote:
> diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
> index 9e903ba347..bb70ef13f2 100644
> --- a/gdb/testsuite/lib/gdb.exp
> +++ b/gdb/testsuite/lib/gdb.exp
> @@ -4648,7 +4648,7 @@ proc gdb_core_cmd { core test } {
> fail "$test (bad file format)"
> return -1
> }
> - -re ": No such file or directory.*\r\n$gdb_prompt $" {
> + -re "$core: No such file or directory.*\r\n$gdb_prompt $" {
I think you need to regexp-quote the string.
Andreas.
--
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."
^ permalink raw reply [flat|nested] 3+ messages in thread
* [committed][gdb/testsuite] Use string_to_regexp on core filename in gdb_core_cmd
2020-03-12 9:20 ` Andreas Schwab
@ 2020-03-12 10:04 ` Tom de Vries
0 siblings, 0 replies; 3+ messages in thread
From: Tom de Vries @ 2020-03-12 10:04 UTC (permalink / raw)
To: Andreas Schwab; +Cc: gdb-patches
[-- Attachment #1: Type: text/plain, Size: 689 bytes --]
[ was: Re: [committed][gdb/testsuite] Fix core file load FAIL in
tls-core.exp ]
On 12-03-2020 10:20, Andreas Schwab wrote:
> On Mär 12 2020, Tom de Vries wrote:
>
>> diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
>> index 9e903ba347..bb70ef13f2 100644
>> --- a/gdb/testsuite/lib/gdb.exp
>> +++ b/gdb/testsuite/lib/gdb.exp
>> @@ -4648,7 +4648,7 @@ proc gdb_core_cmd { core test } {
>> fail "$test (bad file format)"
>> return -1
>> }
>> - -re ": No such file or directory.*\r\n$gdb_prompt $" {
>> + -re "$core: No such file or directory.*\r\n$gdb_prompt $" {
>
> I think you need to regexp-quote the string.
>
Ack, fixed by this patch.
Thanks,
- Tom
[-- Attachment #2: 0001-gdb-testsuite-Use-string_to_regexp-on-core-filename-in-gdb_core_cmd.patch --]
[-- Type: text/x-patch, Size: 1196 bytes --]
[gdb/testsuite] Use string_to_regexp on core filename in gdb_core_cmd
In commit 1281424ccf "[gdb/testsuite] Fix core file load FAIL in
tls-core.exp", I've made this change:
...
- -re ": No such file or directory.*\r\n$gdb_prompt $" {
+ -re "$core: No such file or directory.*\r\n$gdb_prompt $" {
...
However, the $core variable contains a filename which needs to be matched
as a literal string, not as a regexp.
Fix this by using string_to_regexp.
Tested on x86_64-linux.
gdb/testsuite/ChangeLog:
2020-03-12 Tom de Vries <tdevries@suse.de>
* lib/gdb.exp (gdb_core_cmd): Use string_to_regexp for regexp-matching
$core.
---
gdb/testsuite/lib/gdb.exp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index bb70ef13f2..ae2d810a1e 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -4648,7 +4648,7 @@ proc gdb_core_cmd { core test } {
fail "$test (bad file format)"
return -1
}
- -re "$core: No such file or directory.*\r\n$gdb_prompt $" {
+ -re -wrap "[string_to_regexp $core]: No such file or directory.*" {
fail "$test (file not found)"
return -1
}
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-03-12 10:04 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-12 8:51 [committed][gdb/testsuite] Fix core file load FAIL in tls-core.exp Tom de Vries
2020-03-12 9:20 ` Andreas Schwab
2020-03-12 10:04 ` [committed][gdb/testsuite] Use string_to_regexp on core filename in gdb_core_cmd Tom de Vries
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).