From: Pedro Alves <palves@redhat.com>
To: Gabriel Krisman Bertazi <gabriel@krisman.be>, sergiodj@redhat.com
Cc: gdb-patches@sourceware.org, dje@google.com
Subject: Re: [PATCH v4 2/5] Add support to catch groups of syscalls.
Date: Wed, 13 May 2015 10:38:00 -0000 [thread overview]
Message-ID: <555329AF.5090905@redhat.com> (raw)
In-Reply-To: <1431304069-19647-3-git-send-email-gabriel@krisman.be>
On 05/11/2015 01:27 AM, Gabriel Krisman Bertazi wrote:
> catch_syscall_completer (struct cmd_list_element *cmd,
> const char *text, const char *word)
> {
> - const char **list = get_syscall_names (get_current_arch ());
> - VEC (char_ptr) *retlist
> - = (list == NULL) ? NULL : complete_on_enum (list, word, word);
> + struct gdbarch *gdbarch = get_current_arch ();
> + struct cleanup *cleanups = make_cleanup (null_cleanup, NULL);
> + VEC (char_ptr) *group_retlist = NULL;
> + VEC (char_ptr) *syscall_retlist = NULL;
> + VEC (char_ptr) *retlist = NULL;
> + const char **group_list = NULL;
> + const char **syscall_list = NULL;
> + const char *prefix;
> + int i;
> +
> + /* Complete with both, syscall names and groups. */
> + syscall_list = get_syscall_names (gdbarch);
> + group_list = get_syscall_group_names (gdbarch);
> +
> + /* Append "group:" prefix to syscall groups. */
> + for (i = 0; group_list[i] != NULL; i++)
> + {
> + char *prefixed_group = xstrprintf ("group:%s", group_list[i]);
> +
> + group_list[i] = prefixed_group;
> + make_cleanup (xfree, prefixed_group);
> + }
> +
...
> + VEC_free (char_ptr, syscall_retlist);
> + VEC_free (char_ptr, group_retlist);
> + xfree (syscall_list);
> + xfree (group_list);
> + do_cleanups (cleanups);
>
Odd pattern of mixing VEC_free/xfree and cleanups.
Any reason those don't go through cleanups too? Note: for
VECs, there's VEC_cleanup.
> - xfree (list);
> return retlist;
> }
>
Thanks,
Pedro Alves
next prev parent reply other threads:[~2015-05-13 10:38 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-26 1:25 [PATCH v3 00/17] Catch syscall group Gabriel Krisman Bertazi
2015-04-26 1:25 ` [PATCH v3 02/17] Add support to catch groups of syscalls Gabriel Krisman Bertazi
2015-04-26 1:25 ` [PATCH v3 03/17] Add tests for catching groups of syscalls on supported architectures Gabriel Krisman Bertazi
2015-04-26 18:44 ` Sergio Durigan Junior
2015-04-26 1:25 ` [PATCH v3 01/17] Implemement support for groups of syscalls in the xml-syscall interface Gabriel Krisman Bertazi
2015-04-26 1:26 ` [PATCH v3 05/17] Create syscall groups for ppc Gabriel Krisman Bertazi
2015-04-26 1:26 ` [PATCH v3 09/17] Create syscall groups for bfin Gabriel Krisman Bertazi
2015-04-26 1:26 ` [PATCH v3 04/17] Create syscall groups for amd64 Gabriel Krisman Bertazi
2015-04-26 1:26 ` [PATCH v3 10/17] Create syscall groups for i386 Gabriel Krisman Bertazi
2015-04-26 1:26 ` [PATCH v3 06/17] Create syscall groups for ppc64 Gabriel Krisman Bertazi
2015-04-26 1:26 ` [PATCH v3 08/17] Create syscall groups for arm Gabriel Krisman Bertazi
2015-04-26 1:26 ` [PATCH v3 12/17] Create syscall groups for mips-n64 Gabriel Krisman Bertazi
2015-04-26 1:26 ` [PATCH v3 07/17] Create syscall groups for aarch64 Gabriel Krisman Bertazi
2015-04-26 1:47 ` [PATCH v3 13/17] Create syscall groups for mips-o32 Gabriel Krisman Bertazi
2015-04-26 1:47 ` [PATCH v3 14/17] Create syscall groups for s390 Gabriel Krisman Bertazi
2015-04-26 1:47 ` [PATCH v3 11/17] Create syscall groups for mips-n32 Gabriel Krisman Bertazi
2015-04-26 1:47 ` [PATCH v3 16/17] Create syscall groups for sparc Gabriel Krisman Bertazi
2015-04-26 1:47 ` [PATCH v3 17/17] Create syscall groups for sparc64 Gabriel Krisman Bertazi
2015-04-26 1:47 ` [PATCH v3 15/17] Create syscall groups for s390x Gabriel Krisman Bertazi
2015-04-26 18:58 ` [PATCH v3 00/17] Catch syscall group Sergio Durigan Junior
2015-04-28 11:24 ` Pedro Alves
2015-04-29 0:45 ` Sergio Durigan Junior
2015-04-29 10:44 ` Pedro Alves
2015-05-04 2:34 ` Gabriel Krisman Bertazi
2015-05-06 14:38 ` Pedro Alves
2015-05-10 18:34 ` Gabriel Krisman Bertazi
2015-05-10 19:01 ` Sergio Durigan Junior
2015-05-11 0:28 ` [PATCH v4 0/4] catch " Gabriel Krisman Bertazi
2015-05-11 0:28 ` [PATCH v4 2/5] Add support to catch groups of syscalls Gabriel Krisman Bertazi
2015-05-13 10:38 ` Pedro Alves [this message]
2015-05-11 0:28 ` [PATCH v4 3/5] Add tests for catching groups of syscalls on supported architectures Gabriel Krisman Bertazi
2015-05-11 0:28 ` [PATCH v4 4/5] Include group information in xml syscall files Gabriel Krisman Bertazi
2015-05-12 21:42 ` Doug Evans
2015-05-13 1:17 ` Gabriel Krisman Bertazi
2015-05-13 10:43 ` Pedro Alves
2015-05-11 0:28 ` [PATCH v4 5/5] Update documentation on catching a group of related syscalls Gabriel Krisman Bertazi
2015-05-11 0:40 ` Gabriel Krisman Bertazi
2015-05-13 10:30 ` Pedro Alves
2015-05-13 16:40 ` Eli Zaretskii
2015-05-11 0:28 ` [PATCH v4 1/5] Implemement support for groups of syscalls in the xml-syscall interface Gabriel Krisman Bertazi
2015-05-13 10:47 ` [PATCH v4 0/4] catch syscall group Pedro Alves
2015-05-11 11:39 ` [PATCH v3 00/17] Catch " Pedro Alves
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=555329AF.5090905@redhat.com \
--to=palves@redhat.com \
--cc=dje@google.com \
--cc=gabriel@krisman.be \
--cc=gdb-patches@sourceware.org \
--cc=sergiodj@redhat.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).