Fix PR 32076 by using procfs to get details of the file when attaching

to a process.

Discussed (briefly) on tech-toolchain and OK'ed by thorpej.
This commit is contained in:
skrll 2006-02-17 07:58:58 +00:00
parent c6871c6fe4
commit 6003e126de
34 changed files with 89 additions and 31 deletions

View File

@ -1917,6 +1917,7 @@ mon960-rom.o: mon960-rom.c $(defs_h) $(gdbcore_h) $(target_h) $(monitor_h) \
monitor.o: monitor.c $(defs_h) $(gdbcore_h) $(target_h) $(gdb_string_h) \
$(command_h) $(serial_h) $(monitor_h) $(gdbcmd_h) $(inferior_h) \
$(gdb_regex_h) $(srec_h) $(regcache_h)
nbsd-proc.o: nbsd-proc.c $(defs_h)
nbsd-tdep.o: nbsd-tdep.c $(defs_h) $(gdb_string_h) $(solib_svr4_h)
nindy-tdep.o: nindy-tdep.c $(defs_h) $(symtab_h) $(frame_h) $(gdbcore_h)
nlmread.o: nlmread.c $(defs_h) $(bfd_h) $(symtab_h) $(symfile_h) \

View File

@ -1,5 +1,5 @@
# Host: Alpha running NetBSD
NAT_CLIBS=
NATDEPFILES= infptrace.o inftarg.o fork-child.o alphabsd-nat.o \
kcore-nbsd.o nbsd-thread.o
kcore-nbsd.o nbsd-thread.o nbsd-proc.o
NAT_FILE= nm-nbsd.h

View File

@ -1,5 +1,5 @@
# Host ARM running NetBSD
NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o armnbsd-nat.o \
solib-sunos.o
solib-sunos.o nbsd-proc.o
XM_FILE=xm-nbsd.h
NAT_FILE=nm-nbsdaout.h

View File

@ -1,4 +1,5 @@
# Host ARM running NetBSD
NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o armnbsd-nat.o
NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o armnbsd-nat.o \
nbsd-proc.o
XM_FILE=xm-nbsd.h
NAT_FILE=nm-nbsd.h

View File

@ -1,5 +1,6 @@
# Host: Intel 386 running NetBSD
NATDEPFILES= fork-child.o infptrace.o inftarg.o i386bsd-nat.o solib-sunos.o
NATDEPFILES= fork-child.o infptrace.o inftarg.o i386bsd-nat.o solib-sunos.o \
nbsd-proc.o
XM_FILE= xm-nbsd.h
NAT_FILE= nm-nbsdaout.h

View File

@ -1,4 +1,5 @@
# Host: Intel 386 running NetBSD
NATDEPFILES= fork-child.o infptrace.o inftarg.o i386bsd-nat.o
NATDEPFILES= fork-child.o infptrace.o inftarg.o i386bsd-nat.o \
nbsd-proc.o
XM_FILE= xm-nbsd.h
NAT_FILE= nm-nbsd.h

View File

@ -4,4 +4,4 @@ XM_FILE= xm-nbsd.h
NAT_FILE= nm-x86-64nbsd.h
NATDEPFILES= infptrace.o inftarg.o fork-child.o corelow.o \
i386-nat.o x86-64nbsd-nat.o \
i386-nat.o x86-64nbsd-nat.o nbsd-proc.o

View File

@ -1,5 +1,5 @@
# Host: Motorola m68k running NetBSD
NATDEPFILES= infptrace.o inftarg.o fork-child.o m68knbsd-nat.o \
kcore-nbsd.o nbsd-thread.o
kcore-nbsd.o nbsd-thread.o nbsd-proc.o
XM_FILE= xm-nbsd.h
NAT_FILE= nm-nbsd.h

View File

@ -1,5 +1,5 @@
# Host: Motorola m68k running NetBSD
NATDEPFILES= infptrace.o inftarg.o fork-child.o corelow.o m68knbsd-nat.o \
solib.o solib-sunos.o
solib.o solib-sunos.o nbsd-proc.o
XM_FILE= xm-nbsd.h
NAT_FILE= nm-nbsdaout.h

View File

@ -1,4 +1,4 @@
# Host: MIPS running NetBSD
NAT_CLIBS=
NATDEPFILES= infptrace.o inftarg.o fork-child.o mipsnbsd-nat.o
NATDEPFILES= infptrace.o inftarg.o fork-child.o mipsnbsd-nat.o nbsd-proc.o
NAT_FILE= nm-nbsd.h

View File

