lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20201120200314.21efabe5@oasis.local.home>
Date:   Fri, 20 Nov 2020 20:03:14 -0500
From:   Steven Rostedt <rostedt@...dmis.org>
To:     LKML <linux-kernel@...r.kernel.org>,
        "linux-trace-devel@...r.kernel.org" 
        <linux-trace-devel@...r.kernel.org>,
        Linux-trace Users <linux-trace-users@...r.kernel.org>
Cc:     Zamir SUN <sztsian@...il.com>,
        Arnaldo Carvalho de Melo <acme@...nel.org>,
        Jiri Olsa <jolsa@...hat.com>, zsun@...hat.com,
        Vitaly Chikunov <vt@...linux.org>,
        Tzvetomir Stoyanov <tstoyanov@...are.com>,
        Yordan Karadzhov <ykaradzhov@...are.com>,
        Ben Hutchings <ben@...adent.org.uk>,
        Sudip Mukherjee <sudipm.mukherjee@...il.com>,
        Tony Jones <tonyj@...e.de>, John Kacur <jkacur@...hat.com>,
        Clark Williams <williams@...hat.com>, powertop@...ts.01.org,
        Al Stone <ahs3@...ian.org>,
        Mauro Carvalho Chehab <mchehab+huawei@...nel.org>,
        Jes Sorensen <jes.sorensen@...il.com>
Subject: [ANNOUNCE] libtracefs.git

I split out the libtracefs code from trace-cmd.git using "git subtree",
which recreates all the commits of a directory and makes that directory
a stand alone. I then updated the Makefiles, and copied over some of
the header files used to build the library. I pushed this up to:

  https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/

What libtracefs.so will be use for, is to allow programs to have an API
to access the tracefs directory. Right now, it has a very limited set
of functions that do the bare minimum, for example, to print all sched
events:

	const char *tracefs_dir;
	char **sched_events;
	char *event;
	int i;

	tracefs_dir = tracefs_get_tracing_dir();

	sched_events = tracefs_system_events(tracefs_dir, "sched");
	if (!sched_events)
		return -1;
	for (i = 0; sched_events[i]; i++)
		printf("sched event: %s\n", sched_events[i]);

	tracefs_list_free(sched_events);

We plan on adding man pages for all the functions, as well as expand
the functionality. For example (TBD):

	char **funcs;

	funcs = tracefs_available_filter_functions(tracefs_dir, ".*lock.*");

Which would return a list of all functions that have "lock" in its name
that can be traced by the function tracer.

Same for setting and getting the ftrace filter, enabling disable
events, and even setting filters and histograms. The version of this
library is at 0.1.0 as we are working on it. It is currently at the
stage that kernelshark can use it. Once libtracecmd is ready, then
kernelshark will become its own repo as well.

The repo is still a little rough around the edges, and needs some
loving for making sure the library is installed properly, but it is now
out there for people to have a look, and better yet, send patches! :-)

Note: From now on, updates to libtraceevent and libtracefs will now be
made in their corresponding git repos on kernel.org, and no longer
fixed in trace-cmd or the kernel proper (with some exceptions). After a
couple of years, when these are packaged in all major repos, I tend to
remove the code from these other locations.

-- Steve

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