Re: [RFC PATCH 2/3] Add support to catch groups of syscalls.

Gabriel Krisman Bertazi
2014-10-20T04:52:58Z

[-- Attachment #1: Type: text/plain, Size: 2245 bytes --]

Doug Evans <dje@google.com> writes:

Sorry I took so long to answer your message. I got a lot of college
stuff to deal with right now... :(

> Would you still allow "catch syscall open -g network"?

Yes. As a matter of fact, I still don't see the problem of allowing
"catch syscall open -g network exit" to catch open and exit syscalls and
the network group on the same command, provided that -g refers only to
the next token. By the way, for the "-group" suffix you suggested,
would we also allow "catch syscall open network-group exit", right?

> I'm not really comfortable with that (far more so than "catch syscall
> open network-group").
> If you want to require -g at the front, and thus disallow catching
> both syscalls and syscall groups in the same command then that would
> be fine with me.

I really think we shouldn't disallow catching syscalls and syscalls
group on the same command, no matter which syntax we pick. GDB wiki
says that GDB should be more permissive about command's syntax, in a
sense that user shouldn't spend more time than needed to find out how a
command works. I think disallowing catching syscalls and groups on the
same command would reduce expressiveness in this case.

> Still need a solution for listing them. Arguably since we don't
> provide a way to list syscalls (sigh, modulo the hack I showed, which
> should be fixed so that it no longer works anyways :-)), providing a
> way to list syscall groups is for a separate patch. Kudos if you
> still want to provide a way to list syscalls and groups though.

So, definitively allowing "catch syscall -g" to list syscalls is not a
good idea. Sergio suggested off-list to use another option, maybe -lg
to list syscall groups. Then, a future patch could also extend catch
syscall to list all syscalls using a -l option or something like that.
Sergio, sorry if I got your suggestion wrong.

OTOH, I might be over-thinking this simple stuff :). I'm ok with the
namespace (suffix) syntax, but I think we should go with "g:" (or even
"group:network", if it's not too verbose) instead of "-group", to avoid
the issue pointed out by Sergio with the exit_group syscall.

Cheers,

--
Gabriel Krisman Bertazi

[-- Attachment #2: Type: application/pgp-signature, Size: 818 bytes --]