URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=2e6135cb7f12fc0aafe2777bf12fad71c2627af9
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 18 12:38:42 2014 +0200

    doc: prebuild

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=8a9b74d53da92b9a1fc0c78ae7bc3f61008b3182
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 18 12:35:25 2014 +0200

    config: bump core version

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b76363a9d13a9eeffdfb5a6d41c3a738ab6efa3e
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 18 11:04:29 2014 +0200

    copperplate/version: emit build setup information
    
    To make sure we can get this information from different sources
    easily, sbin/version will dump the build setup flags when -a or --all
    is given, in addition to the version stamp.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=f848180705633e260df84f601979d500a541bb0d
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 17 11:55:31 2014 +0200

    cobalt, mercury: enable uClibc, NPTL/linuxthreads builds
    
    We allow building the Xenomai libraries and programs against uClibc
    and glibc-based toolchains for both Cobalt and Mercury
    configurations. We cope with NPTL and legacy linuxthreads for both as
    well.
    
    To this end, this patch moves all libc quirks to a separate header.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=47bae8faa5c270d61cce8f36ef757fb5add0ab77
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 17 17:57:28 2014 +0200

    copperplate, trank: omit clock spec for condvar when useless

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=e760c1926a7191b8a68f491d9207c84a4c24125a
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 17 11:13:41 2014 +0200

    lib/cobalt/blackfin: provide cobalt_read_tsc()

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=0d73a73c35a5d2fab3cc1ab6e65813e1cdc2fdde
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sat Aug 16 10:41:21 2014 +0200

    cobalt/rtdm: fix leakage on error in rtdm_irq_request()

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=215179174149de882295d4e2ed628eaa9e6b6169
Author: Jorge Ramirez-Ortiz <j...@xenomai.org>
Date:   Fri Aug 15 09:48:43 2014 -0400

    cobalt/rtdm: check xnintr_init error

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=456883d1ce5eb8f5ff9c458f7e0231801a4d6d78
Author: Jorge Ramirez-Ortiz <j...@xenomai.org>
Date:   Fri Aug 15 16:23:08 2014 -0400

    drivers/analogy: fix detach logic

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=c3fe4b40ff36c4426e1aea7dcea915abfa11ec9e
Author: Jorge Ramirez-Ortiz <j...@xenomai.org>
Date:   Thu Aug 14 09:37:27 2014 -0400

    drivers/analogy: separate strings for boards and drivers

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=320bcddbea827a970998bbaee4977c0660ed7594
Author: Jorge Ramirez-Ortiz <j...@xenomai.org>
Date:   Mon Aug 11 12:18:25 2014 -0400

    drivers/analogy: report error when releasing an irq handler

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=560327f8a0bc4d30ae6b89dedfd92f93f9adc111
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 15 19:13:17 2014 +0200

    utils/autotune: allow for changing the sampling period

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=228ed8c1879d722c942d9475012a8e7e2e80b8f9
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 15 18:49:31 2014 +0200

    cobalt/heap: do not hold hard lock over unsafe area
    
    We might fault due to TLB misses on some platforms copying data over a
    shared heap, so do not hold any hard lock when doing so.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b9e8979379e40aaaae9790007cdfdd157d34632f
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 15 18:23:56 2014 +0200

    cobalt/rtdm, lib/cobalt: do not dereference path from open() wrapper
    
    In the event of receiving an invalid path pointer in open(), we don't
    want to dereference it from userland, but rather let the kernel handle
    the access trap gracefully, and send back -EFAULT to the library.
    
    For this reason, move the "/dev/" stripping to kernel space.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=6d8886c30d4b981d9a84380e289daa6325865516
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 15 13:07:18 2014 +0200

    drivers/udd: expose file descriptor to ancillary I/O handlers
    
    The file descriptor may be needed for accessing context data, such as
    the device minor information.
    
    At this chance, the UDD core is also documented.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=051c36b72164192dce38c63d475b6e6c217e38aa
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 15 12:49:51 2014 +0200

    drivers/udd: allow for disabling notification

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=a2032a011a3ba76838925bef0fafd061b9e41452
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 15 12:08:23 2014 +0200

    cobalt/rtdm: separate calls for logical vs purely virtual mappings
    
    For the sake of clarity, introduce rtdm_mmap_vmem() for handling
    purely virtual memory with no direct physical mapping.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b9d4d620356b7ee74140e7a29abfe57536dbffe2
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 17:38:00 2014 +0200

    doc: prebuild

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=64ea946c78b684e2f5a4feb68e95918ef3cc215a
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 17:29:41 2014 +0200

    cobalt/rtdm: rename .select_bind handler to .select in fd_ops
    
    For consistency, the related ancillary services from the RTDM layer
    have been renamed accordingly.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=485f607f487ba0834f6523107530c4386df0802b
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 17:20:21 2014 +0200

    cobalt/rtdm: fixup documentation

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=5f9c0861d744f59755be34ae8c7eab2cbca0bb48
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 15:55:02 2014 +0200

    include/trank: interpose on rtdm/rtdm.h

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=bc9926854a07b7d94911da5552aac465fe020bff
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 15:35:58 2014 +0200

    cobalt/rtdm: fix status returned by default I/O handlers
    
    This patch affects the way RTDM reacts to requests to unimplemented
    rtdm_fd operations handlers:
    
    - an I/O handler will return ENODEV if none of the dual handlers are
    implemented for a given function (e.g. .read_rt and .read_nrt both
    NULL),
    
    - otherwise, if only one of the dual handlers is unimplemented by the
    driver, then calling such handler will return ENOSYS, triggering the
    adaptive switch automatically (e.g. .read_rt == NULL and .read_nrt =
    valid_handler).

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=82845c6426c37711013fe1d3c7e14d14e22351cd
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 15:02:22 2014 +0200

    drivers/udd: drop useless context data

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=c26c79a6b6cf688ec197d77e01a2c6c358e0fec4
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 12:40:44 2014 +0200

    cobalt/arch: unify namespace for core parameters
    
    As we never had more than a couple of arch-specific parameters, there
    is no point in dissociating "xenomai." vs "xeno_machine." namespaces,
    which only ends up confusing the end-user.
    
    This patch moves the former "xeno_machine." parameters to the
    "xenomai."  namespace (x86-specific basically).

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=df86dbbb802ce49daa1235bf1549836f0d34dd66
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 11:56:58 2014 +0200

    drivers/autotune: fix EFAULT on reset operation

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=683151f683507a9e282e6f5223c1ad1b4b9ce3a0
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 11:30:23 2014 +0200

    cobalt/rtdm: leave setting of default handlers to the fd layer

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b1a2217bdf7047d0a8e982f74aa9bc8bc21bac28
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 14 10:34:52 2014 +0200

    cobalt/rtdm, drivers: move .open, .socket handlers to fd_ops
    
    With the recent introduction of a generic file operation descriptor
    which drops the legacy rt/nrt forms of these handlers, there is no
    reason to keep them floating alone in the rtdm_device definition.
    
    This patch moves the .open and .socket handlers into the rtdm_fd_ops
    descriptor with other I/O handlers, fixing up the in-tree drivers
    accordingly.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=72721b61613978a25274773f2a000910171b3ef3
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 10 14:43:12 2014 +0200

    drivers/udd: user-space device driver framework

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b44494f44c3efe0740f89b99df039d27569e3fde
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 13 21:19:57 2014 +0200

    utils/slackspot: superseded by better documentation

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=89b1ec6f33db8a0916fc8732bdd1608085f898c3
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 13 21:09:32 2014 +0200

    doc: prebuild

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=3b401fde258498f431341c1dcd2b2c4e8d904d15
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 13 20:59:26 2014 +0200

    cobalt/init: rename xenomai.xenomai_gid to xenomai.allowed_group

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=aebfe55e7e344168e1f3c193d2319737f5787f93
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 13 19:10:45 2014 +0200

    cobalt/rtdm: document device minor numbering scheme

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=12ad08f8c46113fb5cd011ffe38ac3947ff9a797
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 13 16:11:09 2014 +0200

    demo/posix: sanitize RTIPC examples

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=71d7db35adf406acf40f04618238ed1959612ada
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 13 10:58:05 2014 +0200

    testsuite/smokey: cover RTIPC protocols

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=8f879c17e2b8e34bcddc718c57c111829c4c7fd9
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 13 11:32:00 2014 +0200

    lib/smokey: introduce smokey_note() routine

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=9a17b17e1c94f9f16300e91ea16e4b7587c5a189
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 13 11:20:58 2014 +0200

    lib/smokey: introduce advisory --quiet switch

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=bfb12094e3d8b2647c97529c43128c80ebaf1c3c
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 13 10:57:21 2014 +0200

    drivers/ipc: fix error code for send through non-connected socket

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=39db28358f336d43d0ee8ff4adf7b35fe66ca726
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 12 21:47:17 2014 +0200

    drivers/ipc: fix address reset in connect()

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=7c32e355d80ec87a465ca57e0c346d6fbc93ef17
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 12 21:33:41 2014 +0200

    drivers/ipc: add support for select()

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=5f56ac198a142c0cc64e7842873eab685c7838dc
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 12 21:28:08 2014 +0200

    cobalt/pipe: introduce poll state accessors

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=57976d6d0718f646920b559da4c2108babf0e489
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 12 15:52:24 2014 +0200

    cobalt/timer: fixup Kconfig help string

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=eac5435aefad177eb0ecd59cb9e749ff9c6cdac2
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 12 15:44:44 2014 +0200

    rtdm/device: use built-in check for availability of core services

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=25bff068a585ea322eae113cc40571e637d524d0
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 12 15:48:15 2014 +0200

    cobalt/init: turn off on-duty flag upon failed init

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=661a683acd7af9a1618f05e5ac63f732efcbea26
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 12 11:24:20 2014 +0200

    autotune: make completely silent in --quiet mode

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=e366d3cb7f6a9be29c20aa4c7defea640fa3db41
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 11 20:50:37 2014 +0200

    rtdm/device: enable minor numbers with named devices
    
    As RTDM named device drivers have no actual entry in any file system,
    we lack the device minor information normally available from i-nodes.
    
    Therefore a rtdm_device struct currently represents a device unit in
    practice, although it should represent a device type, within a larger
    class. This model does not allow for straightforward management of
    multiple units of the same device type dynamically in a driver, with a
    single rtdm_device description matching all the units available
    onboard.
    
    This patch introduces a simple fully dynamic naming convention by
    which an application can request to open() a particular device unit,
    using the form:
    
    open("device-name@<minor>", ...);
    
    The open() call first attempts to match the full name verbatim, then
    checks for any minor specification, only looking for the device name
    in a second attempt to retrieve the rtdm_device descriptor.
    
    Upon success, the minor is stored into the rtdm_fd descriptor
    representing the new connection, and made available to the driver code
    by the rtdm_fd_minor() accessor. When specified, a valid minor value
    shall be positive or zero, otherwise the match fails. The default
    minor value is -1, which the driver may safely ignore, or choose to
    interpret as a special device master/control channel.
    
    e.g.:
    
    open("/dev/foo@0", ..) => connect to unit #0 of device type "foo"
    open("/dev/foo@7", ..) => connect to unit #7 of device type "foo"
    open("/dev/foo", ..) => connect to control channel of device "foo"

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b6c88a9fe1c2f2bedc06bfc44ac8a2fbe1875e82
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 11 20:23:45 2014 +0200

    cobalt/rtdm: drop spurious validation check in rtdm_dev_unregister()
    
    Performing a validation lookup for the device to remove only covers
    the case when a driver calls rtdm_dev_unregister() with an "almost
    valid", but still unregistered device structure. Any other case would
    cause the lookup to be started on a device name living on potentially
    stale, uninit or otherwise random memory, corresponding to an invalid
    device structure.
    
    However, passing a half-baked/forged rtdm_device structure only with
    correct name data and magic word would lead to the successful removal
    of a valid but distinct device structure registered earlier, which
    would definitely make no sense.
    
    Drop this check, and hold a reference directly on the device structure
    received. RTDM already (rightfully) assumes in all other services that
    object descriptors received as arguments shall be valid.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=aefaab5d0393c12453aed89f54b3293b1faa68c4
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 10 21:18:14 2014 +0200

    cobalt/intr: introduce IRQ disabled state
    
    With the IRQ line enable/disable operations restricted to the root
    domain, interrupt handlers may not invoke xnintr_disable() directly to
    shut down the interrupt line.
    
    To support this requirement, we add an explicit disabled state to the
    interrupt descriptor, which the handler may turn on by returning the
    new XN_IRQ_DISABLE operation status. In response, the core disables
    the descriptor, shutting down the interrupt line in the same move
    instead of unmasking it on return from the interrupt context.
    
    XN_IRQ_DISABLE is exposed by RTDM as RTDM_IRQ_DISABLE.
    
    As a consequence of this change, XN_ISR_NOENABLE was dropped as we
    have no in-tree client which need such semantics anymore.
    
    At this chance, various naming and documentation fixes have been
    applied.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=ea7147d0e16d5dd27cce559f55ac59190db0c423
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 11 17:59:46 2014 +0200

    utils/autotune: fix error output

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=f7d784a92c806e9c788a2366524a54b0dad6acec
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 10 14:36:24 2014 +0200

    drivers/autotune: fix device class

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=76a5e34f756e966de02fa473f5bd825ece8824d2
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sat Aug 9 17:53:53 2014 +0200

    include/rtdm: introduce MISC device class

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=2bd9d62cf7acfb298c95f468654960124559b7dc
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 18:43:43 2014 +0200

    doc: prebuild

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=f08ad773edcf1ed9b444326fa3494ad595837341
Author: Jorge Ramirez-Ortiz <j...@xenomai.org>
Date:   Tue Jul 15 14:26:58 2014 -0400

    utils/analogy: make cmd_read single threaded

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=2f85a852aec47f91646b9bbeb4b5a35ef0bcf3e6
Author: Jorge Ramirez-Ortiz <j...@xenomai.org>
Date:   Tue Jul 15 14:18:26 2014 -0400

    cobalt/rtdm: introduce rtdm_task_busy_wait()

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=0534985f9cc57f57ba3bc9c4b8d996b67eea0810
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 17:32:44 2014 +0200

    cobalt/kernel: sanitize help strings in Kconfig

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=882d09d85bc1c9ce41f7077878356fcd933ee36b
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 14:42:01 2014 +0200

    doc/autotune: mention the potentially long auto-tuning delay

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=593ae92bd2291dbb1586e26d9ffb308bc17d03fb
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 14:41:35 2014 +0200

    utils/autotune: give visual feedback while auto-tuning

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=a198a006249a007053fd6be7f211ce7c3ffbe849
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 14:20:20 2014 +0200

    trank: use non-ambiguous naming for overriden symbols

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=2c8ffbf300ba3291165ad4fffc1ec71332539c8b
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 14:11:45 2014 +0200

    scripts/xeno-config: accept all legacy forms of --native

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=49ba131477784ed8d99eca50bab5de2d851b3b76
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 11:40:45 2014 +0200

    doc: prebuild

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=cf76d4525f92edd70ccf60372070f680f9158e71
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 11:34:15 2014 +0200

    trank: work around doxygen confusion

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=80857d1e8f0c2512afcdc8b819f79f00ba144fb5
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 11:33:56 2014 +0200

    alchemy: exclude compat definitions from doxygen pass

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=1b58362c5d14ab1bf5f140e09348dc5df896c007
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 10:22:18 2014 +0200

    alchemy/alarm: annotate compatibility services

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=3a17f82c9f422cebd758e08c9e79f96d58b0b8dd
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 09:40:42 2014 +0200

    alchemy: fix documentation of rt_alarm_start()

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=7f66f9a441a7a88b3f79b46e65c048e63bd4a40a
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 8 09:40:07 2014 +0200

    trank: document compatibility wrappers

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=dcd92e33407b8b6bf491b7d77830f04ea7cd64b5
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 7 16:42:46 2014 +0200

    doc: prebuild

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b73735645914ad6a8e657d3945d9eae4749050ef
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 7 16:33:26 2014 +0200

    config: bump API and core version stamps

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=fe5c54723d1a2e4838239f4524c2bed81f1e641b
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 7 16:32:52 2014 +0200

    cobalt/kernel: bump all ABI revision levels

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=0c9e1d1b68cd3339790fb47f9565401c7df80ee2
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 7 16:38:08 2014 +0200

    build: exit on invalid documentation repository

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=0f19393b3702705c8470147b6a3fd03a08b42642
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 7 16:28:14 2014 +0200

    boilerplate/hash: drop preposterous PI for locking

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=4f0a93756e14df890f199500bbebf11533aa460a
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 7 14:55:27 2014 +0200

    boilerplate/tlsf: call glibc's mmap() directly

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=927778a3ea60e6f54f0e93117c562f18f11b966a
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 7 14:45:51 2014 +0200

    lib/cobalt: export mmap() interface

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=c8e9e166bce43b4f93d0cf1fd8cecf60f586c654
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 6 09:11:32 2014 +0200

    cobalt/rtdm: introduce mmap() support
    
    The new ->mmap() handler is introduced in the device operation
    descriptor. This service is restricted to secondary mode, switching a
    primary mode caller accordingly when invoked from an application.
    
    The prototype is:
    
    int mmap_handler(struct rtdm_fd *fd, struct vm_area_struct *vma);
    
    The semantics are identical to the corresponding handler from the
    regular linux file operations. The only difference is about receiving
    a RTDM file descriptor (struct rtdm_fd) instead of a regular struct
    file pointer. As such, a valid vma descriptor covering the target user
    address space is passed to the handler, therefore common mapping
    operations may be performed on it.
    
    Two new convenience routines for mapping a chunk of kernel memory and
    a physical I/O address range are provided, i.e. rtdm_mmap_kmem() and
    rtdm_mmap_iomem() respectively. Both take a vma descriptor as received
    by the ->mmap() handler, and the appropriate virtual/physical start
    address of the memory range to map to the target address range in
    user-space.
    
    The existing rtdm_mmap_to_user() and rtdm_iomap_to_user() calls are
    kept unmodified. The ->mmap() introduction has no impact on existing
    drivers currently relying on these calls.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=225f242a81d811398dad83b79ecb4c3193335e44
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Aug 7 14:50:48 2014 +0200

    cobalt/kernel/heap: drop superfluous argument from 
