Re: [PATCH] gdbserver/s390: Advertise Z0 packet support.

Marcin Kościelnicki
2016-02-15T13:43:06Z

Ping

On 07/02/16 14:48, Marcin KoÅ›cielnicki wrote:
> This is necessary for upcoming tracepoint support - otherwise, setting
> a tracepoint and a breakpoint on the same address will fail, since gdbserver
> won't know about gdb's breakpoint.
>
> Tested on s390x-ibm-linux-gnu and s390-ibm-linux-gnu, RHEL 7.2.
>
> gdb/gdbserver/ChangeLog:
>
> * linux-s390-low.c (s390_supports_z_point_type): New function.
> (struct linux_target_ops): Wire s390_supports_z_point_type in.
> ---
> I've added missing comment. Ping?
>
> gdb/gdbserver/ChangeLog | 5 +++++
> gdb/gdbserver/linux-s390-low.c | 18 +++++++++++++++++-
> 2 files changed, 22 insertions(+), 1 deletion(-)
>
> diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
> index fd49585..254341c 100644
> --- a/gdb/gdbserver/ChangeLog
> +++ b/gdb/gdbserver/ChangeLog
> @@ -1,5 +1,10 @@
> 2016-02-07 Marcin KoÅ›cielnicki <koriakin@0x04.net>
>
> + * linux-s390-low.c (s390_supports_z_point_type): New function.
> + (struct linux_target_ops): Wire s390_supports_z_point_type in.
> +
> +2016-02-07 Marcin KoÅ›cielnicki <koriakin@0x04.net>
> +
> * tracepoint.c (struct tracepoint_action_ops): Removed.
> (struct tracepoint_action): Removed ops field.
> (struct collect_registers_action): Removed.
> diff --git a/gdb/gdbserver/linux-s390-low.c b/gdb/gdbserver/linux-s390-low.c
> index 63728aa..533e384 100644
> --- a/gdb/gdbserver/linux-s390-low.c
> +++ b/gdb/gdbserver/linux-s390-low.c
> @@ -609,6 +609,22 @@ s390_breakpoint_at (CORE_ADDR pc)
> return memcmp (c, s390_breakpoint, s390_breakpoint_len) == 0;
> }
>
> +/* Breakpoint/Watchpoint support. */
> +
> +/* The "supports_z_point_type" linux_target_ops method. */
> +
> +static int
> +s390_supports_z_point_type (char z_type)
> +{
> + switch (z_type)
> + {
> + case Z_PACKET_SW_BP:
> + return 1;
> + default:
> + return 0;
> + }
> +}
> +
> /* Support for hardware single step. */
>
> static int
> @@ -687,7 +703,7 @@ struct linux_target_ops the_low_target = {
> NULL,
> s390_breakpoint_len,
> s390_breakpoint_at,
> - NULL, /* supports_z_point_type */
> + s390_supports_z_point_type,
> NULL,
> NULL,
> NULL,
>