linux-trace-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: "Tzvetomir Stoyanov (VMware)" <tz.stoyanov@gmail.com>
Cc: linux-trace-devel@vger.kernel.org
Subject: Re: [PATCH v3 15/21] trace-cmd library: Track maximum CPUs count in input handler
Date: Mon, 4 Oct 2021 14:48:14 -0400	[thread overview]
Message-ID: <20211004144814.0b191b97@gandalf.local.home> (raw)
In-Reply-To: <20210914131232.3964615-16-tz.stoyanov@gmail.com>

On Tue, 14 Sep 2021 16:12:26 +0300
"Tzvetomir Stoyanov (VMware)" <tz.stoyanov@gmail.com> wrote:

> This clean up is needed for the design of the next trace file version,
> where only CPUs with trace data could be stored in the file. Each trace
> instance may have its own CPU count, depending on collected traces.
> As the main input handler is used by the top trace instance, the
> CPU count there is for the top trace instance and may differ with cpu
> counts of the other instances. Added a new "max_cpu" member of the input
> handler, that tracks the maximum CPU count of all instances, recorded in
> the file.
> 
> Signed-off-by: Tzvetomir Stoyanov (VMware) <tz.stoyanov@gmail.com>
> ---
>  lib/trace-cmd/trace-input.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/trace-cmd/trace-input.c b/lib/trace-cmd/trace-input.c
> index cb8b9f14..dc82d3ea 100644
> --- a/lib/trace-cmd/trace-input.c
> +++ b/lib/trace-cmd/trace-input.c
> @@ -125,6 +125,7 @@ struct tracecmd_input {
>  	int			long_size;
>  	int			page_size;
>  	int			page_map_size;
> +	int			max_cpu;
>  	int			cpus;
>  	int			ref;
>  	int			nr_buffers;	/* buffer instances */
> @@ -838,6 +839,7 @@ static int read_cpus(struct tracecmd_input *handle)
>  		return -1;
>  
>  	handle->cpus = cpus;
> +	handle->max_cpu = cpus;
>  	tep_set_cpus(handle->pevent, handle->cpus);
>  	handle->file_state = TRACECMD_FILE_CPU_COUNT;
>  
> @@ -2794,6 +2796,8 @@ static int handle_options(struct tracecmd_input *handle)
>  		case TRACECMD_OPTION_CPUCOUNT:
>  			cpus = *(int *)buf;
>  			handle->cpus = tep_read_number(handle->pevent, &cpus, 4);
> +			handle->max_cpu = handle->cpus;

Shouldn't this be:

			if (handles->cpus > handle->max_cpu)
				handle->max_cpu = handle->cpus;

??

-- Steve

> +			tep_set_cpus(handle->pevent, handle->cpus);
>  			break;
>  		case TRACECMD_OPTION_PROCMAPS:
>  			if (buf[size-1] == '\0')
> @@ -4074,7 +4078,7 @@ int tracecmd_page_size(struct tracecmd_input *handle)
>   */
>  int tracecmd_cpus(struct tracecmd_input *handle)
>  {
> -	return handle->cpus;
> +	return handle->max_cpu;
>  }
>  
>  /**


  reply	other threads:[~2021-10-04 18:48 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-14 13:12 [PATCH v3 00/21] trace-cmd fixes and clean-ups Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 01/21] trace-cmd library: Read option id with correct endian Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 02/21] trace-cmd report: Fix typos in error messages Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 03/21] trace-cmd library: Fix version string memory leak Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 04/21] trace-cmd library: Fixed a memory leak on input handler close Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 05/21] trace-cmd library: Do not pass guests list to a buffer instance Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 06/21] trace-cmd library: Set long size to the input tep handler when it is read from the file Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 07/21] trace-cmd library: Do not use local variables when reading CPU stat option Tzvetomir Stoyanov (VMware)
2021-10-04 15:35   ` Steven Rostedt
2021-09-14 13:12 ` [PATCH v3 08/21] trace-cmd library: Reuse within the library the function that checks file state Tzvetomir Stoyanov (VMware)
2021-10-04 15:43   ` Steven Rostedt
2021-09-14 13:12 ` [PATCH v3 09/21] trace-cmd library: Fix possible memory leak in read_ftrace_files() Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 10/21] trace-cmd library: Fix possible memory leak in read_event_files() Tzvetomir Stoyanov (VMware)
2021-10-04 15:47   ` Steven Rostedt
2021-09-14 13:12 ` [PATCH v3 11/21] trace-cmd library: Fix possible memory leak in read_proc_kallsyms() Tzvetomir Stoyanov (VMware)
2021-10-04 15:55   ` Steven Rostedt
2021-09-14 13:12 ` [PATCH v3 12/21] trace-cmd library: Fix possible memory leak in read_ftrace_printk() Tzvetomir Stoyanov (VMware)
2021-10-04 18:43   ` Steven Rostedt
2021-09-14 13:12 ` [PATCH v3 13/21] trace-cmd library: Fix possible memory leak in read_and_parse_cmdlines() Tzvetomir Stoyanov (VMware)
2021-10-04 18:44   ` Steven Rostedt
2021-09-14 13:12 ` [PATCH v3 14/21] trace-cmd library: Set input handler default values in allocation function Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 15/21] trace-cmd library: Track maximum CPUs count in input handler Tzvetomir Stoyanov (VMware)
2021-10-04 18:48   ` Steven Rostedt [this message]
2021-09-14 13:12 ` [PATCH v3 16/21] trace-cmd report: Close input file handlers on exit Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 17/21] trace-cmd report: Do not print empty buffer name Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 18/21] trace-cmd library: Set correct CPU to the record, retrieved with tracecmd_peek_data Tzvetomir Stoyanov (VMware)
2021-09-14 13:12 ` [PATCH v3 19/21] trace-cmd library: Refactor APIs for creating output handler Tzvetomir Stoyanov (VMware)
2021-10-04 22:37   ` Steven Rostedt
2021-09-14 13:12 ` [PATCH v3 20/21] trace-cmd library: Refactor the logic for writing trace data in the file Tzvetomir Stoyanov (VMware)
2021-10-05  0:51   ` Steven Rostedt
2021-09-14 13:12 ` [PATCH v3 21/21] trace-cmd report: Init the top trace instance earlier Tzvetomir Stoyanov (VMware)
2021-10-05  1:00 ` [PATCH v3 00/21] trace-cmd fixes and clean-ups Steven Rostedt

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=20211004144814.0b191b97@gandalf.local.home \
    --to=rostedt@goodmis.org \
    --cc=linux-trace-devel@vger.kernel.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).