xnheap_remap_io_page_range()

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=a4a0166ef3caaa4f6db1c4591658d77f43114ee3
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 6 17:46:17 2014 +0200

    cobalt/shadow: fix locking when accessing the ppd table

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=8c2bd7a7c27cade7bb13859cba28ff4b84c5f9ae
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Aug 6 07:43:45 2014 +0200

    copperplate/threadobj: factor out magic word invalidation

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=1f146d900d6dad9e5cdb49b333f00e410032809b
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 5 21:17:01 2014 +0200

    alchemy: do not publish objects to clusters until they are fully built
    
    We must NOT push Alchemy objects to clusters before they have been
    fully built, including the registration phase.
    
    Otherwise, a high priority task waiting on the binding service for the
    object to appear in a cluster might preempt the creation call
    immediately when the latter is updated, then destroy the half-baked
    resource being pushed, leading to invalid memory references and all
    sorts of unpleasant outcomes.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=491864a0d16d84817caaa4a1a66eb4cfbe5d6293
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 5 21:16:50 2014 +0200

    copperplate/registry: fix error propagation

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b075e5b7b0c4d88c6b95cd5b34d4f283add93fdb
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Aug 5 17:16:01 2014 +0200

    copperplate/init: introduce switches to control sanity checks
    
    Copperplate performs sanity checks at application startup
    (e.g. detection of single-processor code over SMP kernel).
    
    --[no-]sanity can be used to control their execution at runtime.
    
    Passing the --enable/disable-sanity switch when building can be used
    to set the default mode when unspecified on the command line.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=75cc5dac959c06bac3a5730ae279ae7a0a4ad271
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 4 21:38:33 2014 +0200

    copperplate: work-around glibc race in cancel state handling
    
    This is a SMP race which seems to affect NPTL-based glibc releases
    (2.9 and 2.18 checked, other releases are likely concerned as
    well). The issue requires SMP setups to pop up, when
    --enable-async-cancel is mentioned on the Xenomai build configuration
    line. It was detected over the Mercury core, not checked on the Cobalt
    core. The work-around will fit both.
    
    The bug creates a situation where
    pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, ...) does not actually
    prevent subsequent asynchronous cancellation of the caller, in the
    following scenario:
    
    threadB has its cancellability set to PTHREAD_CANCEL_ENABLE,
    PTHREAD_CANCEL_ASYNCHRONOUS on entry:
    
    threadA[CPU0]: pthread_cancel(threadB)
                (SIGCANCEL queued to threadB[CPU1])
    threadB[CPU1]: pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, NULL)
                (SIGCANCEL delivered to threadB[CPU1])
                <sigcancel_handler>
                        if (cancel_type(threadB) == PTHREAD_CANCEL_ASYNCHRONOUS)
                                __do_cancel();
                        ...
    
    As illustrated, the source of this issue is in glibc's SIGCANCEL
    handler, which only (re-)checks the cancellability TYPE prior to
    entering the thread deletion process on the target CPU, omitting the
    cancellability STATE from this check. High concurrency may therefore
    cause the target CPU to receive an asynchronous cancellation signal
    out of sync, which contradicts the current cancellability state of the
    recipient thread, due to the delayed signal propagation induced by SMP
    activities.
    
    Considering this, the cancellability state seems only safe for
    disabling the internal cancellation points, but can't be relied on for
    blocking asynchronous requests in SMP configurations.
    
    The work-around is to make sure to turn the cancellability type to
    PTHREAD_CANCEL_DEFERRED in addition to disabling cancellation with
    PTHREAD_CANCEL_DISABLE.
    
    Copperplate, and all Copperplate-based APIs are affected by the
    change.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=02eb7cd2783c7bdf929c84a67b13540fac39e134
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 4 16:19:48 2014 +0200

    copperplate: default to asynchronous cancellation disabled
    
    Relying on asynchronous cancellation is rarely a good idea with
    respect to program resource management. Since it's useful only to a
    small and likely hopeless subset of the legacy RTOS code base, we
    invert the default, picking the safer deferred cancellability option.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=e6a0e3678ec46266ba3028210c5f7222db42d577
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 4 21:46:33 2014 +0200

    include/trank: install for mercury

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=82ca87b44faddce807b4d71b0a3e19c6209bc379
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 4 11:09:30 2014 +0200

    copperplate/internal: fix backtracing annotation

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=4cbe5990510d7649a0411e2d7618ca9553182148
Author: Philippe Gerum <r...@xenomai.org>
Date:   Mon Aug 4 10:04:54 2014 +0200

    doc/xeno-config: rework and update

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=7cbcb40efe80018332b78df382481e7f1b60f4fb
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 3 16:36:57 2014 +0200

    doc/autotune: add manpage for the auto-tuner

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=232438c72b1aa3a2f853e963775992b177ebff5b
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 3 16:14:36 2014 +0200

    doc/slackspot: cosmetic fixes (use boldface consistently)

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=67c9b31d8cea51969632d58714730c04bd956bdc
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 3 11:52:30 2014 +0200

    copperplate/threadobj: factor out SET_NAME operation for threads

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=c29cf77d9a1c94d26ea145346a8cd58d5e2a2186
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 3 11:30:59 2014 +0200

    cobalt/timer: make timers affine to scheduler slots
    
    Change the affinity target from a thread to a scheduler slot for
    initializing timers, since this is the information we need in the
    end.
    
    In addition, we might race with a target thread vanishing on a remote
    CPU in some cases, which can't happen with scheduler slots.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=ca027ad7b1e1cc0e069f693783aa670b8b79cd35
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Aug 3 11:00:59 2014 +0200

    doc: prebuild

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=74a4785d5d46d66ff2b7636953202a4c10a114e7
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sat Aug 2 20:06:47 2014 +0200

    copperplate/threadobj: fix priority inversion when updating schedparams

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=86f3a8ac2a766a477231a757547b33ec0ed134c2
Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Aug 1 12:33:27 2014 +0200

    trank: more compatibility calls

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=d3f62f07e6e8582f6367932fe12ad62fee16dc9b
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sat Aug 2 19:33:10 2014 +0200

    copperplate: handle EINTR in interruptible waits

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=0962501034f3f89f3a144470aa3d6585eff9b349
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Jul 31 16:40:04 2014 +0200

    doc/asciidoc: move/build/install manpages from/to their respective section

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=6a63db7292b4c9e2b246b1240f47c367972775e3
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Jul 31 09:37:16 2014 +0200

    doc/asciidoc: enable pulling short guides from a maintenance repository
    
    The 'resync' top-level rule now attempts to pull a set of READMEs and
    guides from a maintainer's GIT repository which path has been passed
    along with the --enable-doc-build[=<git-URL>] configuration switch.
    
    Those files replace their counterpart in doc/asciidoc, before the
    documentation is built then copied to doc/prebuilt.
    
    NOTE: the original links are not preserved yet in the resulting
    documentation.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=1195ce379963b045c933b499c21789db75c443a5
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Jul 30 18:37:20 2014 +0200

    doc: consider pdfdir, htmldir, mandir when installing

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=ace80225b4933cb25874bccf18a97380f8735ed9
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Jul 30 09:28:36 2014 +0200

    lib/cobalt: clarify error message

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=1a8839289719119ad0d1b5026504e3eed5c46a63
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sun Jul 6 15:25:22 2014 +0200

    lib/copperplate, lib/alchemy: introduce API tags

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=ecc05c4aa9d7da2e124f19f5a08bf112927d459c
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Jul 29 09:18:20 2014 +0200

    copperplate/threadobj: protect lock in barrier wait

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=090532ab2b272aa575895107117cb6836ccbeb30
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Jul 24 10:46:14 2014 +0200

    copperplate/debug: prevent ref to invalid TCB

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=bfb35c3c618d4afabf0baf7d398f793629dd8e84
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Jul 24 10:45:08 2014 +0200

    utils/autotune: silence warning

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=5be3e8439fe7ecbe0035d8caed4c3828d89d2bdd
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sat Jul 19 09:51:13 2014 +0200

    drivers/autotune: fix wedge detection

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b5f79b1e723ea72d5f6cc2cc4fbdd38479cf7c9c
Author: Philippe Gerum <r...@xenomai.org>
Date:   Sat Jul 19 08:55:37 2014 +0200

    cobalt/clock: prevent early timer shots
    
    Hardware-induced latency such as cache activity may fluctuate a lot
    especially on low end SoCs. For this reason we cannot assume that
    resuming the target context of a timer would always take longer than
    the delay represented by its gravity value.
    
    Practically, this translates to:
    
    - applying a gravity value when arming the clock chip hardware is
      fine, and can be considered as a valuable optimization, with up to
      100% success rate in reducing the latency if such value has been
      properly calibrated.
    
    - adjusting a timer expiration date by the gravity delay in the clock
      handler is wrong, since the target context might resume in less time
      than such delay expresses, leading to ugly negative latencies.
    
    If a mis-calibrated gravity value causes early shots from the clock
    chip, the effect shall be compensated by the clock handler, by
    postponing activation of early timers until due date, even at the
    expense of additional overhead: that would call for better latency
    tuning.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=58d8e3e1bc380062d701e2ef0a464e290a4f572b
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Jul 17 18:08:03 2014 +0200

    cobalt/kernel: fix build with CONFIG_XENO_OPT_STATS disabled

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=40938c0d3e99a8027d080ef3ea7110f75f363f63
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Jul 17 17:40:15 2014 +0200

    cobalt/kernel: fix build with CONFIG_PROC_FS disabled

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=921b81141606d354588e7e1a8a0b4abba4a6ed65
Author: Jan Kiszka <jan.kis...@siemens.com>
Date:   Thu Jul 10 16:20:57 2014 +0200

    testsuite/latency: Move timerfd init before WARNSW enabling
    
    Creating a timerfd involves Linux syscall. Avoid recording this setup
    related mode switch which is just a false positive.
    
    Signed-off-by: Jan Kiszka <jan.kis...@siemens.com>

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=37790ea1d4a206209120811e8a6d4ff2050f59a4
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Jul 17 16:32:05 2014 +0200

    cobalt/posix/sched-quota: allow force removal of quota group
    
    Sending a sched_quota_force_remove request to the group deletion
    service would move all threads still part of the deleted group to the
    RT class, then proceed normally.
    
    sched_quota_remove would still return -EBUSY instead.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=56adb714d4d8ca39338c28c382f78e096912ddd3
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Jul 15 16:14:01 2014 +0200

    drivers/autotune: add RTDM device for auto-tuning

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=17fd39d13af68a07133faba38921c14f7f758b8f
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Jul 17 15:54:43 2014 +0200

    cobalt/timer: allow periodic timers to be stopped from a handler
    
    This fixes a nasty, ancient bug causing xntimer_stop() to lead to a
    nop when called from a timer handler, for a periodic timer. The timer
    would keep ticking unexpectedly.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=05ea3c68671c86402ff6d870b63e13282485d741
