From: Slavomir Kaslev <slavomir.kaslev@gmail.com>
To: "Tzvetomir Stoyanov (VMware)" <tz.stoyanov@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>, linux-trace-devel@vger.kernel.org
Subject: Re: [PATCH v15 16/18] trace-cmd: Basic infrastructure for host - guest timestamp synchronization
Date: Thu, 28 Nov 2019 17:08:08 +0200 [thread overview]
Message-ID: <CAE0o1Nv33cEQGGX92XDCW7Y_E8CZ2uZ-ZKV=-_TkMeh3LB02DQ@mail.gmail.com> (raw)
In-Reply-To: <20191128085409.289684-17-tz.stoyanov@gmail.com>
On Thu, Nov 28, 2019 at 11:02 AM Tzvetomir Stoyanov (VMware)
<tz.stoyanov@gmail.com> wrote:
[...]
> --- a/Documentation/trace-cmd-record.1.txt
> +++ b/Documentation/trace-cmd-record.1.txt
> @@ -338,6 +338,12 @@ OPTIONS
> the offset will also be in nanoseconds even if the displayed units are
> in microseconds.
>
> +*--tsync-interval*::
> + Set the loop interval, in ms, for timestamps synchronization with guests:
> + If a negative number is specified, timestamps synchronization is disabled
> + If 0 is specified, no loop is performed - timestamps offset is calculated only twice,"
> + at the beginnig and at the end of the trace\n"
Typo in "beginnig".
[...]
> diff --git a/lib/trace-cmd/trace-msg.c b/lib/trace-cmd/trace-msg.c
> index a34297f..8944013 100644
> --- a/lib/trace-cmd/trace-msg.c
> +++ b/lib/trace-cmd/trace-msg.c
> @@ -26,8 +26,12 @@
> #include "trace-local.h"
> #include "trace-msg.h"
>
> +typedef __u16 u16;
> +typedef __s16 s16;
s16 and u16 seem to not be used.
[...]
> @@ -264,6 +278,17 @@ static int tracecmd_msg_send(int fd, struct tracecmd_msg *msg)
> return ret;
> }
>
> +static int tracecmd_msg_send_nofree(int fd, struct tracecmd_msg *msg)
> +{
> + int ret = 0;
> +
> + ret = msg_write(fd, msg);
> + if (ret < 0)
> + ret = -ECOMM;
> +
> + return ret;
> +}
Maybe reuse tracecmd_msg_send_nofree in tracecmd_msg_send above?
[...]
> +int tracecmd_msg_recv_time_sync(struct tracecmd_msg_handle *msg_handle,
> + unsigned int *sync_protocol,
> + unsigned int *sync_msg_id,
> + unsigned int *payload_size, char **payload)
> +{
> + struct tracecmd_msg msg;
> + int ret = -1;
> + int buf_size;
> +
> + memset(&msg, 0, sizeof(msg));
> + ret = tracecmd_msg_recv(msg_handle->fd, &msg);
> + if (ret < 0)
> + goto out;
> +
> + if (ntohl(msg.hdr.cmd) != MSG_TIME_SYNC) {
> + ret = -EOPNOTSUPP;
> + goto out;
> + }
> +
> + if (sync_protocol)
> + *sync_protocol = ntohl(msg.tsync.sync_protocol);
> + if (sync_msg_id)
> + *sync_msg_id = ntohl(msg.tsync.sync_msg_id);
> +
> + buf_size = msg_buf_len(&msg);
> + if (buf_size < 0) {
> + ret = -EINVAL;
> + goto out;
> + }
> +
> + if (buf_size && payload && payload_size) {
> + if (*payload_size) {
> + if (*payload_size != buf_size || *payload == NULL) {
> + ret = -ENOMEM;
Returning ENOMEM in this case is confusing. If this case is intended
make it so that we don't allocate on each tracecmd_msg_recv_time_sync,
maybe do realloc() here instead?
--
Slavomir Kaslev
next prev parent reply other threads:[~2019-11-28 15:08 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-28 8:53 [PATCH v15 00/18]Timestamp synchronization of host - guest tracing session Tzvetomir Stoyanov (VMware)
2019-11-28 8:53 ` [PATCH v15 01/18] trace-cmd: Implement new lib API: tracecmd_local_events_system() Tzvetomir Stoyanov (VMware)
2019-11-28 8:53 ` [PATCH v15 02/18] trace-cmd: Add support for negative time offsets in trace.dat file Tzvetomir Stoyanov (VMware)
2019-11-28 8:53 ` [PATCH v15 03/18] trace-cmd: Add implementations of htonll() and ntohll() Tzvetomir Stoyanov (VMware)
2019-11-28 8:53 ` [PATCH v15 04/18] trace-cmd: Add new library APIs for ftrace instances Tzvetomir Stoyanov (VMware)
2019-11-28 8:53 ` [PATCH v15 05/18] trace-cmd: Add new library API for local CPU count Tzvetomir Stoyanov (VMware)
2019-11-28 8:53 ` [PATCH v15 06/18] trace-cmd: Add new library API for reading ftrace buffers Tzvetomir Stoyanov (VMware)
2019-11-28 8:53 ` [PATCH v15 07/18] trace-cmd: Find and store pids of tasks, which run virtual CPUs of given VM Tzvetomir Stoyanov (VMware)
2019-11-28 8:53 ` [PATCH v15 08/18] trace-cmd: Implement new API tracecmd_add_option_v() Tzvetomir Stoyanov (VMware)
2019-11-28 8:54 ` [PATCH v15 09/18] trace-cmd: Add new API to generate a unique ID of the tracing session Tzvetomir Stoyanov (VMware)
2019-11-28 8:54 ` [PATCH v15 10/18] trace-cmd: Store the session tracing ID in the trace.dat file Tzvetomir Stoyanov (VMware)
2019-11-28 8:54 ` [PATCH v15 11/18] trace-cmd: Exchange tracing IDs between host and guest Tzvetomir Stoyanov (VMware)
2019-11-28 14:34 ` Slavomir Kaslev
2019-11-28 14:58 ` Tzvetomir Stoyanov
2019-11-29 10:22 ` Tzvetomir Stoyanov
2019-11-28 8:54 ` [PATCH v15 12/18] trace-cmd: Implement new option in trace.dat file: TRACECMD_OPTION_TIME_SHIFT Tzvetomir Stoyanov (VMware)
2019-11-28 8:54 ` [PATCH v15 13/18] trace-cmd: Add guest information in host's trace.dat file Tzvetomir Stoyanov (VMware)
2019-11-28 8:54 ` [PATCH v15 14/18] trace-cmd: Add host trace clock as guest trace argument Tzvetomir Stoyanov (VMware)
2019-11-28 14:45 ` Slavomir Kaslev
2019-11-28 15:05 ` Tzvetomir Stoyanov
2019-11-28 8:54 ` [PATCH v15 15/18] trace-cmd: Refactor few trace-cmd internal functions Tzvetomir Stoyanov (VMware)
2019-11-28 14:51 ` Slavomir Kaslev
2019-11-28 15:08 ` Tzvetomir Stoyanov
2019-11-28 8:54 ` [PATCH v15 16/18] trace-cmd: Basic infrastructure for host - guest timestamp synchronization Tzvetomir Stoyanov (VMware)
2019-11-28 15:08 ` Slavomir Kaslev [this message]
2019-11-28 15:27 ` Tzvetomir Stoyanov
2019-11-28 8:54 ` [PATCH v15 17/18] trace-cmd: [POC] PTP-like algorithm " Tzvetomir Stoyanov (VMware)
2019-11-28 8:54 ` [PATCH v15 18/18] trace-cmd: Debug scripts for " Tzvetomir Stoyanov (VMware)
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='CAE0o1Nv33cEQGGX92XDCW7Y_E8CZ2uZ-ZKV=-_TkMeh3LB02DQ@mail.gmail.com' \
--to=slavomir.kaslev@gmail.com \
--cc=linux-trace-devel@vger.kernel.org \
--cc=rostedt@goodmis.org \
--cc=tz.stoyanov@gmail.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 NNTP newsgroup(s).