libosmocore.git branch sysmocom/shared/log-speed created. 0.9.0-46-g95d0465

gitosis at gitosis at
Mon Dec 21 14:28:57 UTC 2015

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "An utility library for Open Source Mobile Communications".

The branch, sysmocom/shared/log-speed has been created
        at  95d04650ab785a8ffc1b6b75ec32125d1139861d (commit)

- Log -----------------------------------------------------------------

commit 95d04650ab785a8ffc1b6b75ec32125d1139861d
Author: Holger Hans Peter Freyther <holger at>
Date:   Mon Dec 21 14:45:33 2015 +0100

    logging: Remember the target we found
    log_check_level and osmo_vlogp share the responsibility for the
    output of a log message. Once check_level has identified the first
    target that might have an output osmo_vlogp will continue from this
    In practice we have one (stderr/syslog) or two (stderr+VTY) log
    outputs so avoiding to re-iterate is not that important but as
    we have found the right place we can just use it.

commit 87215d5bd97b0ba9249825dcbfb4d449f42b5a15
Author: Holger Hans Peter Freyther <holger at>
Date:   Mon Dec 21 14:45:16 2015 +0100

    logging: Remove some code duplication
    Extract the mapping of the subsystem number and the checking for
    the loglevel to a inline method that is shared between the new
    and old.

commit f96826f2039a4a794f86ea3d81d3a728a6450847
Author: Jacob Erlbeck <jerlbeck at>
Date:   Tue Nov 17 11:52:26 2015 +0100

    log/test: Extend test case for log_check_level
    This commit adds OSMO_ASSERTs for mandatory conditions related to
    log_check_level, and fprintfs for optional conditions, since it is
    always safe for log_check_level to return != 0.
    Sponsored-by: On-Waves ehf

commit 67c96eb2babc9eed8a4a6d3c98ad52eb9ad63877
Author: Jacob Erlbeck <jerlbeck at>
Date:   Tue Nov 17 11:52:25 2015 +0100

    log: Add conditional logging based on log_check_level
    Currently the LOGP/DEBUGP arguments are always evaluated even if
    no logging will happen at all. This can be expensive, for instance
    if hexdumps or pretty printed object names are generated. This causes
    high base load especially on embedded devices and is a major part of
    CPU usage e.g. of the osmo-pcu.
    This commit uses the log_check_level function to avoid the evaluation
    of the parameters if it is known in advance, that no logging entry
    will be generated.
    Sponsored-by: On-Waves ehf

commit 5fcc4f6ff75a3b3e2027ceceb6bcdaac6c9c0ba2
Author: Jacob Erlbeck <jerlbeck at>
Date:   Tue Nov 17 11:52:24 2015 +0100

    log: Add log_check_level function
    This commit adds this predicate function which can be used to
    avoid the execution of code if a certain log level is not enabled.
    The function will only return 0 (false), if it is sure that a logging
    call for the same facility and level will not produce any output.
    This safety criterion shall ensure, that no logging output is lost
    due to the use of this predicate as a guard. On the other hand, even
    if the predicate returns != 0 (true), no logging output might get
    generated by a similar logging command.
    Note that the current implementation is not focussed on performance,
    which could be improved by using a lookup table instead of iterating
    through every target.
    Sponsored-by: On-Waves ehf


An utility library for Open Source Mobile Communications

More information about the osmocom-commitlog mailing list