Author: Philippe Gerum <r...@xenomai.org>
Date:   Thu Jul 17 10:27:47 2014 +0200

    cobalt/timer: assign handler identifier as default timer name
    
    Timer name and handler name are redundant. Drop the latter, but assign
    it as the timer's default name until xntimer_set_name() is called.

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=a7147eb6f61a84c744093d3582987a10b73e4d5c
Author: Philippe Gerum <r...@xenomai.org>
Date:   Tue Jul 15 19:01:15 2014 +0200

    cobalt/timer: introduce context-sensitive timer gravity
    
    Applying a single gravity value for anticipating on all timer shots -
    regardless of what the issuing timer is being used for - falls short
    of considering the proper latency attached to the context. This leads
    to poor tuning, with either negative latencies (i.e. early shots)
    observed on measuring the jitter for irq handlers, or higher latencies
    than expected for user-space threads when using too optimistic
    (i.e. small) clock gravities.
    
    Typically, the distance between the core clock handler and the
    associated kernel-based handler the former calls, is much shorter than
    what has to be traversed for switching in a kernel thread. It is even
    shorter than the latency incurred for switching a user-space thread
    from the core clock handler.
    
    To solve this, we differentiate timers on the final context they
    activate, between irq(handler), kernel and user threads, using the
    appropriate gravity value when planning for the next shot, on a
    per-timer basis, instead of using a single per-clock gravity as
    previously.
    
    Two additional contexts (irq and kernel) are added to the clock
    gravity settings. The user can pass a hint to xntimer_init() for
    indicating which kind of context will be activated by this timer (see
    XNTIMER_[IKU]GRAVITY).
    
    There are side-effects for this change on the procfs support:
    
    - the information previously available from the xenomai/timer entry is
      now obtained by reading xenomai/clock/coreclk. In addition, the
      clock gravity values are reported.
    
    - the former contents of xenomai/clock/* entries (i.e. the list of
      active timers running on the associated clock) is now available from
      the new xenomai/timer/* entries, also indexed on the clock name.
    
    Writing to an entry under xenomai/clock/* can be used to change the
    gravity values of the associated clock.
    
    /* change the user gravity (default) */
    echo 3000 > /proc/xenomai/clock/coreclck
    /* change the IRQ gravity */
    echo 1000i > /proc/xenomai/clock/coreclck
    /* change the user and kernel gravities */
    echo "2000u 1000k" > /proc/xenomai/clock/coreclck

URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=8c2a805a2178988b3bddef2210c26be406de152f
Author: Philippe Gerum <r...@xenomai.org>
Date:   Wed Jul 16 10:20:15 2014 +0200

    cobalt/thread: fix start date of periodic timeline


_______________________________________________
Xenomai-git mailing list
Xenomai-git@xenomai.org
http://www.xenomai.org/mailman/listinfo/xenomai-git

Reply via email to