Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Yao Qi <yao@codesourcery.com>
To: Pedro Alves <palves@redhat.com>
Cc: <gdb-patches@sourceware.org>
Subject: Re: [PATCH 4/4] gdb: kfail for PR14161
Date: Wed, 20 Jun 2012 13:55:00 -0000	[thread overview]
Message-ID: <4FE1D637.2070901@codesourcery.com> (raw)
In-Reply-To: <4FDB8E0B.8090908@redhat.com>

On 06/16/2012 03:33 AM, Pedro Alves wrote:
>> > +    # Due to PR gdb/14161, sockets files are not removed when agent exists.
>> > +    if [is_remote target] {
>> > +	foreach match [glob -nocomplain "/tmp/gdb_ust*"] {
>> > +	    remote_file target delete $match
> 
> That's unfortunately not good, because while the "delete" runs on
> the "target", the "glob" is running on the "build" machine (which is usually
> the "host", unless you're doing remote-host testing).
> 
>> > +	}
>> > +    } else {
>> > +	eval file delete [glob "/tmp/gdb_ust*"]
>> > +    }
> This else doesn't work for remote-host testing either.  With remote-
> -host testing, you have expect running on machine A (build), GDB
> running on machine B (host), and that GDB connecting to machine
> C (target).  Usually, either A and B are the same, or B and C are
> the same, though A != B != C is possible.
> 

I am using 'remote_exec target "sh -c \"rm -r $socket_file\""' to
delete them in a unique way.  The reason is explained in the comments.

> Maybe we can avoid the need for globing in the first place, by making
> strace_remove_socket (and whatever other function in the file, if
> necessary), remove the socket file before returning, while they
> still know the inferior's PID?

Yes, at the end of strace_remove_socket, we can delete socket file if
it still exists.  In proc strace_info_marker, I simply force GDB to
detach inferior, so the socket file can be removed as well.

-- 
Yao (齐尧) 

gdb/testsuite:

2012-06-20  Yao Qi  <yao@codesourcery.com>

	KFAIL for PR14161.
	* gdb.trace/strace.exp (strace_remove_socket): kfail for native.
	Cleanup socket files.
	(strace_info_marker): Detach inferior.
---
 gdb/testsuite/gdb.trace/strace.exp |   10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/gdb/testsuite/gdb.trace/strace.exp b/gdb/testsuite/gdb.trace/strace.exp
index d45c66d..587d9b3 100644
--- a/gdb/testsuite/gdb.trace/strace.exp
+++ b/gdb/testsuite/gdb.trace/strace.exp
@@ -111,6 +111,9 @@ proc strace_remove_socket { action } {
 
     if { $exists } {
 	fail $test
+	# Since $socket_file is a socket file instead of a regular file, we
+	# can't use 'remote_file target delete $socket_file' here.
+	remote_exec target "sh -c \"rm -r $socket_file\""
     } else {
 	pass $test
     }
@@ -145,6 +148,13 @@ proc strace_info_marker { } { with_test_prefix "info_marker" {
 	    pass "info threads"
 	}
     }
+
+    # GDB detaches inferior so that the socket file can be removed.
+    gdb_test_multiple "detach" "detach" {
+	-re "Detaching .*, process .*${gdb_prompt} $" {
+	    pass "detach"
+	}
+    }
 }}
 
 proc strace_probe_marker { } { with_test_prefix "probe_marker" {
-- 
1.7.9.5


  reply	other threads:[~2012-06-20 13:55 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-09 12:47 [PATCH 0/4] PR14161: a partial fix Yao Qi
2012-06-09 12:47 ` [PATCH 3/4] New agent command 'kill' and used by gdbserver Yao Qi
2012-06-09 13:11   ` Eli Zaretskii
2012-06-12 16:14   ` Pedro Alves
2012-06-14 14:50     ` Yao Qi
2012-06-14 16:37       ` Eli Zaretskii
2012-06-15 19:25       ` Pedro Alves
2012-06-20 13:49         ` Yao Qi
2012-06-21 16:05           ` Pedro Alves
2012-06-09 12:47 ` [PATCH 4/4] gdb: kfail for PR14161 Yao Qi
2012-06-12 16:21   ` Pedro Alves
2012-06-14 15:01     ` Yao Qi
2012-06-15 19:33       ` Pedro Alves
2012-06-20 13:55         ` Yao Qi [this message]
2012-06-09 12:47 ` [PATCH 2/4] Remove socket file at exit Yao Qi
2012-06-12 15:14   ` Pedro Alves
2012-06-14 14:44     ` Yao Qi
2012-06-15 19:02       ` Pedro Alves
2012-06-09 12:47 ` [PATCH 1/4] New test for removing socket file in gdb.trace/strace.exp Yao Qi
2012-06-12 14:51   ` Pedro Alves
2012-06-14 14:39     ` Yao Qi
2012-06-15 19:00       ` Pedro Alves
2012-06-20 13:46         ` Yao Qi
2012-06-21 15:56           ` Pedro Alves
2012-06-27  3:55             ` Yao Qi
2012-07-27  8:19 ` [committed] : [PATCH 0/4] PR14161: a partial fix Yao Qi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4FE1D637.2070901@codesourcery.com \
    --to=yao@codesourcery.com \
    --cc=gdb-patches@sourceware.org \
    --cc=palves@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox