Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Maciej W. Rozycki" <macro@codesourcery.com>
To: Yao Qi <yao@codesourcery.com>
Cc: <gdb-patches@sourceware.org>
Subject: Re: [PATCH 1/3] Include asm/ptrace.h in mips-linux-nat.c
Date: Fri, 14 Jun 2013 12:53:00 -0000	[thread overview]
Message-ID: <alpine.DEB.1.10.1306140417040.16287@tp.orcam.me.uk> (raw)
In-Reply-To: <51BA8252.3010303@codesourcery.com>

On Fri, 14 Jun 2013, Yao Qi 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>

 Well, kernel headers bundled with the C library installed on a system GDB 
is being built on do not necessarily have to match the kernel binary the 
system uses (as is the case with the system I'm using for this validation) 
or GDB may be run on another system.  So you cannot infer at the build 
time whether the kernel used on a system GDB is going to run on supports 
watchpoints until you actually query the kernel at the run time; you need 
to do a run-time check anyway as hardware may not even if the kernel will.

 Therefore I think my question here is a matter of policy in GDB rather 
than limitations posed by a system in a given configuration.  Which makes 
your preference valid, although not for the reason you stated.

  Maciej


  reply	other threads:[~2013-06-14 12:37 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-30  2:44 [PATCH 0/3] mips hardware watchpoint support in gdbserver Yao Qi
2013-05-30  2:44 ` [PATCH 2/3] Move mips hardware watchpoint stuff to common/ Yao Qi
2013-06-13  4:12   ` Yao Qi
2013-06-19 22:05     ` Maciej W. Rozycki
2013-06-20 14:21       ` Yao Qi
2013-06-20 15:27         ` Maciej W. Rozycki
2013-06-20 17:50           ` Joel Brobecker
2013-06-21  8:03             ` Maciej W. Rozycki
2013-06-21 15:55               ` Joel Brobecker
2013-05-30  2:44 ` [PATCH 3/3] MIPS h/w watchpoint in GDBserver Yao Qi
2013-06-13  8:20   ` Yao Qi
2013-06-13 13:09     ` Eli Zaretskii
2013-06-13 16:56     ` Pedro Alves
2013-06-19 22:22     ` Maciej W. Rozycki
2013-06-21 15:00       ` Pedro Alves
2013-05-30  2:44 ` [PATCH 1/3] Include asm/ptrace.h in mips-linux-nat.c Yao Qi
2013-06-13 17:49   ` Maciej W. Rozycki
2013-06-14  6:53     ` Yao Qi
2013-06-14 12:53       ` Maciej W. Rozycki [this message]
2013-06-20 19:40         ` Pedro Alves
2013-06-20 20:45           ` Maciej W. Rozycki
2013-06-21 14:58             ` Pedro Alves
2013-06-17 16:04     ` Maciej W. Rozycki
2013-05-30 12:29 ` [PATCH 0/3] mips hardware watchpoint support in gdbserver Maciej W. Rozycki
2013-05-30 18:06 ` Pedro Alves
2013-05-30 18:08   ` Pedro Alves
2013-06-29  3:11 ` [PATCH v2 0/5] " Yao Qi
2013-06-29  3:11   ` [PATCH 5/5] MIPS GDBserver watchpoint Yao Qi
2013-06-29 15:20     ` Eli Zaretskii
2013-07-24  0:35     ` Maciej W. Rozycki
2013-07-25  0:17       ` Yao Qi
2013-07-25 21:20         ` Maciej W. Rozycki
2013-07-28  0:49           ` Yao Qi
2013-07-24 18:11     ` Pedro Alves
2013-06-29  3:11   ` [PATCH 2/5] Include asm/ptrace.h in mips-linux-nat.c Yao Qi
2013-07-24  0:26     ` Maciej W. Rozycki
2013-07-28  0:43       ` Yao Qi
2013-06-29  3:11   ` [PATCH 3/5] Refactor " Yao Qi
2013-07-24  0:27     ` Maciej W. Rozycki
2013-07-28  0:44       ` Yao Qi
2013-06-29  3:11   ` [PATCH 1/5] Share 'enum target_hw_bp_type' in GDB and GDBserver Yao Qi
2013-07-24  0:26     ` Maciej W. Rozycki
2013-07-24 14:04       ` Tom Tromey
2013-07-28  0:41         ` Yao Qi
2013-06-29  8:01   ` [PATCH 4/5] Move mips hardware watchpoint stuff to common/ Yao Qi
2013-07-24  0:31     ` Maciej W. Rozycki
2013-07-24  2:08       ` Yao Qi
2013-07-24 18:09         ` Pedro Alves
2013-07-25  0:07       ` Yao Qi
2013-07-25 21:17         ` Maciej W. Rozycki
2013-07-28  0:47           ` Yao Qi
2013-07-22  1:11   ` [PATCH v2 0/5] mips hardware watchpoint support in gdbserver Yao Qi

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=alpine.DEB.1.10.1306140417040.16287@tp.orcam.me.uk \
    --to=macro@codesourcery.com \
    --cc=gdb-patches@sourceware.org \
    --cc=yao@codesourcery.com \
    /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