This is the mail archive of the
gdb-prs@sources.redhat.com
mailing list for the GDB project.
pending/1076: [RFA] Testsuite: fix attach.exp test for FreeBSD 5.0
- From: Mark Kettenis <kettenis at chello dot nl>
- To: gdb-gnats at sources dot redhat dot com
- Date: Sat, 15 Feb 2003 12:01:43 +0100 (CET)
- Subject: pending/1076: [RFA] Testsuite: fix attach.exp test for FreeBSD 5.0
>Number: 1076
>Category: pending
>Synopsis: [RFA] Testsuite: fix attach.exp test for FreeBSD 5.0
>Confidential: yes
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: change-request
>Submitter-Id: unknown
>Arrival-Date: Wed Feb 19 23:58:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:
>Release:
>Organization:
>Environment:
>Description:
This fixes some testsuite failures on FreeBSD 5.0, where PID 0 is an
existing process. I also tweaked the comments a bit such that they
don't imply that the various pattaerns are completely HP-specific.
OK to check this in?
Mark
Index: ChangeLog
from Mark Kettenis <kettenis at gnu dot org>
* gdb.base/attach.exp: When trying to attach to a nonexistent
process, make it possible to specify the PID based on the target.
Index: gdb.base/attach.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/attach.exp,v
retrieving revision 1.8
diff -u -p -r1.8 attach.exp
--- gdb.base/attach.exp 22 Dec 2002 23:53:48 -0000 1.8
+++ gdb.base/attach.exp 15 Feb 2003 10:59:35 -0000
@@ -106,30 +106,39 @@ proc do_attach_tests {} {
}
# Verify that we cannot attach to what appears to be a valid
- # process ID, but is a process that doesn't exist. (I don't
- # believe any process is ever assigned #0, at least on HPUX.)
+ # process ID, but is a process that doesn't exist. Traditionally,
+ # most systems didn't have a process with ID 0, so we take that as
+ # the default. However, there are a few exceptions.
#
- send_gdb "attach 0\n"
+ set boguspid 0
+ if { [istarget "*-*-freebsd*"] } {
+ # In FreeBSD 5.0, PID 0 is used for "swapper". Use -1 instead
+ # (which should have the desired effect on any version of FreeBSD).
+ set boguspid -1
+ }
+ send_gdb "attach $boguspid\n"
gdb_expect {
- -re "Attaching to.*, process 0.*No such process.*$gdb_prompt $"\
- {
- # Response expected on HP-UX 10.20 (i.e., ptrace-based).
- pass "attach to nonexistent process is prohibited"
- }
- -re "Attaching to.*, process 0 failed.*Hint.*$gdb_prompt $"\
- {
- # Response expected on HP-UX 11.0 (i.e., ttrace-based).
- pass "attach to nonexistent process is prohibited"
- }
- -re "Attaching to.*, process 0.*denied.*$gdb_prompt $"\
- {pass "attach to nonexistent process is prohibited"}
- -re "Attaching to.*, process .*couldn't open /proc file.*$gdb_prompt $"\
- {
- # Response expected from /proc-based systems.
- pass "attach to nonexistent process is prohibited"
- }
- -re "$gdb_prompt $" {fail "attach to nonexistent process is prohibited"}
- timeout {fail "(timeout) attach to nonexistent process is prohibited"}
+ -re "Attaching to.*, process $boguspid.*No such process.*$gdb_prompt $"\
+ {
+ # Response expected on ptrace-based systems (i.e. HP-UX 10.20).
+ pass "attach to nonexistent process is prohibited"
+ }
+ -re "Attaching to.*, process $boguspid failed.*Hint.*$gdb_prompt $"\
+ {
+ # Response expected on ttrace-based systems (i.e. HP-UX 11.0).
+ pass "attach to nonexistent process is prohibited"
+ }
+ -re "Attaching to.*, process $boguspid.*denied.*$gdb_prompt $"\
+ {pass "attach to nonexistent process is prohibited"}
+ -re "Attaching to.*, process .*couldn't open /proc file.*$gdb_prompt $"\
+ {
+ # Response expected from /proc-based systems.
+ pass "attach to nonexistent process is prohibited"
+ }
+ -re "$gdb_prompt $" {fail "attach to nonexistent process is prohibited"}
+ timeout {
+ fail "(timeout) attach to nonexistent process is prohibited"
+ }
}
# Verify that we can attach to the process by first giving its
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: