From: "Pierre Muller" <pierre.muller@ics-cnrs.unistra.fr>
To: "'Eli Zaretskii'" <eliz@gnu.org>
Cc: <gdb-patches@sourceware.org>
Subject: RE: [PING][RFC-v4] Add windows OS Thread Information Block
Date: Thu, 01 Apr 2010 16:17:00 -0000 [thread overview]
Message-ID: <003c01cad1b6$d69e44b0$83dace10$@muller@ics-cnrs.unistra.fr> (raw)
In-Reply-To: <838w97xpui.fsf@gnu.org>
> -----Message d'origine-----
> De : gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] De la part de Eli Zaretskii
> Envoyé : Thursday, April 01, 2010 3:30 PM
> À : Pierre Muller
> Cc : gdb-patches@sourceware.org
> Objet : Re: [PING][RFC-v4] Add windows OS Thread Information Block
>
> > From: "Pierre Muller" <pierre.muller@ics-cnrs.unistra.fr>
> > Date: Thu, 1 Apr 2010 11:40:50 +0200
> >
> > I am still waiting for a comment from any global
> > maintainer concerning the non-(windows specific) parts
> > of that patch. Christopher approved the windows part.
>
> Sorry I missed that.
>
> > > + if (target_get_tib_address (ptid, &thread_local_base) == 0)
> > > + {
> > > + printf_filtered ("Unable to get thread local base for
> ThreadId
> > > %s\n",
> > > + pulongest (ptid_get_tid(ptid)));
>
> Please add _() around the user messages.
OK.
> > > + add_prefix_cmd ("w32", class_info, info_w32_command,
> > > + _("Print information specific to Win32 debugging."),
>
> RMS would say "don't call Windows ``a win''".
This is just displaced code from windows-nat.c to windows-tdep.c,
so I am not sure I should touch this.
> > > +If enabled, all non-zero fields of thread information block are
> displayed,\n\
> > > +even if its meaning is unknown."),
>
> "its" is inappropriate here, as "fields" are in plural. I suggest
> "their" instead.
I completely agree with you!
> > > +@item $_tlb
> > > +@vindex $_tlb@r{, convenience variable}
> > > +The variable @code{$_tlb} is automatically set for Windows OS
> running
> > > +applications in native mode or connected to a gdbserver that
> supports
>
> This is backwards: it makes it sound like we set the variable for
> Windows, not for the application. I suggest the following alternative
> wording:
>
> The variable @code{$_tlb} is automatically set when debugging
> applications running on MS-Windows in native mode or connected to
> gdbserver that supports the @code{qGetTIBAddr} request.
>
> Please also add an @xref to where the qGetTIBAddr packet is
> described.
The node I found is called "General Query Packets", should I refer
to this general section, or add a new node just for qGetTIBAddr?
> > > +@code{qGetTIBAddr} requests. This variable contains the address of
> the
> ^^
> Two spaces between sentences, please.
Disappeared with my @xref addition.
> > > +@tab Display Windows OS Thread Information Block.
>
> "Display MS-Windows Thread Information Block."
OK.
> > > +An error occured. This means that either the thread was not found,
> or
> ^^
> Two spaces.
Done.
> The patch for the manual is okay with the above changes.
Thanks, I attach the modified doc/gdb.texinfo diff
Pierre
$ cvs diff -u doc/gdb.texinfo
Index: doc/gdb.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/gdb.texinfo,v
retrieving revision 1.693
diff -u -r1.693 gdb.texinfo
--- doc/gdb.texinfo 1 Apr 2010 14:11:23 -0000 1.693
+++ doc/gdb.texinfo 1 Apr 2010 16:07:57 -0000
@@ -8055,6 +8055,15 @@
(@pxref{extra signal information}). Note that @code{$_siginfo}
could be empty, if the application has not yet received any signals.
For example, it will be empty before you execute the @code{run} command.
+
+@item $_tlb
+@vindex $_tlb@r{, convenience variable}
+The variable @code{$_tlb} is automatically set when debugging
+applications running on MS-Windows in native mode or connected to
+gdbserver that supports the @code{qGetTIBAddr} request.
+@xref{General Query Packets}.
+This variable contains the address of the thread information block.
+
@end table
On HP-UX systems, if you refer to a function or variable name that
@@ -15730,6 +15739,10 @@
@tab @code{qGetTLSAddr}
@tab Displaying @code{__thread} variables
+@item @code{w32 thread-information-block}
+@tab @code{qGetTIBAddr}
+@tab Display MS-Windows Thread Information Block.
+
@item @code{search-memory}
@tab @code{qSearch:memory}
@tab @code{find}
@@ -16509,6 +16522,11 @@
Without argument, this command displays information
about the six segment registers.
+@item info w32 thread-information-block
+This command displays thread specific information stored in the
+Thread Information Block (readable using @code{$fs} selector for 32-bit
+programs and @code{$gs} for 64-bit programs).
+
@kindex info dll
@item info dll
This is a Cygwin-specific alias of @code{info shared}.
@@ -29174,6 +29192,14 @@
removes a hardware breakpoint or watchpoint, and when the inferior
triggers a hardware-assisted breakpoint or watchpoint.
+@kindex maint set show-all-tib
+@kindex maint show show-all-tib
+@item maint set show-all-tib
+@itemx maint show show-all-tib
+Control whether to show all non zero areas within a 1k block starting
+at thread local base, when using @samp{info w32 thread-information-block}
+command.
+
@kindex maint space
@cindex memory used by commands
@item maint space
@@ -30387,6 +30413,28 @@
An empty reply indicates that @samp{qGetTLSAddr} is not supported by the
stub.
@end table
+@item qGetTIBAddr:@var{thread-id}:
+@cindex get thread information block address
+@cindex @samp{qGetTIBAddr} packet
+Fetch address of the Windows OS specific Thread Information Block.
+
+@var{thread-id} is the thread ID associated with the thread.
+
+Reply:
+@table @samp
+@item @var{XX}@dots{}
+Hex encoded (big endian) bytes representing the linear address of the
+thread information block.
+
+@item E @var{nn}
+An error occured. This means that either the thread was not found, or the
+address could not be retrieved.
+
+@item
+An empty reply indicates that @samp{qGetTIBAddr} is not supported by the
stub.
+@end table
+
+
@item qL @var{startflag} @var{threadcount} @var{nextthread}
Obtain thread information from RTOS. Where: @var{startflag} (one hex
digit) is one to indicate the first query and zero to indicate a
next prev parent reply other threads:[~2010-04-01 16:17 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-25 23:47 [RFC] Add windows " Pierre Muller
2009-06-26 7:04 ` Eli Zaretskii
2009-06-26 15:45 ` Christopher Faylor
2009-06-26 16:08 ` Pierre Muller
2009-06-26 16:11 ` Christopher Faylor
2009-06-27 16:07 ` Doug Evans
2009-06-27 17:15 ` Eli Zaretskii
2009-06-29 1:58 ` Christopher Faylor
2009-06-26 15:53 ` Daniel Jacobowitz
2009-06-26 16:11 ` Pierre Muller
2009-06-26 16:18 ` 'Daniel Jacobowitz'
2009-06-26 16:14 ` Christopher Faylor
2009-07-01 14:41 ` [RFC-v2] " Pierre Muller
2009-07-01 15:42 ` Pedro Alves
2009-07-01 16:05 ` Pedro Alves
2009-07-01 16:18 ` Pierre Muller
2009-07-01 16:26 ` Pedro Alves
2009-07-01 16:09 ` Pierre Muller
2009-07-01 16:33 ` Pedro Alves
2009-07-01 16:39 ` Pedro Alves
2009-07-01 17:18 ` Pedro Alves
2009-07-01 17:43 ` Eli Zaretskii
2009-07-01 18:04 ` Christopher Faylor
2009-07-03 16:11 ` [RFC-v3] " Pierre Muller
2009-07-03 19:43 ` Christopher Faylor
2010-03-10 17:14 ` [PING] " Pierre Muller
2010-03-10 17:26 ` Pedro Alves
2010-03-10 22:23 ` Pierre Muller
2010-03-10 23:30 ` Daniel Jacobowitz
2010-03-11 0:11 ` Pedro Alves
2010-03-11 0:00 ` Pedro Alves
2010-03-11 8:13 ` Pierre Muller
2010-03-15 21:40 ` [RFC-v4] Add windows OS " Pierre Muller
2010-03-16 0:10 ` Christopher Faylor
2010-04-01 9:41 ` [PING][RFC-v4] " Pierre Muller
2010-04-01 11:21 ` Pedro Alves
2010-04-01 12:57 ` [RFC-v5] " Pierre Muller
2010-04-01 13:21 ` Pedro Alves
2010-04-01 13:31 ` Pierre Muller
2010-04-01 13:43 ` Pedro Alves
2010-04-11 15:10 ` Pedro Alves
2010-04-12 13:52 ` [RFC-v6] " Pierre Muller
2010-04-12 16:43 ` Pedro Alves
2010-04-13 8:38 ` [RFA-v7] " Pierre Muller
2010-04-13 11:14 ` Pedro Alves
2010-04-13 13:21 ` [RFA-v8] " Pierre Muller
2010-04-13 15:06 ` Pedro Alves
2010-04-13 17:42 ` Eli Zaretskii
2010-04-15 22:54 ` [RFA-v9] Add Windows " Pierre Muller
[not found] ` <000c01cadcee$7ffcedd0$7ff6c970$%muller@ics-cnrs.unistra.fr>
2010-04-16 6:29 ` Eli Zaretskii
2010-04-16 7:53 ` Pierre Muller
2010-04-16 20:30 ` Christopher Faylor
[not found] ` <002101cac0f2$a2298890$e67c99b0$%muller@ics-cnrs.unistra.fr>
[not found] ` <000e01cac488$27dcf970$7796ec50$%muller@ics-cnrs.unistra.fr>
[not found] ` <001201cad17f$6a058980$3e109c80$%muller@ics-cnrs.unistra.fr>
2010-04-01 13:30 ` [PING][RFC-v4] Add windows " Eli Zaretskii
2010-04-01 16:17 ` Pierre Muller [this message]
[not found] ` <003c01cad1b6$d69e44b0$83dace10$%muller@ics-cnrs.unistra.fr>
2010-04-01 16:58 ` Eli Zaretskii
2010-03-10 18:48 ` [PING] [RFC-v3] Add windows " Mark Kettenis
2010-03-10 22:25 ` Pierre Muller
2010-03-11 0:24 ` Pedro Alves
2010-03-11 8:01 ` Pierre Muller
2009-09-02 15:35 ` [PING][RFC-v3] " Pierre Muller
2009-07-01 18:10 ` [RFC-v2] " Christopher Faylor
2009-07-01 18:20 ` Pedro Alves
2009-07-01 19:10 ` Christopher Faylor
2009-07-01 19:18 ` Pedro Alves
2009-07-01 21:13 ` Christopher Faylor
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='003c01cad1b6$d69e44b0$83dace10$@muller@ics-cnrs.unistra.fr' \
--to=pierre.muller@ics-cnrs.unistra.fr \
--cc=eliz@gnu.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