@ -29,3 +29,6 @@
#if !defined(NO_SOLIB)
#include "solib.h" /* Support for shared libraries. */
#endif
/* Override child_pid_to_exec_file in 'inftarg.c'. */
#define CHILD_PID_TO_EXEC_FILE

View File

@ -1,5 +1,5 @@
# Host: PC532 running NetBSD
NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o ns32knbsd-nat.o \
solib.o solib-sunos.o
solib.o solib-sunos.o nbsd-proc.o
XM_FILE= xm-nbsd.h
NAT_FILE= nm-nbsdaout.h

View File

@ -1,5 +1,5 @@
# Host: PowerPC, running NetBSD
NAT_CLIBS= -lkvm -lpthread_dbg
NATDEPFILES= fork-child.o infptrace.o inftarg.o ppcnbsd-nat.o \
kcore-nbsd.o nbsd-thread.o
kcore-nbsd.o nbsd-thread.o nbsd-proc.o
NAT_FILE= nm-nbsd.h

View File

@ -1,4 +1,4 @@
# Host: SuperH running NetBSD
NAT_CLIBS=
NATDEPFILES= infptrace.o inftarg.o fork-child.o shnbsd-nat.o
NATDEPFILES= infptrace.o inftarg.o fork-child.o shnbsd-nat.o nbsd-proc.o
NAT_FILE= nm-nbsd.h

View File

@ -1,3 +1,3 @@
# Host: UltraSPARC running NetBSD
NATDEPFILES= fork-child.o infptrace.o inftarg.o sparc64nbsd-nat.o
NATDEPFILES= fork-child.o infptrace.o inftarg.o sparc64nbsd-nat.o nbsd-proc.o
NAT_FILE= nm-nbsd.h

View File

@ -1,4 +1,4 @@
# Host: Sun 4 or Sparcstation, running NetBSD
NATDEPFILES= fork-child.o infptrace.o inftarg.o sparcnbsd-nat.o solib-sunos.o
NATDEPFILES= fork-child.o infptrace.o inftarg.o sparcnbsd-nat.o solib-sunos.o nbsd-proc.o
XM_FILE= xm-nbsd.h
NAT_FILE= nm-nbsdaout.h

View File

@ -1,4 +1,4 @@
# Host: Sun 4 or Sparcstation, running NetBSD
NATDEPFILES= fork-child.o infptrace.o inftarg.o sparcnbsd-nat.o
NATDEPFILES= fork-child.o infptrace.o inftarg.o sparcnbsd-nat.o nbsd-proc.o
XM_FILE= xm-nbsd.h
NAT_FILE= nm-nbsd.h

View File

@ -1,4 +1,5 @@
# Host: DEC VAX running NetBSD
NATDEPFILES= infptrace.o inftarg.o fork-child.o kcore-nbsd.o nbsd-thread.o vaxnbsd-nat.o
NATDEPFILES= infptrace.o inftarg.o fork-child.o kcore-nbsd.o nbsd-thread.o vaxnbsd-nat.o \
nbsd-proc.o
XM_FILE= xm-nbsd.h
NAT_FILE= nm-nbsd.h

35
gnu/dist/gdb/gdb/nbsd-proc.c vendored Normal file
View File

