linux-trace-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: LKML <linux-kernel@vger.kernel.org>,
	"linux-trace-devel@vger.kernel.org" 
	<linux-trace-devel@vger.kernel.org>,
	Linux-trace Users <linux-trace-users@vger.kernel.org>,
	Daniel Bristot de Oliveira <bristot@redhat.com>
Cc: Zamir SUN <sztsian@gmail.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Jiri Olsa <jolsa@redhat.com>,
	zsun@redhat.com, Vitaly Chikunov <vt@altlinux.org>,
	Tzvetomir Stoyanov <tstoyanov@vmware.com>,
	Yordan Karadzhov <ykaradzhov@vmware.com>,
	Ben Hutchings <ben@decadent.org.uk>,
	Sudip Mukherjee <sudipm.mukherjee@gmail.com>,
	Tony Jones <tonyj@suse.de>, John Kacur <jkacur@redhat.com>,
	Clark Williams <williams@redhat.com>, Al Stone <ahs3@debian.org>,
	Mauro Carvalho Chehab <mchehab+huawei@kernel.org>,
	Jes Sorensen <jes.sorensen@gmail.com>
Subject: [ANNOUNCE] libtracefs 1.3
Date: Wed, 23 Feb 2022 18:39:39 -0500	[thread overview]
Message-ID: <20220223183939.3650aabd@rorschach.local.home> (raw)

Long over due, but libtracefs 1.3 has finally been released!

With 90 new interfaces, it makes accessing tracefs much simpler.

Official release notes:

libtracefs 1.3

Critical:
 - Optimized string list handling. It was always stated that some string
   lists must be freed with tracefs_list_free(), and now it is mandatory, as
   metadata is used to store the size, and normal freeing of the list will
   cause memory issues.

Fixes:
 - More consistency with errno values

Notes:
 - sqlhist is now officially built
 - make samples creates executables in bin/ from examples in the man pages.

New methods:

 - New methods for setting and reading affinity
    tracefs_instance_set_affinity_set()
    tracefs_instance_set_affinity_raw()
    tracefs_instance_set_affinity()
    tracefs_instance_get_affinity()
    tracefs_instance_get_affinity_raw()
    tracefs_instance_get_affinity_set()

 - New method to see the system tracers
    tracefs_instances()

 - New methods to read and clear the error log
    tracefs_error_last()
    tracefs_error_all()
    tracefs_error_clear()

 - New methods to modify the string lists
    tracefs_list_add()
    tracefs_list_size()

 - New method to stop the iterator over raw events
    tracefs_iterate_stop()

 - New methods to make it easier to access event files
    tracefs_event_get_file()
    tracefs_event_file_read()
    tracefs_event_file_write()
    tracefs_event_file_append()
    tracefs_event_file_clear()
    tracefs_event_file_exists()

 - New method to get the available filter functions
    tracefs_filter_functions()

 - New methods to enable or disable tracers
    tracefs_tracer_set()
    tracefs_tracer_clear()

 - New methods for streaming the trace_pipe file
    tracefs_trace_pipe_stream()
    tracefs_trace_pipe_print()
    tracefs_trace_pipe_stop()

 - New methods for creating, modifying and destroying dynamic events
    tracefs_dynevent_create()
    tracefs_dynevent_destroy()
    tracefs_dynevent_destroy_all()
    tracefs_dynevent_free()
    tracefs_dynevent_list_free()
    tracefs_dynevent_get_all()
    tracefs_dynevent_get()
    tracefs_dynevent_info()
    tracefs_dynevent_get_event()

 - New method to create an event probe (then use dynamic methods above)
    tracefs_eprobe_alloc()

 - New methods to create kprobes and kretprobes
    tracefs_kprobe_alloc()
    tracefs_kretprobe_alloc()
    tracefs_kprobe_raw()
    tracefs_kretprobe_raw()

 - New methods for creating, modifying and destroying histograms
    tracefs_hist_free()
    tracefs_hist_alloc()
    tracefs_hist_alloc_2d()
    tracefs_hist_alloc_nd()
    tracefs_hist_get_name()
    tracefs_hist_get_event()
    tracefs_hist_get_system()
    tracefs_hist_add_key()
    tracefs_hist_add_value()
    tracefs_hist_add_sort_key()
    tracefs_hist_set_sort_key()
    tracefs_hist_sort_key_direction()
    tracefs_hist_add_name()
    tracefs_hist_append_filter()
    tracefs_hist_echo_cmd()
    tracefs_hist_command()
    tracefs_hist_start()
    tracefs_hist_pause()
    tracefs_hist_continue()
    tracefs_hist_reset()
    tracefs_hist_destroy()

 - New methods for creating, modifying and destroying synthetic events
    tracefs_synth_get_name()
    tracefs_synth *tracefs_synth_alloc()
    tracefs_synth_add_match_field()
    tracefs_synth_add_compare_field()
    tracefs_synth_add_start_field()
    tracefs_synth_add_end_field()
    tracefs_synth_append_start_filter()
    tracefs_synth_append_end_filter()
    tracefs_synth_trace()
    tracefs_synth_snapshot()
    tracefs_synth_save()
    tracefs_synth_complete()
    tracefs_synth_get_start_hist()
    tracefs_synth_create()
    tracefs_synth_destroy()
    tracefs_synth_free()
    tracefs_synth_echo_cmd()
    tracefs_synth_raw_fmt()
    tracefs_synth_show_event()
    tracefs_synth_show_start_hist()
    tracefs_synth_show_end_hist()
    tracefs_synth_get_event()

 - New methods to modify event filters
    tracefs_filter_string_append()
    tracefs_filter_string_verify()
    tracefs_event_filter_apply()
    tracefs_event_filter_clear()
    tracefs_event_append_filter()
    tracefs_event_verify_filter()

 - New method to create a synthetic event via a SQL string
    tracefs_sql()
    The man page comes with its own program (sqlhist).

Enjoy!

-- Steve


             reply	other threads:[~2022-02-23 23:40 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-23 23:39 Steven Rostedt [this message]
2022-02-24  0:09 ` [ANNOUNCE] libtracefs 1.3 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=20220223183939.3650aabd@rorschach.local.home \
    --to=rostedt@goodmis.org \
    --cc=acme@kernel.org \
    --cc=ahs3@debian.org \
    --cc=ben@decadent.org.uk \
    --cc=bristot@redhat.com \
    --cc=jes.sorensen@gmail.com \
    --cc=jkacur@redhat.com \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-trace-devel@vger.kernel.org \
    --cc=linux-trace-users@vger.kernel.org \
    --cc=mchehab+huawei@kernel.org \
    --cc=sudipm.mukherjee@gmail.com \
    --cc=sztsian@gmail.com \
    --cc=tonyj@suse.de \
    --cc=tstoyanov@vmware.com \
    --cc=vt@altlinux.org \
    --cc=williams@redhat.com \
    --cc=ykaradzhov@vmware.com \
    --cc=zsun@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 NNTP newsgroup(s).