public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: John Baldwin <jhb@FreeBSD.org>
To: gdb-patches@sourceware.org
Subject: Re: [PATCH] Report additional details for signals received on FreeBSD.
Date: Mon, 31 May 2021 09:33:33 -0700	[thread overview]
Message-ID: <46124956-89f0-4da0-00cd-476584b50e98@FreeBSD.org> (raw)
In-Reply-To: <20210531162940.10841-1-jhb@FreeBSD.org>

On 5/31/21 9:29 AM, John Baldwin wrote:
> Provide a description for si_code values as a sigcode-meaning field.
> For signals raised by a system call, provide the pid and user ID of
> the sending process.  For signals raised by a POSIX timer exparation,
> provide the id of the timer.  For signals raised by a POSIX message
> queue, provide the id of the message queue.  For SIGCHLD provide the
> pid and user ID of the child process along with the exit status or
> relevant signal number.
> 
> gdb/ChangeLog:
> 
> 	* fbsd-tdep.c (fbsd_signal_cause, fbsd_report_signal_info): New.
> 	(fbsd_init_abi): Use fbsd_report_signal_info as gdbarch
> 	report_signal_info method.
> ---
>   gdb/ChangeLog   |   6 ++
>   gdb/fbsd-tdep.c | 272 ++++++++++++++++++++++++++++++++++++++++++++++++
>   2 files changed, 278 insertions(+)
> 
> diff --git a/gdb/ChangeLog b/gdb/ChangeLog
> index b0f448a35e..0f5ec65680 100644
> --- a/gdb/ChangeLog
> +++ b/gdb/ChangeLog
> @@ -1,3 +1,9 @@
> +2021-05-30  John Baldwin  <jhb@FreeBSD.org>
> +
> +	* fbsd-tdep.c (fbsd_signal_cause, fbsd_report_signal_info): New.
> +	(fbsd_init_abi): Use fbsd_report_signal_info as gdbarch
> +	report_signal_info method.
> +
>   2021-05-30  John Baldwin  <jhb@FreeBSD.org>
>   
>   	* infrun.c (handle_inferior_event): Only call
> diff --git a/gdb/fbsd-tdep.c b/gdb/fbsd-tdep.c
> index 6cab31dde8..3fe4c5c595 100644
> --- a/gdb/fbsd-tdep.c
> +++ b/gdb/fbsd-tdep.c
> @@ -75,6 +75,63 @@ enum
>       FREEBSD_SIGRTMAX = 126,
>     };
>   
> +/* Constants for values of si_code as defined in FreeBSD's
> +   <sys/signal.h>.  */
> +
> +#define	FBSD_SI_USER		0x10001
> +#define	FBSD_SI_QUEUE		0x10002
> +#define	FBSD_SI_TIMER		0x10003
> +#define	FBSD_SI_ASYNCIO		0x10004
> +#define	FBSD_SI_MESGQ		0x10005
> +#define	FBSD_SI_KERNEL		0x10006
> +#define	FBSD_SI_LWP		0x10007
> +
> +#define	FBSD_ILL_ILLOPC		1
> +#define	FBSD_ILL_ILLOPN		2
> +#define	FBSD_ILL_ILLADR		3
> +#define	FBSD_ILL_ILLTRP		4
> +#define	FBSD_ILL_PRVOPC		5
> +#define	FBSD_ILL_PRVREG		6
> +#define	FBSD_ILL_COPROC		7
> +#define	FBSD_ILL_BADSTK		8
> +
> +#define	FBSD_BUS_ADRALN		1
> +#define	FBSD_BUS_ADRERR		2
> +#define	FBSD_BUS_OBJERR		3
> +#define	FBSD_BUS_OOMERR		100
> +
> +#define	FBSD_SEGV_MAPERR	1
> +#define	FBSD_SEGV_ACCERR	2
> +#define	FBSD_SEGV_PKUERR	100
> +
> +#define	FBSD_FPE_INTOVF		1
> +#define	FBSD_FPE_INTDIV		2
> +#define	FBSD_FPE_FLTDIV		3
> +#define	FBSD_FPE_FLTOVF		4
> +#define	FBSD_FPE_FLTUND		5
> +#define	FBSD_FPE_FLTRES		6
> +#define	FBSD_FPE_FLTINV		7
> +#define	FBSD_FPE_FLTSUB		8
> +
> +#define	FBSD_TRAP_BRKPT		1
> +#define	FBSD_TRAP_TRACE		2
> +#define	FBSD_TRAP_DTRACE	3
> +#define	FBSD_TRAP_CAP		4
> +
> +#define	FBSD_CLD_EXITED		1
> +#define	FBSD_CLD_KILLED		2
> +#define	FBSD_CLD_DUMPED		3
> +#define	FBSD_CLD_TRAPPED	4
> +#define	FBSD_CLD_STOPPED	5
> +#define	FBSD_CLD_CONTINUED	6
> +
> +#define	FBSD_POLL_IN		1
> +#define	FBSD_POLL_OUT		2
> +#define	FBSD_POLL_MSG		3
> +#define	FBSD_POLL_ERR		4
> +#define	FBSD_POLL_PRI		5
> +#define	FBSD_POLL_HUP		6

Do I need to list all of these new #define's individually in the changelog
or is there a more concise way to list them?

-- 
John Baldwin

  reply	other threads:[~2021-05-31 16:33 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-31 16:29 John Baldwin
2021-05-31 16:33 ` John Baldwin [this message]
2021-06-01  0:49   ` Simon Marchi
2021-06-03 17:01     ` John Baldwin
2021-06-03 17:06       ` Simon Marchi

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=46124956-89f0-4da0-00cd-476584b50e98@FreeBSD.org \
    --to=jhb@freebsd.org \
    --cc=gdb-patches@sourceware.org \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).