Re: [PATCH 1/3] Include asm/ptrace.h in mips-linux-nat.c

Yao Qi
2013-06-14T02:39:46Z

On 06/14/2013 01:37 AM, Maciej W. Rozycki wrote:
> ../../src/gdb/mips-linux-nat.c:599: error: storage size of 'dummy_regs' isn't known
>
> etc. for the very reason the system I used for testing has old kernel
> headers installed (2.6.19 it would seem, according to <linux/version.h>).
>
> Such a failure is not acceptable from the user's point of view; I think
> there are three ways to deal with this:
>
> 1. Add an autoconf test that checks for the presence of a key
> <asm/ptrace.h> definition; I think 'struct pt_watch_regs' is a good
> candidate. If that test does not succeed, then the configure process
> fails gracefully stating the minimum released version of kernel headers
> required.
>
> 2. Add the same test, except in the failure case fall back to the internal
> definitions we already have, wrapped into #ifndef
> HAVE_STRUCT_PT_WATCH_REGS.
>
> 3. Add the same test and disable hardware watchpoint support in the
> failure case.

I prefer #3. If 'struct pt_watch_regs' is not defined, hardware
watchpoint is not supported in the kernel. Because 'struct
pt_watch_regs' was added in this commit in linux kernel,

commit 0926bf953ee79b8f139741b442e5a18520f81705
Author: David Daney <ddaney@avtrex.com>
Date: Tue Sep 23 00:11:26 2008 -0700

MIPS: Ptrace support for HARDWARE_WATCHPOINTS

This is the final part of the watch register patch. Here we hook up
ptrace so that the user space debugger (gdb), can set and read the
registers.

Signed-off-by: David Daney <ddaney@avtrex.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

--
Yao (é½å°§)