This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH V5 2/5] Use linux_get_siginfo_type_with_fields for x86
- From: Pedro Alves <palves at redhat dot com>
- To: Walfred Tedeschi <walfred dot tedeschi at intel dot com>, eliz at gnu dot org, brobecker at adacore dot com
- Cc: gdb-patches at sourceware dot org
- Date: Thu, 28 Jan 2016 12:19:49 +0000
- Subject: Re: [PATCH V5 2/5] Use linux_get_siginfo_type_with_fields for x86
- Authentication-results: sourceware.org; auth=none
- References: <1453474456-13169-1-git-send-email-walfred dot tedeschi at intel dot com> <1453474456-13169-3-git-send-email-walfred dot tedeschi at intel dot com>
On 01/22/2016 02:54 PM, Walfred Tedeschi wrote:
> Use linux_get_siginfo_type_with_fields for adding bound fields on
> segmentation fault for i386/amd64 siginfo.
>
> 2016-01-15 Walfred Tedeschi <walfred.tedeschi@intel.com>
>
> gdb/ChangeLog:
>
> * linux-tdep.h (linux_get_siginfo_type_with_fields): Make extern.
> * linux-tdep.c (linux_get_siginfo_type_with_fields): Make extern.
> * i386-linux-tdep.h (x86_linux_get_siginfo_type): New
> function.
> * amd64-linux-tdep.c (amd64_linux_init_abi_common): Add
> x86_linux_get_siginfo_type for the amd64 abi.
> * i386-linux-tdep.c (x86_linux_get_siginfo_type): New
> Function.
"function", lowercase.
> (i386_linux_init_abi): Add new function at the i386 ABI
> initialization.
>
> --- a/gdb/i386-linux-tdep.h
> +++ b/gdb/i386-linux-tdep.h
> @@ -72,4 +72,7 @@ extern struct target_desc *tdesc_i386_avx512_linux;
>
> extern int i386_linux_gregset_reg_offset[];
>
> +/* Returns x86 siginfo type with extra fields. */
/* Return the x86 Linux siginfo type. */
> +extern struct type *x86_linux_get_siginfo_type (struct gdbarch *gdbarch);
> +
> #endif /* i386-linux-tdep.h */
> diff --git a/gdb/linux-tdep.c b/gdb/linux-tdep.c
> index 3757306..acc6e16 100644
> --- a/gdb/linux-tdep.c
> +++ b/gdb/linux-tdep.c
> @@ -246,7 +246,7 @@ get_linux_inferior_data (void)
> /* This function is suitable for architectures that
> extend/override the standard siginfo in a specific way. */
>
> -static struct type *
> +struct type *
> linux_get_siginfo_type_with_fields (struct gdbarch *gdbarch,
> linux_siginfo_extra_fields extra_fields)
> {
> diff --git a/gdb/linux-tdep.h b/gdb/linux-tdep.h
> index b2680f8..ac342a3 100644
> --- a/gdb/linux-tdep.h
> +++ b/gdb/linux-tdep.h
> @@ -36,6 +36,10 @@ enum linux_siginfo_extra_field_values
> DEF_ENUM_FLAGS_TYPE (enum linux_siginfo_extra_field_values,
> linux_siginfo_extra_fields);
>
> +/* Return the siginfo type with additional fields. */
With this, we end up with two places documenting the function, one in the
header, and another in the c file, which is a recipe for getting comments out
of sync, which is exactly what happened. This one predates the revised one
on the implementation side. Instead, please make this patch move the
revised comment here, and replace the one there with "See linux-tdep.h."
> +struct type *linux_get_siginfo_type_with_fields (struct gdbarch *gdbarch,
> + linux_siginfo_extra_fields);
> +
OK with those changes.
Thanks,
Pedro Alves