@ -0,0 +1,35 @@
/* NetBSD-specific methods for using the /proc file system.
Copyright 2006 Free Software Foundation, Inc.
This file is part of GDB.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <sys/param.h>
#include "defs.h"
char *
child_pid_to_exec_file (int pid)
{
char *path;
path = xmalloc (MAXPATHLEN);
xasprintf (&path, "/proc/%d/file", pid);
make_cleanup (xfree, path);
return path;
}

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.3 2004/01/02 22:42:05 nathanw Exp $
# $NetBSD: defs.mk,v 1.4 2006/02/17 07:58:59 skrll Exp $
G_GDB_OBJS=\
alpha-tdep.o \
alphabsd-nat.o \
@ -102,6 +102,7 @@ minsyms.o \
mipsread.o \
nbsd-tdep.o \
nbsd-thread.o \
nbsd-proc.o \
nlmread.o \
objfiles.o \
osabi.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.2 2003/10/21 19:07:36 skrll Exp $
# $NetBSD: defs.mk,v 1.3 2006/02/17 07:58:59 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -103,6 +103,7 @@ minsyms.o \
mipsread.o \
nbsd-tdep.o \
nbsd-thread.o \
nbsd-proc.o \
nlmread.o \
objfiles.o \
osabi.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.2 2003/11/07 07:31:44 mrg Exp $
# $NetBSD: defs.mk,v 1.3 2006/02/17 07:58:59 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -103,6 +103,7 @@ minsyms.o \
mipsread.o \
nbsd-tdep.o \
nbsd-thread.o \
nbsd-proc.o \
nlmread.o \
objfiles.o \
osabi.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.5 2003/09/26 19:49:41 skrll Exp $
# $NetBSD: defs.mk,v 1.6 2006/02/17 07:58:59 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -107,6 +107,7 @@ minsyms.o \
mipsread.o \
nbsd-tdep.o \
nbsd-thread.o \
nbsd-proc.o \
nlmread.o \
objfiles.o \
os9kread.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.1 2003/10/27 23:56:55 mrg Exp $
# $NetBSD: defs.mk,v 1.2 2006/02/17 07:58:59 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -101,6 +101,7 @@ minsyms.o \
mipsread.o \
nbsd-tdep.o \
nbsd-thread.o \
nbsd-proc.o \
nlmread.o \
objfiles.o \
osabi.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.3 2003/09/23 13:32:53 cl Exp $
# $NetBSD: defs.mk,v 1.4 2006/02/17 07:58:59 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -101,6 +101,7 @@ minsyms.o \
mipsread.o \
nbsd-tdep.o \
nbsd-thread.o \
nbsd-proc.o \
nlmread.o \
objfiles.o \
osabi.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.1 2003/09/12 06:42:31 simonb Exp $
# $NetBSD: defs.mk,v 1.2 2006/02/17 07:58:59 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -99,6 +99,7 @@ mipsnbsd-nat.o \
mipsnbsd-tdep.o \
mipsread.o \
nbsd-tdep.o \
nbsd-proc.o \
nlmread.o \
objfiles.o \
osabi.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.1 2003/09/12 06:42:38 simonb Exp $
# $NetBSD: defs.mk,v 1.2 2006/02/17 07:59:00 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -98,6 +98,7 @@ mips-tdep.o \
mipsnbsd-nat.o \
mipsnbsd-tdep.o \
mipsread.o \
nbsd-proc.o \
nbsd-tdep.o \
nlmread.o \
objfiles.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.3 2004/04/02 13:36:32 mrg Exp $
# $NetBSD: defs.mk,v 1.4 2006/02/17 07:59:00 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -96,6 +96,7 @@ mi-out.o \
mi-parse.o \
minsyms.o \
mipsread.o \
nbsd-proc.o \
nbsd-tdep.o \
nbsd-thread.o \
nlmread.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.1 2003/10/28 01:21:37 mrg Exp $
# $NetBSD: defs.mk,v 1.2 2006/02/17 07:59:00 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -95,6 +95,7 @@ mi-out.o \
mi-parse.o \
minsyms.o \
mipsread.o \
nbsd-proc.o \
nbsd-tdep.o \
nlmread.o \
objfiles.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.2 2003/10/28 01:58:23 uwe Exp $
# $NetBSD: defs.mk,v 1.3 2006/02/17 07:59:00 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -95,6 +95,7 @@ mi-out.o \
mi-parse.o \
minsyms.o \
mipsread.o \
nbsd-proc.o \
nbsd-tdep.o \
nlmread.o \
objfiles.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.4 2003/11/02 20:59:28 hannken Exp $
# $NetBSD: defs.mk,v 1.5 2006/02/17 07:59:00 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -96,6 +96,7 @@ mi-out.o \
mi-parse.o \
minsyms.o \
mipsread.o \
nbsd-proc.o \
nbsd-tdep.o \
nbsd-thread.o \
nlmread.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.4 2003/11/04 19:33:39 hannken Exp $
# $NetBSD: defs.mk,v 1.5 2006/02/17 07:59:00 skrll Exp $
#
G_GDB_OBJS=\
annotate.o \
@ -97,6 +97,7 @@ mi-out.o \
mi-parse.o \
minsyms.o \
mipsread.o \
nbsd-proc.o \
nbsd-tdep.o \
nbsd-thread.o \
nlmread.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.2 2003/10/25 19:02:07 matt Exp $
# $NetBSD: defs.mk,v 1.3 2006/02/17 07:59:00 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -99,6 +99,7 @@ mi-out.o \
mi-parse.o \
minsyms.o \
mipsread.o \
nbsd-proc.o \
nbsd-tdep.o \
nbsd-thread.o \
nlmread.o \

View File

@ -1,4 +1,4 @@
# $NetBSD: defs.mk,v 1.2 2003/10/14 22:59:59 fvdl Exp $
# $NetBSD: defs.mk,v 1.3 2006/02/17 07:59:00 skrll Exp $
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
@ -98,6 +98,7 @@ mi-out.o \
mi-parse.o \
minsyms.o \
mipsread.o \
nbsd-proc.o \
nbsd-tdep.o \
nbsd-thread.o \
nlmread.o \