Michael Jeanson [Tue, 17 Oct 2017 18:50:48 +0000 (14:50 -0400)]
Fix: return proper exit code on test failure
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Philippe Proulx [Sat, 19 Nov 2016 19:23:18 +0000 (14:23 -0500)]
linux-fs-simple example Makefile: make platform depend on barectf.h
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Nov 2016 19:00:14 +0000 (14:00 -0500)]
Add tracing activity and tracing section API
The new barectf_is_tracing_enabled() function allows the instrumented
program to enable or disable tracing for a specific barectf context.
This is a thread-safe API, in that it only sets a member of the context
to 0 or 1. Disabling the tracing activity does not guarantee, however,
that the current packet or back-end is not currently being altered. See
the next paragraph about this.
The new barectf_is_in_tracing_section() function allows the instrumented
program to know if its tracing thread is currently in a barectf section
or not. barectf_is_in_tracing_section_ptr() returns a volatile pointer
to this same information.
Both functions can be used together to implement a snapshot action for a
given platform, something like:
1. The instrumented thread calls the barectf tracing functions during
its execution. When a packet is closed, the platform appends it to a
ring buffer, overwriting the oldest recorded one if there's no space
left. This is called a flight recorder mode.
2. The controller (another thread of the instrumented program, or an
external host) recognizes a trigger where we would only need the
latest data to analyze the situation. Therefore tracing must be
stopped, because we don't want the current ring buffer packets to be
overwritten anymore.
3. The controller disables tracing. It is safe to call
barectf_is_tracing_enabled(ctx, 0) from another thread.
4. When barectf_is_tracing_enabled(ctx, 0) is called, the barectf
tracing function currently being executed still needs to finish. At
this point it could still alter the current packet. Therefore the
controller waits until barectf_is_in_tracing_section() is 0.
5. Once barectf_is_in_tracing_section() returns 0, it won't return 1
until barectf_is_tracing_enabled(ctx, 1) is called again, so it is
safe to read the ring buffer, and also to read the current packet.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Tue, 15 Nov 2016 18:08:59 +0000 (13:08 -0500)]
README.md: fix links
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Tue, 15 Nov 2016 18:00:46 +0000 (13:00 -0500)]
barectf v2.2.1
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Tue, 15 Nov 2016 17:55:48 +0000 (12:55 -0500)]
README.md: update content
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Tue, 15 Nov 2016 17:13:32 +0000 (12:13 -0500)]
doc/examples: use -ansi flag to ensure ANSI C compatibility
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 10 Nov 2016 22:33:19 +0000 (17:33 -0500)]
barectf(1): write short option's argument too
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 10 Nov 2016 22:19:43 +0000 (17:19 -0500)]
Claim to generate ANSI C code
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 10 Nov 2016 22:17:52 +0000 (17:17 -0500)]
Remove <stdint.h> include in generated bitfield.h
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 10 Nov 2016 21:44:36 +0000 (16:44 -0500)]
Remove unused macros from generated bitfield header
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 10 Nov 2016 21:43:39 +0000 (16:43 -0500)]
gen.py: put union variable at the top of a nested block
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 10 Nov 2016 18:16:59 +0000 (13:16 -0500)]
Remove dependency on GNU C extensions
__typeof__() dependency is removed by passing the type to the
macro explicitly.
Statement expression dependency is removed by using an in/out
macro parameter instead.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 9 Nov 2016 22:53:22 +0000 (17:53 -0500)]
Support C++ build of generated and linux-fs platform files
Mostly void * casting stuff.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 9 Nov 2016 17:36:56 +0000 (12:36 -0500)]
barectf-platform-linux-fs.h: add __cplusplus check
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 9 Nov 2016 17:32:12 +0000 (12:32 -0500)]
barectf.c: remove unused _packet_is_full()
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 9 Nov 2016 17:29:06 +0000 (12:29 -0500)]
barectf.h: add __cplusplus check
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Michael Jeanson [Thu, 8 Sep 2016 20:43:35 +0000 (16:43 -0400)]
Merge pull request #11 from mjeanson/master
Update CI link in README.md
Michael Jeanson [Mon, 29 Aug 2016 15:46:12 +0000 (11:46 -0400)]
Update CI link in README.md
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Philippe Proulx [Wed, 13 Jul 2016 15:41:38 +0000 (11:41 -0400)]
Refer to official website barectf.org
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 13 Jul 2016 15:35:03 +0000 (11:35 -0400)]
Add MIT license header to generated files
Fixes: #8
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philipp Wagner [Tue, 12 Jul 2016 15:47:44 +0000 (17:47 +0200)]
Fix package name in Ubuntu install instructions
Philippe Proulx [Thu, 14 Apr 2016 00:52:47 +0000 (20:52 -0400)]
Make sure all source files have a MIT license header
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 14 Apr 2016 00:18:09 +0000 (20:18 -0400)]
examples/barectf-tracepoint: fix comment
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 14 Apr 2016 00:12:08 +0000 (20:12 -0400)]
doc/man: update man page's date and version
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 13 Apr 2016 21:00:09 +0000 (17:00 -0400)]
barectf v2.2.0
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 13 Apr 2016 20:49:41 +0000 (16:49 -0400)]
docs/examples/.gitignore: ignore "metadata"
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 13 Apr 2016 19:52:48 +0000 (15:52 -0400)]
barectf-tracepoint: add QEMU ARM target example
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Tue, 12 Apr 2016 21:20:38 +0000 (17:20 -0400)]
barectf-tracepoint ex: rename "barectf" -> "barectf-linux-fs"
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Tue, 12 Apr 2016 21:02:19 +0000 (17:02 -0400)]
barectf-tracepoint ex: put platform-specific stuff in separate files
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 04:05:50 +0000 (00:05 -0400)]
doc/examples/linux-fs-simple: use $(BARECTF), no view target
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 03:46:45 +0000 (23:46 -0400)]
Add doc/examples/barectf-tracepoint
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 03:46:08 +0000 (23:46 -0400)]
Add extra/barectf-tracepoint.h (tracepoint() macro wrapper)
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 01:53:26 +0000 (21:53 -0400)]
tests/config/fail/stream: add tests for "$default" prop
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 01:50:15 +0000 (21:50 -0400)]
tests/config/fail/metadata: add tests for default stream name
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 01:49:32 +0000 (21:49 -0400)]
tests/config/fail: remove .c/.h files
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 01:41:54 +0000 (21:41 -0400)]
tests/config/pass/everything: fix gen-default-stream-def
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 01:40:52 +0000 (21:40 -0400)]
doc/examples/linux-fs-simple: generate prefix/def stream name defs
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 01:39:54 +0000 (21:39 -0400)]
tests/config/fail/config: remove options-gen-default-stream-def-unknown-stream-name
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 7 Apr 2016 01:37:10 +0000 (21:37 -0400)]
Make config option "gen-default-stream-def" a boolean
Now that there's a way to specify a default stream, we only
need to know if we want or not to generate this definition.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 6 Apr 2016 23:33:03 +0000 (19:33 -0400)]
doc/examples/linux-fs-simple: use 2.2 config with default stream
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 6 Apr 2016 23:32:43 +0000 (19:32 -0400)]
gen, templates: generate default stream trace definitions
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 6 Apr 2016 23:17:34 +0000 (19:17 -0400)]
config: specify default stream in metadata/stream objects
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 6 Apr 2016 16:50:50 +0000 (12:50 -0400)]
gen, templates: generate prefix/default stream definitions
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 6 Apr 2016 16:41:26 +0000 (12:41 -0400)]
tests/config/pass/everything: add config options to test
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 6 Apr 2016 16:39:55 +0000 (12:39 -0400)]
tests/config/fail/config: add config options tests
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 6 Apr 2016 16:30:02 +0000 (12:30 -0400)]
config: add configuration options
Current options:
* `gen-prefix-def`: generate a prefix definition in the
header file
* `gen-default-stream-def`: generate a default stream
name definition in the header file
Those are intended to facilitate the use of a barectf-LTTng-UST
adapter.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 6 Apr 2016 16:20:24 +0000 (12:20 -0400)]
barectf v2.2.0-dev
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 31 Mar 2016 19:43:33 +0000 (15:43 -0400)]
README.md: specify Ubuntu versions
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 31 Mar 2016 19:38:01 +0000 (15:38 -0400)]
README.md: add PPA instructions for Ubuntu
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 30 Mar 2016 22:25:30 +0000 (18:25 -0400)]
README.md: add AUR package instructions for Arch Linux
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 30 Mar 2016 21:50:16 +0000 (17:50 -0400)]
README.md: "philosphy" -> "philosophy"
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 30 Mar 2016 21:42:10 +0000 (17:42 -0400)]
barectf v2.1.4
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 30 Mar 2016 21:32:45 +0000 (17:32 -0400)]
templates: fix generated indentation
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 30 Mar 2016 21:32:07 +0000 (17:32 -0400)]
gen: statically compute event field sizes when possible
Closes #7
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 30 Mar 2016 21:30:39 +0000 (17:30 -0400)]
Add barectf(1) man page
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 26 Mar 2016 07:14:35 +0000 (03:14 -0400)]
config: is_valid_identifier() -> _is_valid_identifier()
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 26 Mar 2016 07:10:26 +0000 (03:10 -0400)]
config: override default env entries
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 26 Mar 2016 06:59:17 +0000 (02:59 -0400)]
tests/config/fail/metadata: add multiple streams, no stream_id
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 26 Mar 2016 06:57:04 +0000 (02:57 -0400)]
config: add "(more than one X)" in missing id/stream_id error msgs
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 26 Mar 2016 06:50:47 +0000 (02:50 -0400)]
Fix: tsdl182gen: do not write stream_id/id when PH's stream_id is missing
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 25 Mar 2016 21:44:10 +0000 (17:44 -0400)]
tests/config/pass/everything: add no payload type test
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 25 Mar 2016 18:03:59 +0000 (14:03 -0400)]
barectf v2.1.3
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 25 Mar 2016 17:59:12 +0000 (13:59 -0400)]
doc/example: add .gitignores
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 25 Mar 2016 17:57:17 +0000 (13:57 -0400)]
tests/config/fail/event: add empty event test
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 25 Mar 2016 17:54:13 +0000 (13:54 -0400)]
doc/examples/linux-fs-simple: add events with no payload type
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 25 Mar 2016 17:53:25 +0000 (13:53 -0400)]
Support empty payload type, as long as the event is not empty
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Wed, 23 Mar 2016 16:40:29 +0000 (12:40 -0400)]
README.md: add Community section
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Tue, 22 Mar 2016 23:03:19 +0000 (19:03 -0400)]
README.md: put image on top
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Mar 2016 03:10:57 +0000 (23:10 -0400)]
barectf v2.1.2
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Mar 2016 03:09:07 +0000 (23:09 -0400)]
Fix: stdint.yaml: fix self-aligned signed ints size
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Mar 2016 02:39:03 +0000 (22:39 -0400)]
CHANGELOG.md: update for v2.1.1
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Mar 2016 02:35:55 +0000 (22:35 -0400)]
barectf v2.1.1
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Mar 2016 02:32:24 +0000 (22:32 -0400)]
Fix: config: clock offset object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Mar 2016 00:31:49 +0000 (20:31 -0400)]
README.md: update Babeltrace's URL
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Mar 2016 00:30:26 +0000 (20:30 -0400)]
README.md: add --python=python3 to virtualenv line
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Mar 2016 00:15:43 +0000 (20:15 -0400)]
barectf v2.1.0
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Sat, 19 Mar 2016 00:09:40 +0000 (20:09 -0400)]
README.md: add CI badge
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 18 Mar 2016 22:40:58 +0000 (18:40 -0400)]
CHANGELOG.md: update for v2.1.0
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 18 Mar 2016 23:43:54 +0000 (19:43 -0400)]
tests: fix message in config/pass/everything
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 18 Mar 2016 23:42:51 +0000 (19:42 -0400)]
tests: add missing "config/fail/event/pt-empty.yaml"
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 18 Mar 2016 21:54:19 +0000 (17:54 -0400)]
doc/examples: use provided include files in configs
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 18 Mar 2016 21:51:54 +0000 (17:51 -0400)]
cli: error msg: specify "regular file"
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 18 Mar 2016 21:40:21 +0000 (17:40 -0400)]
Fix: gen: use appropriate prefix for event context type params
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 18 Mar 2016 20:47:25 +0000 (16:47 -0400)]
Fix: templates: use prefix in _write_cstring()
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Fri, 18 Mar 2016 20:13:13 +0000 (16:13 -0400)]
config: null $include means no inclusions
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 22:07:51 +0000 (18:07 -0400)]
config: config object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 22:06:49 +0000 (18:06 -0400)]
config: metadata object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 22:06:42 +0000 (18:06 -0400)]
config: trace object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 21:59:32 +0000 (17:59 -0400)]
config: stream object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 21:56:31 +0000 (17:56 -0400)]
config: event object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 21:30:47 +0000 (17:30 -0400)]
config: clock object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 21:20:05 +0000 (17:20 -0400)]
config: variant type object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 21:04:53 +0000 (17:04 -0400)]
config: struct type object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 21:02:20 +0000 (17:02 -0400)]
config: array type object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 21:00:00 +0000 (17:00 -0400)]
config: string type object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 20:58:44 +0000 (16:58 -0400)]
Fix: config: start from cur last value when updating enum type obj
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 20:47:57 +0000 (16:47 -0400)]
config: enum type object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 20:43:48 +0000 (16:43 -0400)]
config: float type object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Philippe Proulx [Thu, 17 Mar 2016 07:49:06 +0000 (03:49 -0400)]
config: int type object: null sets prop to default value
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
This page took 0.037997 seconds and 4 git commands to generate.