From: Tom Tromey <tromey@redhat.com>
To: Yao Qi <yao@codesourcery.com>
Cc: <gdb-patches@sourceware.org>
Subject: Re: [PATCH 2/5] Save trace into CTF format
Date: Thu, 07 Mar 2013 21:29:00 -0000 [thread overview]
Message-ID: <87d2vaew5i.fsf@fleche.redhat.com> (raw)
In-Reply-To: <51332381.6010101@codesourcery.com> (Yao Qi's message of "Sun, 3 Mar 2013 18:18:41 +0800")
>>>>> "Yao" == Yao Qi <yao@codesourcery.com> writes:
Yao> +static void
Yao> +ctf_save_fwrite (FILE *fd, const gdb_byte *buf, size_t size)
Yao> +{
Yao> + if (fwrite (buf, size, 1, fd) != 1)
Yao> + error (_("Unable to write file for saving trace data (%s)"),
Yao> + safe_strerror (errno));
Yao> +}
Why not merge this function with its only caller?
Yao> +static void
Yao> +ctf_save_fwrite_format (FILE *fd, const char *format, ...)
Yao> +{
Yao> + va_list args;
Yao> +
Yao> + va_start (args, format);
Yao> + vfprintf (fd, format, args);
This seems like it needs the same error-checking as ctf_save_fwrite;
plus maybe (?) the content_size update as well.
Yao> +static void
Yao> +ctf_write_frame_v_block (struct trace_file_writer *self,
Yao> + int num, LONGEST val)
Yao> +{
Yao> + struct ctf_trace_file_writer *writer
Yao> + = (struct ctf_trace_file_writer *) self;
Yao> + uint32_t id = CTF_EVENT_ID_TSV;
Yao> +
Yao> + /* Event Id. */
Yao> + ctf_save_align_write (&writer->tcs, (gdb_byte *) &id, 4, 4);
Yao> +
Yao> + /* val. */
Yao> + ctf_save_align_write (&writer->tcs, (gdb_byte *) &val, 8, 8);
It seems safer to use a uint64_t intermediary here.
Yao> + /* num. */
Yao> + ctf_save_align_write (&writer->tcs, (gdb_byte *) &num, 4, 4);
And a uint32_t here.
Yao> +/* Save the trace data to dir DIRENAME of ctf format. */
Typo, "DIRNAME".
Yao> +void
Yao> +trace_save_ctf (const char *dirname, int target_does_save)
Yao> +{
Yao> + struct trace_file_writer *writer;
Yao> + struct cleanup *back_to;
Yao> +
Yao> + writer = ctf_trace_file_writer_new ();
Yao> + trace_save (dirname, writer, target_does_save);
Yao> + back_to = make_cleanup (trace_file_writer_xfree, writer);
Yao> + do_cleanups (back_to);
I think the make_cleanup and trace_save lines have to be exchanged.
Otherwise this doesn't make much sense.
Tom
next prev parent reply other threads:[~2013-03-07 21:29 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-27 2:18 [PATCH 0/5, 2nd try] CTF Support Yao Qi
2013-02-27 2:18 ` [PATCH 1/5] Refactor 'tsave' Yao Qi
2013-02-28 16:49 ` Pedro Alves
2013-03-01 8:58 ` Yao Qi
2013-03-01 10:05 ` Pedro Alves
2013-03-01 10:41 ` Pedro Alves
2013-03-01 11:26 ` Yao Qi
2013-03-01 12:13 ` Pedro Alves
2013-03-01 15:55 ` Yao Qi
2013-03-05 20:59 ` Pedro Alves
2013-03-03 8:45 ` Yao Qi
2013-02-27 2:19 ` [PATCH 5/5] ctf test: report.exp Yao Qi
2013-02-27 18:48 ` Pedro Alves
2013-02-28 1:36 ` Yao Qi
2013-02-28 18:30 ` Pedro Alves
2013-02-27 2:19 ` [PATCH 4/5] ctf doc and NEWS Yao Qi
2013-02-27 18:39 ` Eli Zaretskii
2013-02-27 2:19 ` [PATCH 2/5] Save trace into CTF format Yao Qi
2013-02-28 13:17 ` Yao Qi
2013-02-28 13:17 ` Andreas Schwab
2013-02-28 17:19 ` Pedro Alves
2013-03-01 19:22 ` Tom Tromey
2013-03-03 10:19 ` Yao Qi
2013-03-07 21:29 ` Tom Tromey [this message]
2013-03-16 2:30 ` Joel Brobecker
2013-03-16 4:22 ` Yao Qi
2013-02-27 2:19 ` [PATCH 3/5] Read CTF by the ctf target Yao Qi
2013-02-28 17:59 ` Pedro Alves
2013-03-01 2:38 ` Hui Zhu
2013-05-07 13:07 ` Mathieu Desnoyers
2013-05-07 13:24 ` Yao Qi
2013-05-07 13:28 ` Mathieu Desnoyers
2013-03-01 7:55 ` Yao Qi
2013-03-01 9:15 ` Pedro Alves
2013-03-01 15:51 ` Tom Tromey
2013-03-03 10:39 ` Yao Qi
2013-03-03 10:46 ` 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=87d2vaew5i.fsf@fleche.redhat.com \
--to=tromey@redhat.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