This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: PATCH: procfs.c for UnixWare (v4)
- From: Andrew Cagney <ac131313 at cygnus dot com>
- To: rbrown64 at csc dot com dot au, msnyder at redhat dot com
- Cc: gdb-patches at sources dot redhat dot com
- Date: Sat, 23 Mar 2002 14:02:48 -0500
- Subject: Re: PATCH: procfs.c for UnixWare (v4)
- References: <OFE3950F2D.E8203C5E-ONCA256B45.0026BE5D@int.csc.com.au>
Did this patch get resolved?
Andrew
> 2001-01-18 Rodney Brown <rbrown64@csc.com.au>
> * procfs.c: Prototype elfcore_write_prstatus, elfcore_write_pstatus,
> elfcore_write_prfpreg, elfcore_write_prpsinfo.
> (procfs_do_thread_registers): Call elfcore_write_gdb_prstatus.
>
> --- procfs.c.orig Tue Jan 15 15:01:48 2002
> +++ procfs.c Fri Jan 18 16:41:38 2002
> @@ -55,7 +55,7 @@ Inc., 59 Temple Place - Suite 330, Bosto
> * Unixware
> * AIX5
> *
> - * /proc works by immitating a file system: you open a simulated file
> + * /proc works by imitating a file system: you open a simulated file
> * that represents the process you wish to interact with, and
> * perform operations on that "file" in order to examine or change
> * the state of the other process.
> @@ -135,6 +135,14 @@ static int proc_find_memory_regions (int
>
> static char * procfs_make_note_section (bfd *, int *);
>
> +#ifndef HAVE_PSTATUS_T
> +char *elfcore_write_prstatus (bfd *, char *, int *, long, int, void *);
> +#else
> +char *elfcore_write_pstatus (bfd *, char *, int *, long, int, void *);
> +#endif
> +char *elfcore_write_prfpreg (bfd *, char *, int *, void *, int);
> +char *elfcore_write_prpsinfo (bfd *, char *, int *, char *, char *);
> +
> struct target_ops procfs_ops; /* the target vector */
>
> static void
> @@ -5733,12 +5741,22 @@ procfs_do_thread_registers (bfd *obfd, p
> merged_pid = TIDGET (ptid) << 16 | PIDGET (ptid);
>
> fill_gregset (&gregs, -1);
> +/* Solaris 2.7 has NEW_PROC_API, but defaults to !HAVE_PSTATUS_T. */
> +#ifndef HAVE_PSTATUS_T
> note_data = (char *) elfcore_write_prstatus (obfd,
> note_data,
> note_size,
> merged_pid,
> stop_signal,
> &gregs);
> +#else
> + note_data = (char *) elfcore_write_pstatus (obfd,
> + note_data,
> + note_size,
> + merged_pid,
> + stop_signal,
> + &gregs);
> +#endif
> fill_fpregset (&fpregs, -1);
> note_data = (char *) elfcore_write_prfpreg (obfd,
> note_data,
>
>
>