This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] Implement 'catch syscall' for gdbserver
- From: Eli Zaretskii <eliz at gnu dot org>
- To: Josh Stone <jistone at redhat dot com>
- Cc: gdb-patches at sourceware dot org, sergiodj at redhat dot com, palves at redhat dot com, philippe dot waroquiers at skynet dot be
- Date: Fri, 30 Oct 2015 22:17:12 +0200
- Subject: Re: [PATCH] Implement 'catch syscall' for gdbserver
- Authentication-results: sourceware.org; auth=none
- References: <1446169946-28117-1-git-send-email-jistone at redhat dot com> <83d1vw22sb dot fsf at gnu dot org> <5633AB37 dot 70903 at redhat dot com>
- Reply-to: Eli Zaretskii <eliz at gnu dot org>
> Cc: gdb-patches@sourceware.org, sergiodj@redhat.com, palves@redhat.com,
> philippe.waroquiers@skynet.be
> From: Josh Stone <jistone@redhat.com>
> Date: Fri, 30 Oct 2015 10:39:03 -0700
>
> >> +Note that if a syscall not member of the list is reported, @value{GDBN}
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > "a syscall not in the list" sounds simpler and more clear, and doesn't
> > change the meaning.
> >
> >> +will filter it if this syscall is not caught. It is however more efficient
> >> +to only report the needed syscalls.
> >
> > The question is about the same sentence: maybe because I don't really
> > use this stuff, I'm not sure I understand the distinction between
> > "reported" and "caught" here: what does it mean for a syscall to be
> > reported, but not caught? Perhaps this text should be clarified to
> > not cause such confusion.
>
> "Reported" refers to syscall stop packets sent over the wire, whereas
> "caught" refers to whether the GDB user had `catch syscall N` matching
> that particular syscall.
Ah, okay. What tripped me was the ambiguity of "caught": you meant to
say that the user issued the "catch syscall N" command, whereas I
interpreted it to mean that GDB already caught the syscall.
So maybe reword as follows:
Note that if a syscall not in the list is reported, @value{GDBN}
will filter it if this syscall is not being caught due to the
corresponding @code{catch syscall} command.
Thanks.