Permalink
Commits on Oct 17, 2017
  1. barectf v2.3.0

    eepp committed Oct 17, 2017
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  2. tox.ini: no `pep8` env by default, fix testenv:pep8 env

    eepp committed Oct 17, 2017
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  3. barectf/config.py: fix whitespaces (PEP 8)

    eepp committed Oct 17, 2017
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  4. tox: Add usedevelop

    mjeanson committed Oct 17, 2017
    Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
  5. Fix: fail tests succeed on env failure

    mjeanson committed Oct 17, 2017
    Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
  6. tests/common.bash: use $status, not $?, when using `run`

    eepp committed Oct 17, 2017
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  7. Add tox support

    mjeanson committed Oct 17, 2017
    Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
  8. Fix: templates.py: call bt_piecewise_rshift() with _vtype (BE)

    eepp committed Oct 17, 2017
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  9. Fix: return proper exit code on test failure

    mjeanson committed Oct 17, 2017
    Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Commits on Nov 19, 2016
  1. linux-fs-simple example Makefile: make platform depend on barectf.h

    eepp committed Nov 19, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  2. Add tracing activity and tracing section API

    eepp committed Nov 19, 2016
    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>
Commits on Nov 15, 2016
  1. README.md: fix links

    eepp committed Nov 15, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  2. barectf v2.2.1

    eepp committed Nov 15, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  3. README.md: update content

    eepp committed Nov 15, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  4. doc/examples: use -ansi flag to ensure ANSI C compatibility

    eepp committed Nov 15, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Commits on Nov 10, 2016
  1. barectf(1): write short option's argument too

    eepp committed Nov 10, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  2. Claim to generate ANSI C code

    eepp committed Nov 10, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  3. Remove <stdint.h> include in generated bitfield.h

    eepp committed Nov 10, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  4. Remove unused macros from generated bitfield header

    eepp committed Nov 10, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  5. gen.py: put union variable at the top of a nested block

    eepp committed Nov 10, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  6. Remove dependency on GNU C extensions

    eepp committed Nov 10, 2016
    __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>
Commits on Nov 9, 2016
  1. Support C++ build of generated and linux-fs platform files

    eepp committed Nov 9, 2016
    Mostly void * casting stuff.
    
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  2. barectf-platform-linux-fs.h: add __cplusplus check

    eepp committed Nov 9, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  3. barectf.c: remove unused _packet_is_full()

    eepp committed Nov 9, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  4. barectf.h: add __cplusplus check

    eepp committed Nov 9, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Commits on Sep 8, 2016
  1. Merge pull request #11 from mjeanson/master

    mjeanson committed Sep 8, 2016
    Update CI link in README.md
Commits on Aug 29, 2016
  1. Update CI link in README.md

    mjeanson committed Aug 29, 2016
    Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Commits on Jul 13, 2016
  1. Refer to official website barectf.org

    eepp committed Jul 13, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  2. Add MIT license header to generated files

    eepp committed Jul 13, 2016
    Fixes: #8
    
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Commits on Jul 12, 2016
Commits on Apr 14, 2016
  1. Make sure all source files have a MIT license header

    eepp committed Apr 14, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  2. examples/barectf-tracepoint: fix comment

    eepp committed Apr 14, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
  3. doc/man: update man page's date and version

    eepp committed Apr 14, 2016
    Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>