URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=c24673b1676086fad060c20839a93fc2e2e79341
Author: Philippe Gerum <[email protected]>
Date: Tue Oct 3 12:02:36 2017 +0200
demo/gpiopwn: include required header explicitly
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=5e5522f03e0f3c07af9ad8bf9f6e5ca39c6505f0
Author: Jan Kiszka <[email protected]>
Date: Fri Sep 29 12:21:21 2017 +0200
cobalt/tracing: Primarily identify threads via pid
Except for the short phase between thread_init and shadow_map, a thread
is always identifiable via the pid of its Linux mate. Use this shorter
value, which also correlates with what ftrace records anyway, instead of
the pointer or the name. Report the full thread name only in prominent
cases: init, resume and switch.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=c19a8fe2fd5a9f7a20a6849ebd0ff52336d99fba
Author: Jan Kiszka <[email protected]>
Date: Fri Sep 29 10:32:42 2017 +0200
cobalt/tracing: Don't report current thread in tracepoints
All these are synchronous, and the thread context is already recorded by
ftrace.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=8caa397355ea8ac2747e85760c554356c7a6d213
Author: Jan Kiszka <[email protected]>
Date: Fri Sep 29 07:36:27 2017 +0200
cobalt/tracing: Print syscalls by name
Matching numbers against syscall.h, specifically when the call is compat
or x32, is tedious work. Fortunately, ftrace allows up to automate this.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=ea35a15415712235512c21abc6b08c881a6ad454
Author: Jan Kiszka <[email protected]>
Date: Fri May 6 14:40:00 2016 +0200
cobalt/tracing: Trace changes of the current thread priority
Specifically useful to validate scheduling during PI or PP phases.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=3820a0e1c5bc76c1b07c865367b678c1bb5da0eb
Author: Jan Kiszka <[email protected]>
Date: Thu Sep 28 20:54:24 2017 +0200
cobalt/tracing: Enhance cobalt_switch_context tracepoint
Adding PIDs and the state of the previous task will allow to track
Xenomai task switches in kernelshark (so far via out-of-tree patches,
upstream is planning for the necessary plugin concept).
Moreover, reporting the current priority on context switch helps
debugging unexpected or delayed context switches
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=11a208c3a3720947d284253a9d188e3388867b04
Author: Jan Kiszka <[email protected]>
Date: Thu Sep 28 19:57:49 2017 +0200
cobalt/tracing: Convert cobalt_print_sched_params into proper function
The code of cobalt_print_sched_params is carried into the format string
in tracefs, and trace-cmd tries to make any sense out of it. While it
can process simply statements, this code is too complex and will prevent
the parsing.
Convert it into a function. That still does not resolve the parsing
issue of trace-cmd, but that can be addressed by a custom plugin which
can then interpret this tracepoint. That wouldn't be possible with the
broken format string.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=cdb01d0f05a4ac03b6ab8db7d3dcadad8c3ebd69
Author: Jan Kiszka <[email protected]>
Date: Thu Sep 28 19:55:28 2017 +0200
cobalt/tracing: Do not print numerical policy in trace
__print_symbolic already ensures that unknown policies are printed
numerically.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=046184bdad5fad8bd9cd8a5e28fc54308d0dff6c
Author: Jan Kiszka <[email protected]>
Date: Thu Aug 31 19:21:53 2017 +0200
cobalt/wrappers: Fix version level for cobalt_gpiochip_dev
That renaming only took place in 4.5.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=7abcc5184458fd7556268a1b8858ccf824bac5aa
Author: Jan Kiszka <[email protected]>
Date: Sun Oct 1 08:38:17 2017 +0200
cobalt: Never crash on reading host task pid
Catch the case that we try to obtain the pid of a not yet fully
initialized thread. Signal the error by returning -1 which is
specifically useful in case the value is added to some debug output or
trace.
xnthread_host_pid is now too complex for inlining.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=7265ca702f19ae82b1855aededc74883653ae1fa
Author: Jan Kiszka <[email protected]>
Date: Mon Jul 31 15:37:57 2017 +0200
cobalt: Introduce xnftrace_printf
This allows to inject a user-defined string into the system's ftrace
without leaving RT mode (because of using a standard write on
/sys/kernel/debug/tracing/trace_marker).
As the signature of this function is different from the existing trace
syscall, create as dedicated one.
For simplicity reasons, the maximum string length that can be passed
down to the kernel is limited to 255 characters (+1 for termination).
We call directly into the internal __trace_puts to avoid both the
unneeded strlen call of the trace_puts wrapper and the false warning
that kernel code uses trace_printk.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=928298de4584d7dc22608facd912870d540ce2e9
Author: Philippe Gerum <[email protected]>
Date: Wed Aug 2 11:07:01 2017 +0200
cobalt/timer: fix, rework ptrace detection and timer forwarding
Ptracing may cause timer overruns, as the ptraced application cannot
go waiting for the current period in a timely manner when stopped on a
breakpoint or single-stepped. A mechanism was introduced a long time
ago for hiding those overruns from the application, while ptracing is
in effect.
The current implementation dealing with this case has two major flaws:
- it crashes the system when single-stepping (observed on ARM i.MX6q),
revealing a past regression which went unnoticed so far.
- it uses a big hammer to forward (most) timers without running their
respective timeout handler while ptracing, in order to hide this
timespan from the overrun accounting code. This introduces two
issues:
* the timer forwarding code sits in the tick announcement code,
which is a very hot path, despite ptracing an application is
definitely not a common operation.
* all timers are affected / blocked during ptracing, except those
which have been specifically marked (XNTIMER_NOBLCK) at creation,
which turns out to be impractical for the common case.
The new implementation only addresses what is at stake, i.e. hiding
overrun reports due to ptracing from applications. This can be done
simply by noting when a thread should disregard overruns after an exit
from the ptraced mode (XNHICCUP), then discard the pending overruns if
this flag is detected by the code reporting them
(xntimer_get_overrun()).
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=6937f7f51a610737c6aac3c992565784e49330ac
Author: Jan Kiszka <[email protected]>
Date: Wed Jul 26 18:50:43 2017 +0200
cobalt: Fix conditional build by avoiding #if XENO_DEBUG()
In contrast to #ifdef CONFIG_x, #if IS_ENABLED(x) (or our wrapper of
the latter) does not update the dependency information for kbuild. So,
switching any config easily left inconsistent build artifacts behind.
This conversion also fixes de66d324a93d: there is and there was never a
CONFIG_XENO_DEBUG_LOCKING.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=2ed6ab482d701d3b43bec1b60ac612af732a63a8
Author: Jan Kiszka <[email protected]>
Date: Fri Jul 14 17:19:39 2017 +0200
smokey: Add test cases for trylock on ceiling mutexes
This reveals a bug in the trylock kernel slow-path when
CONFIG_XENO_OPT_DEBUG_MUTEX_SLEEP is set.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=7eadf3d718a5f0dc2f971999907c878aaea9b01f
Author: Jan Kiszka <[email protected]>
Date: Fri Jul 14 20:32:40 2017 +0200
cobalt: Align structure of mutex_trylock with mutex_timedlock
No need to have different patterns, and the one of mutex_timedlock is
more compact.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=356078f00ca6cf3cf49afbeda0789dc0bc9f9c2c
Author: Jan Kiszka <[email protected]>
Date: Fri Jul 14 20:34:25 2017 +0200
cobalt: Fix slow-path of mutex_trylock in kernel
We missed to call set_current_owner on successful acquisition. That
destroyed prio ceiling and could even cause a crash when lock debugging
was enabled.
This can easily be addressed by switching the open-coded trylock to
xnsynch_try_acquire. Nice side effect: less code.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=6f427a265c01e2e51ac6148345c817bb2c5b2c11
Author: Philippe Gerum <[email protected]>
Date: Thu Jun 1 09:46:29 2017 +0200
lib/cobalt: init: hint about failure due to disabled core
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=7685679317db27e340f21d59167f69031185ad5a
Author: Philippe Gerum <[email protected]>
Date: Thu Jun 1 09:43:53 2017 +0200
cobalt/syscalls: reject binding attempt to disabled core with EAGAIN
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=8d8f9d7d76f7a8220a1cabb5b63f10a26a1cb91a
Author: Philippe Gerum <[email protected]>
Date: Wed May 24 17:41:41 2017 +0200
cobalt/arm64: no fpsimd support in real-time kthread context
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=f035f79cc236e95ac6d07cabcb92c6154a4f4379
Author: Philippe Gerum <[email protected]>
Date: Mon May 22 12:06:46 2017 +0200
cobalt/arm64: use regular context switching code
Since 4.9.x, the interrupt pipeline implementation guarantees that the
regular context switching code may be used over the head stage,
including the fpu management bits.
Drop the open coded support and use mainline's implementation instead.
At this chance, drop the useless conditionals for handling the non-FPU
case: this one does not apply to arm64.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=af4e65618ae7011078d4c14ba297aee79abd07fd
Author: Philippe Gerum <[email protected]>
Date: Mon May 15 17:03:02 2017 +0200
cobalt/arm64: fix build w/ pre-4.8 kernels
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=3a09bed4b84f948c814c7fc14cc1f3bfc1e5e59c
Author: Philippe Gerum <[email protected]>
Date: Sun May 14 19:41:55 2017 +0200
cobalt/arm: fixups for kernel 4.8+
At this chance, stop using the obsolete flush_cache_all() routine
which cannot honor the documented semantics for arm64.
Besides, calibrating the access times to the timer registers in
no-cache conditions does not make sense.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=b1a298a7e47f66800586d49363f08569dc2047ea
Author: Philippe Gerum <[email protected]>
Date: Sat Feb 15 16:42:09 2014 +0100
config: bump UAPI level
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=4294e8c170581decaeb26d1083235fd20f6e5f77
Author: Philippe Gerum <[email protected]>
Date: Wed Feb 15 16:17:54 2017 +0100
cobalt/arm64: add README
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=665fd864d91f5912e171473d1687a5542d395ee6
Author: Jan Kiszka <[email protected]>
Date: Tue Dec 6 16:34:48 2016 +0100
smokey/posix-mutex: Fix test case by destroying barriers correctly
At least on x86-64-compat, the missing destruction of the smokey
barriers, specifically their embedded mutexes, cause crashes of the
test. The reason is likely a mismatch between the kernel's and
userland's view on which object is still active, combined with the fact
that userland kept them on the volatile stack.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=f1dcc8c4cd22ad16dbe449ae394c83160b3ac68f
Author: Jorge Ramirez-Ortiz <[email protected]>
Date: Wed Mar 30 13:30:11 2016 -0400
gpiopwm: display udp server information
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9ad88a9fea00f2838d2b593672c78fa1702cb62e
Author: Jorge Ramirez-Ortiz <[email protected]>
Date: Tue Mar 15 19:18:15 2016 -0400
gpiopwm: pwm signal generator and servo motor control demo code
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=38d0a827da921c26025b1bf6d8d560d0e840e734
Author: Jan Kiszka <[email protected]>
Date: Mon May 30 14:58:07 2016 +0200
lib/cobalt: Provide RT-capable usleep
User may expect this (probably last) sleeping service to be available
under Cobalt just like sleep, nanosleep & Co.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=cd9935b8afb678ac837f7c8b82ae5329b965ce9d
Author: Jorge Ramirez-Ortiz <[email protected]>
Date: Wed Oct 5 21:34:27 2016 +0200
utils/analogy: fix error check [SIGSEGV]
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=cc3274d43c39b4f7b5a7a536993a160e74281011
Author: Philippe Gerum <[email protected]>
Date: Fri Sep 9 16:07:54 2016 +0200
cobalt/arm64: thread: move all TCB initializers out of line
Does not impact performances and fixes inclusion hell for pulling the
struct xnthread definition for good.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=18c81cca602d9f2eb56544b01646a0d72aa00eb3
Author: Philippe Gerum <[email protected]>
Date: Thu Sep 8 16:29:59 2016 +0200
cobalt/arm64: fpu: drop obsolete xnarch_save_fpu()
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=d07ec2c3f0c63ed10c60861c888219e346b69bb8
Author: Philippe Gerum <[email protected]>
Date: Sun Aug 7 11:29:06 2016 +0200
net/drivers/e1000: work around UMR issue
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9cee52155f9147f8a1b5f6eb3798927dadd75f91
Author: Philippe Gerum <[email protected]>
Date: Thu Jul 7 17:05:16 2016 +0200
cobalt/syscalls: allow for handing over mode selection to syscall handlers
Specific system calls may benefit from dealing with the caller's
runtime mode by themselves, depending on internal information which
the generic syscall dispatcher does not have access to.
To this end, a new syscall mode called "handover" is
introduced. Syscalls bearing this mode bit are always entered from the
current calling domain. The syscall handler may return -ENOSYS to
trigger a switch to the converse domain until all domains have been
visited once, at which point the syscall fails with -ENOSYS
automatically.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=0bcd3c28722bcc9f16c9613c8459291dec0b7952
Author: Philippe Gerum <[email protected]>
Date: Mon Jul 11 15:42:01 2016 +0200
cobalt/powerpc: remove dependency on obsolete CONFIG_MATH_EMU
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=b8a44714bd031cf28eaa0ac7425685a67282d16f
Author: Philippe Gerum <[email protected]>
Date: Tue May 31 17:30:21 2016 +0200
boilerplate: add AVL library
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=ba4ad9fe40bed171328abfed8ec8bd27895ea2a8
Author: Philippe Gerum <[email protected]>
Date: Tue May 24 09:43:29 2016 +0200
boilerplate/libc: add placeholder for pthread_setschedprio()
For outdated uClibc.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=1198698b3628d23cfa8f6d5757953a5b3ee45229
Author: Jan Kiszka <[email protected]>
Date: Tue Mar 8 14:46:59 2016 +0100
lib/cobalt: Wrap pthread_setschedprio for proper real-time support
Implement pthread_setschedprio on top of pthread_setschedparam_ex with
the help of the new __SCHED_CURRENT policy. This ensures that prio
changes are directly applied to the real-time core, and that with just
a single syscall.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=564b2981f001a1f35d186157072676d13ee37fde
Author: Jan Kiszka <[email protected]>
Date: Tue Mar 8 14:41:28 2016 +0100
cobalt/kernel: Introduce __SCHED_CURRENT policy to setschedparam_ex
Define the internal scheduling policy "current": it shall refer to the
target thread's current scheduling policy. This will allow to model
pthread_setschedprio on top of pthread_setschedparam_ex with only a
single syscall.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=095db1b2723b7c8285e640d19b6d52f3a46a1111
Author: Jan Kiszka <[email protected]>
Date: Mon May 9 21:22:23 2016 +0200
cobalt/kernel: Trigger missing reschedule after PP deboost
xnsynch_release also needs to tell the caller about the potential need
for a reschedule after deboosting for prio-protection.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=6206478b59d8045c8f30489b7332af91f5fb7fee
Author: Jan Kiszka <[email protected]>
Date: Mon May 9 21:19:04 2016 +0200
cobalt/kernel: Return need_resched flag from xnsynch_release
We currently return the next owner, but no caller of xnsynch_release
evaluates this beyond != NULL and calls xnsched_run in that case.
Simplify the API by returning a need_resched flag directly. This will
also help with fixing the missing reschedule after PP deboost.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=734d7fa4844639b357f98f58a7e8d5f0d739f829
Author: Philippe Gerum <[email protected]>
Date: Sun Mar 20 18:51:17 2016 +0100
config: bump version info to 3.1-devel
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=d422c6a27c345353eca92d8763cb662fa7e9b4d7
Author: Philippe Gerum <[email protected]>
Date: Sun Mar 20 17:58:33 2016 +0100
lib/cobalt: add config switch to enable lazy setsched update mode
--enable-lazy-setsched should be given for enabling lazy propagation
of scheduling parameters upon calls to pthread_setschedparam*(),
sched_setscheduler(). Defaults to off.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9ffbfede56e409c2f6c934cb26d9ad2a38f408fb
Author: Philippe Gerum <[email protected]>
Date: Sun Mar 20 17:20:58 2016 +0100
boilerplate/libc: provide placeholders for prioceiling ops
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=8f6a440832073369f4861194ec5d1a7ec6eda7a7
Author: Philippe Gerum <[email protected]>
Date: Fri Mar 18 12:12:27 2016 +0100
lib/cobalt: use lazy schedparam propagation
Do not switch to secondary mode upon schedparam updates for
propagating changes to the regular kernel, if the caller runs in
primary mode when entering pthread_setschedparam*() or
sched_setscheduler(). In such a case, the update request to the
regular kernel is left pending until the target thread resumes
execution in relaxed mode, at which point it is committed.
CAUTION: This mechanism won't update the schedparams cached by the
glibc for the caller in user-space, but this is the deal: we don't
relax threads which issue pthread_setschedparam[_ex]() from primary
mode anymore, but then only the kernel side (Cobalt and the host
kernel) will be aware of the change, and glibc might cache obsolete
information.
If the caller already runs in relaxed mode on entry to these services,
the update request takes place immediately, via the regular (g)libc
calls.
In any case, the new scheduling parameters for the target thread are
immediately applied by Cobalt, regardless of the update path followed
for the regular kernel.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=ccea5327713baa7aabdcbb701ba2871c9ae8673e
Author: Philippe Gerum <[email protected]>
Date: Fri Mar 18 12:12:50 2016 +0100
cobalt/thread: add schedparam lazy propagation
Provide a mechanism for carrying out a lazy propagation of schedparam
updates to the regular kernel, so that userland does not have to
switch to secondary mode for this.
When userland issues sc_cobalt_thread_setschedparam_ex for updating
the scheduling parameters of a Xenomai thread, a request for
propagating this change to the regular kernel is made pending. Such
request will be committed later, either when:
- the thread relaxes if it is running in primary mode when the update
request is received;
- next time the thread calls back into the Cobalt core as a result of
receiving a HOME action from a SIGSHADOW notification, which is sent
if such thread was relaxed at the time of the update request.
As a result, the target thread will have propagated the schedparams
update to the regular kernel as soon as it resumes (relaxed) execution
in user-space.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=2b671e641c780191c6975ca5b7fd4c2a03baf67a
Author: Jan Kiszka <[email protected]>
Date: Thu Feb 25 11:29:00 2016 +0100
smokey/posix-mutex: Fix test case /wrt mutex object reuse
Mutex objects created on the stack must be properly destroyed after use.
Otherwise, succeeding tests that use the same stack layout will consider
them busy and refuse to recreate the mutexes.
Signed-off-by: Jan Kiszka <[email protected]>
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=e23dd2ed23f78455364f87aeca32d3c4efefc2ec
Author: Philippe Gerum <[email protected]>
Date: Wed Feb 17 09:21:27 2016 +0100
testsuite/smokey: mutex: simplify, introduce PP tests
At this chance, the lock stealing test is also fixed.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=1b2910f63b6a3fd6e342962f598cff30ecbee206
Author: Philippe Gerum <[email protected]>
Date: Tue Feb 16 10:13:03 2016 +0100
lib/cobalt/mutex: add support for priority ceiling protocol
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=7819e63e97ddf4429fb0182791a7c6c82363690f
Author: Philippe Gerum <[email protected]>
Date: Tue Feb 16 10:12:55 2016 +0100
cobalt/synch: add support for priority ceiling protocol
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9771a9eed67d2a5f56c467429a46152014f74242
Author: Philippe Gerum <[email protected]>
Date: Thu Mar 3 09:16:21 2016 +0100
cobalt/wrappers: add wrapper for reinit_completion()
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=bd0369781a91f969d8d4aba87d0797eb4f63b38d
Author: Philippe Gerum <[email protected]>
Date: Fri Feb 26 11:44:16 2016 +0100
testsuite/smokey: add test checking Cobalt's cpu affinity control
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=96dd3a3675405540f9d9481b5815c3a869d19155
Author: Gilles Chanteperdrix <[email protected]>
Date: Sun Nov 1 19:14:40 2015 +0100
testsuite/smokey: add RTnet raw packets test
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=1885178ff66f250c2cf60b39db4d28eb9efabbba
Author: Gilles Chanteperdrix <[email protected]>
Date: Sun Oct 11 16:05:18 2015 +0200
testsuite/smokey: add RTnet testsuite
Starting with UDP and raw sockets.
Measuring round trip time and checking for lost packets.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=44bc7086b3bb0c7d0e7d09409af2dd3dbd2205f2
Author: Philippe Gerum <[email protected]>
Date: Sat Nov 14 18:17:49 2015 +0100
cobalt/arm64: drop obsolete config knob
All existing ARM64 pipeline implementations provide the
CONFIG_IPIPE_WANT_PREEMPTIBLE_SWITCH knob, which is tested directly in
the Xenomai code base. No need for CONFIG_XENO_ARCH_UNLOCKED_SWITCH
anymore.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=56ea16de3fc45bcf32b2bbaa3e6c20cd305f72c0
Author: Philippe Gerum <[email protected]>
Date: Sat Nov 14 18:14:53 2015 +0100
cobalt/powerpc: drop obsolete config knob
As of fbe1164, CONFIG_XENO_ARCH_UNLOCKED_SWITCH is not tested anymore
in the code base.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=26a9cc78b2c6038ce7a4eaa05b4fe2748272fe3e
Author: Philippe Gerum <[email protected]>
Date: Sat Nov 14 18:07:15 2015 +0100
cobalt/sched: detect preemptible switch support in pipeline
CONFIG_XENO_ARCH_UNLOCKED_SWITCH is merely an alias for
CONFIG_IPIPE_WANT_PREEMPTIBLE_SWITCH, which is only meaningful to the
ARM architecture, now that PowerPC dropped such support.
Use the pipeline symbol directly to make the dependency explicit.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=dbdf956141005e83e8b0423435703ded21aaba7e
Author: Philippe Gerum <[email protected]>
Date: Sat Nov 14 16:41:13 2015 +0100
cobalt/powerpc: drop support for unlocked context switch
This feature never actually brought any measurable gain on powerpc
platforms, compared to the complexity of its implementation in the
pipeline. It was primarily aimed at reducing latency for interrupt
handlers when costly cache and TLB flushes are required to switch
context, at the expense of increasing the scheduling latency. It
turned out to be counter-productive on common powerpc platforms, with
efficient MMUs.
This feature has been default off for a while now, and 4.1+ pipelines
won't provide support for it anymore. Time to drop support from
Xenomai too.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=54de98293d9221e5ae366c2cdf02261e9cee7fdb
Author: Philippe Gerum <[email protected]>
Date: Sat Nov 14 15:21:02 2015 +0100
cobalt/arm: track current mm unconditionally
All pipelines Cobalt can work with (i.e. 3.10+) for the arm
architecture do provide the mm tracking feature unconditionally, so
there is no point in keeping any build switch for it.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=4ec8f1bd64035ea29736447aab0a78112c1a4fa7
Author: Philippe Gerum <[email protected]>
Date: Sat Nov 14 15:21:02 2015 +0100
cobalt/powerpc: track current mm unconditionally
All pipelines Cobalt can work with (i.e. 3.10+) for the powerpc
architecture do provide the mm tracking feature unconditionally, so
there is no point in keeping any build switch for it.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=a995a8d0fe175bbefd3d56e75a7e55f6aa911347
Author: Philippe Gerum <[email protected]>
Date: Sat Nov 14 14:47:44 2015 +0100
cobalt/thread: track thread_info unconditionally
We almost always want to track the thread_info structure of the host
task in the core tcb, and doing so is cheap, so there is no point in
building this support conditionally.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=f50584e1dcb42b11bb71b728ae4593ace8a9819f
Author: Philippe Gerum <[email protected]>
Date: Tue Nov 3 13:11:25 2015 +0100
cobalt/kernel: fixup for v3.19+ (trace_seq)
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=ddd3875dd569e69e59cbda68f545bcbdb048ed26
Author: Philippe Gerum <[email protected]>
Date: Mon Nov 2 20:45:10 2015 +0100
cobalt/kernel: fixup for v3.19+ (user_msghdr)
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=b9afdf43dcd357d4ebb328c1ba8dc997b18698b9
Author: Philippe Gerum <[email protected]>
Date: Mon Nov 2 15:41:31 2015 +0100
cobalt/arch: fixup READMEs
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=6fc661142a1df087c1425fc3fe9c3e937fa00832
Author: Philippe Gerum <[email protected]>
Date: Sun Nov 1 17:22:33 2015 +0100
cobalt/arm64: add README for I-pipe support
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=79b4a7fc45b749d3d408d339c64fdc1b8d49d398
Author: Gilles Chanteperdrix <[email protected]>
Date: Fri Oct 30 17:14:00 2015 +0100
cobalt/arm64: attempt at fixing fpu switch
Return to eager switching, since user-space applications use FPU
registers even when not using the FPU, but use an auxiliary backup area
when the "TIF_FOREIGN_FPSTATE" bit is set, in order to avoid clobbering
the saved FPU state.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=12d6051e5c7e740ce4215270f3e1cd0d58a00110
Author: Philippe Gerum <[email protected]>
Date: Sat Oct 24 15:52:48 2015 +0200
testsuite/smokey: add basic FPU stress test
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=8598ab0a5a8bfb56390824b780e61e963c041a03
Author: Philippe Gerum <[email protected]>
Date: Fri Nov 17 19:03:04 2017 +0100
cobalt/arm64: add syscall decoding helper
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=26d64126c033ed5d735535d25f5a155b5630229f
Author: Philippe Gerum <[email protected]>
Date: Thu Oct 22 14:45:05 2015 +0200
cobalt/arm64: disable callee-saved logic in fptest helpers
We don't want GCC to apply any callee-saved logic to fpsimd registers
in fp_regs_set() before fp_regs_check() can verify their contents, but
we still want GCC to know about the registers we have clobbered.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=5e72dd709c4dc5cecb481821033ac0a442f98c38
Author: Philippe Gerum <[email protected]>
Date: Mon Oct 19 15:54:55 2015 +0200
cobalt/arm64: switch to regular system call convention
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=0dd229d39478599fad51ee651d9bd1eaab58947e
Author: Philippe Gerum <[email protected]>
Date: Mon Oct 19 10:38:21 2015 +0200
cobalt/arm64: use lazy fpsimd switch mode
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=29f056f4fec1ef7653e22740f34169d5a193bdbb
Author: Philippe Gerum <[email protected]>
Date: Sat Oct 17 18:07:59 2015 +0200
cobalt/arm64: use regular context switching code
Instead of open coding a copy of the regular context switching code,
use __switch_to() directly, assuming the pipeline properly serializes
switches from all domains.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=1ea1fdf15409b79bc5f0b30231a24c171b9f2dbe
Author: Philippe Gerum <[email protected]>
Date: Sat Oct 17 14:43:25 2015 +0200
cobalt/arm64: drop useless test on target architecture
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=e268933474b42153523d2f5848350d6b2bacc0d5
Author: Philippe Gerum <[email protected]>
Date: Sat Oct 17 14:40:53 2015 +0200
cobalt/arm64: fix inclusion guards
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=c16dcccf7f8461c462c7959d2f30570b06dbacdb
Author: Don Mahurin <[email protected]>
Date: Mon Sep 14 12:52:27 2015 -0700
cobalt/arm64: Use empty mayday implementation for arm64.
The arm mayday implementation was not correct for arm64. Replace with empty
implementation.
Handle mayday in the linux domain, using xnthread_relax. This change is
essentially the same as the general change proposed in the 'Mayday issues
again' discussion (Jan Kiszka, Jun 21), though only applied to arch/arm64.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=4126dbc890581af696285db358230592a0b3a246
Author: Dmitriy Cherkasov <[email protected]>
Date: Fri Oct 2 12:54:37 2015 -0700
cobalt/arm64: FPU code cleanup
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=42666154300b8845c24ead2ebbf5956bcd7dabc4
Author: Dmitriy Cherkasov <[email protected]>
Date: Thu Oct 1 15:47:41 2015 -0700
cobalt/arm64: add lazy FPU switching
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=f8484f18616e85f9c18a01c52f630be61bb88395
Author: Dmitriy Cherkasov <[email protected]>
Date: Mon Sep 28 16:13:45 2015 -0700
cobalt/arm64: fix fpu exception names
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=ca2c2f3112ae4057bf9d6f9a5d2ca3dfdca43c67
Author: Dmitriy Cherkasov <[email protected]>
Date: Fri Sep 11 17:58:54 2015 -0700
cobalt/arm64: add basic FPU support
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9178b4361646ff608ec90abcf5b48b2d529e3661
Author: Philippe Gerum <[email protected]>
Date: Thu Sep 17 15:08:34 2015 +0200
cobalt/arm64: leave mm tracking to the pipeline
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9d5837a7d48c25f57ead4e3de05cab88f683e29a
Author: Philippe Gerum <[email protected]>
Date: Thu Sep 17 11:43:50 2015 +0200
cobalt/arm64: restrict unlocked switch to SMP
Unlocked switching for Xenomai/ARM was specifically introduced for
improving the interrupt latency on low-end armv4/armv5 platforms with
VIVT caches.
The once massive overhead imposed on the MMU context switching code
for invalidating the cache is long gone with VIPT indexing, and
keeping IRQs off while switching the memory context on armv8 these
days is not an issue. Actually, the complexity of the code involved in
dealing with unlocked switching may overbalance the expected gain.
However, the mainline kernel implementation for ASID management in the
SMP case currently requires us to keep IRQs enabled when allocating a
new MM context over the Xenomai domain, just like it did for aarch32
during the 2.6.3x time frame until the IPI-based approach was
eventually dropped.
So, let's restrict unlocked switching to the SMP case, forcing it off
otherwise, in the hope we can drop it entirely in the future.
At this chance, CONFIG_IPIPE_WANT_PREEMPTIBLE_SWITCH moves to the
kernel area, where it actually belongs.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=e14a90a1b639b896ba823189b4f8338f0121dd42
Author: Philippe Gerum <[email protected]>
Date: Thu Sep 17 04:01:49 2015 +0200
cobalt/arm64: sanitize calibration file
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9c8f313dded2afd9fad58e38c131340fe7ab7ac0
Author: Philippe Gerum <[email protected]>
Date: Thu Sep 17 02:19:57 2015 +0200
cobalt/arm64: assume TLS is properly supported
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=e9828378e8e832b7243eb9de0a06273d5189154c
Author: Philippe Gerum <[email protected]>
Date: Thu Sep 17 02:16:10 2015 +0200
cobalt/arm64: drop aarch32 bits from feature set
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=11e57db097e74a0572190fa621c2f6fae0fc7f01
Author: Don Mahurin <[email protected]>
Date: Wed Sep 2 13:48:36 2015 -0700
cobalt/arm64: fix build for mismatched printf type (%lx,u64) on arm64.
pc and orig_r0 are u64 on arm64 and 'unsigned long' or arm and other
platforms. printf referencing these are using %lx. On arm64, long and long long
(and u64) are 64 bits. Rather than changing printf format, chnage arm64 macros
to cast to unsigned long.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=213393d60f3a32dd1bbe27449ff40eb3a40ccc55
Author: Dmitriy Cherkasov <[email protected]>
Date: Wed Jun 17 16:09:20 2015 -0700
cobalt/arm64: machine.h: use slightly faster ffnz implementation
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=c29194d4d8d73bf2136ad56d296e035c96809bf3
Author: Dmitriy Cherkasov <[email protected]>
Date: Mon Jun 15 17:10:37 2015 -0700
cobalt/arm64: machine.h: Add 64-bit ffnz implementation. This fixes crash
when running xddp-echo.
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=a735bd1f0816487b11e3ea57ecd18ab5cda89fb1
Author: Dmitriy Cherkasov <[email protected]>
Date: Fri May 15 23:26:18 2015 -0700
cobalt/arm64: thread: use kernel switch_to
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=6933db8be4c9d96d9fbf52b4b833a8e90d00d6bb
Author: Don Mahurin <[email protected]>
Date: Wed May 13 09:36:25 2015 -0700
lib/cobalt/arm64: replace tsc counter
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=6df53b6e9f4b6adcc07649a6f370e93c4f43db94
Author: Dmitriy Cherkasov <[email protected]>
Date: Fri May 8 15:54:18 2015 -0700
cobalt/arm64: xenomai/syscall.h: update syscall register
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=b8a68bafaf4b5f7731d929fc188d9b99f6f6cd8a
Author: Dmitriy Cherkasov <[email protected]>
Date: Wed May 6 15:27:10 2015 -0700
cobalt/arm64: prepare-kernel: add arm64 arch
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=bfd94de5be3803b6f1993f7569735e59d5faa25c
Author: Don Mahurin <[email protected]>
Date: Fri May 8 10:39:32 2015 -0700
lib/cobalt/arm64: implement syscall for armv8/aarch64
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=e2570d850bf41b077099e48f0ce89964db6562e0
Author: Don Mahurin <[email protected]>
Date: Fri May 8 10:39:01 2015 -0700
lib/cobalt/arm64: add __LINUX_ARM_ARCH__ form armv8/aarch64
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=80fb6f288404be5ef73c18dbfbbb3a92edd0f2d4
Author: Don Mahurin <[email protected]>
Date: Fri May 8 10:37:36 2015 -0700
lib/cobalt/arm64: disable kuser tsc get setting for armv8/aarch64
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=c8fa7fbfb4f9bc08ec23f47cbbbdb8cae12495dc
Author: Dmitriy Cherkasov <[email protected]>
Date: Thu May 7 16:41:45 2015 -0700
cobalt/arm64: set cache aliasing and disable floating point coprocessor
instructions form aarch64/arm64
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=abde5789d85d7a20a6bf8d8411bbc97b50060157
Author: Dmitriy Cherkasov <[email protected]>
Date: Thu May 7 16:41:09 2015 -0700
cobalt/arm64: thread.h & syscall.h: fix register references for arm64
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=18c9e5f893c33597f2d606f008975ead5458a0a7
Author: Dmitriy Cherkasov <[email protected]>
Date: Thu May 7 16:40:07 2015 -0700
cobalt/arm64: features.h: disable XNARCH_HAVE_LLMULSHFT,
XNARCH_HAVE_NODIV_LLIMD for armv8/aarch64, as arm64 does not have these
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=ffa4601eefe580a64791b2a20bfbec3e196532b5
Author: Dmitriy Cherkasov <[email protected]>
Date: Thu May 7 13:58:14 2015 -0700
cobalt/arm64: update register struct usage for arm64
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=99de04359c30838e69b179419c40c5c467104fd5
Author: Dmitriy Cherkasov <[email protected]>
Date: Thu May 7 13:56:22 2015 -0700
cobalt/arm64: remove code for unrelated arm architecture
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=e1bcc14d09f2e5bffc9836a616266e70325dcbf9
Author: Dmitriy Cherkasov <[email protected]>
Date: Thu May 7 13:54:32 2015 -0700
cobalt/arm64: Makefile: fix arch path
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=eb7a59ad2b2fd52efe9f256628532ca0eb085e66
Author: Dmitriy Cherkasov <[email protected]>
Date: Wed May 6 15:27:23 2015 -0700
cobalt/arm64: populate arch/arm64 with a copy of arch/arm.
kernel/cobalt/arch/arm -> kernel/cobalt/arch/arm64
lib/cobalt/arch/arm -> lib/cobalt/arch/arm64
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=9beda3fdffec524551c06901dfbe3a39b6aa3c24
Author: Philippe Gerum <[email protected]>
Date: Sat Nov 18 19:15:20 2017 +0100
boilerplate/lock: pull missing header
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=6c476beb795956872a1dfcdf9ec36de7a3ad31ae
Author: Philippe Gerum <[email protected]>
Date: Thu Oct 19 12:57:54 2017 +0200
scripts/wrap-link.sh: fix -Ur vs -pie conflict
Often reported as a failure to build Xenomai over Debian Stretch,
which ships with gcc6 built with --enable-default-pie, ld's -Ur option
as given by wrap-link.sh does not mix well with -pie which is
implicitly enabled, causing the linker to bail out on error.
Since this script eventually completes the link stage to produce a
fully resolved executable, collecting the ctors/dtors and resolving
all references from the partially linked object file is implied
anyway, making -Ur useless in stage2 at best.
For details, see:
http://xenomai.org/pipermail/xenomai/2017-October/037799.html
https://xenomai.org/pipermail/xenomai/2017-August/037648.html
http://www.xenomai.org/pipermail/xenomai/2017-May/037312.html
URL:
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=4e8f323a56087ef6e2c490c600d76abdeb8e8439
Author: Philippe Gerum <[email protected]>
Date: Sat Nov 18 12:17:45 2017 +0100
build: enable -fasynchronous-unwind-tables
We need unwind tables to be precise at the instruction level, so they
can be used for accurate stack unwinding (e.g. backtrace()) from
asynchronous events like signals. Slackspot depends on this ability.
Failure to do so may cause applications to report incomplete
backtraces with glibc's backtrace(), or even crash over libunwind, see
http://xenomai.org/pipermail/xenomai/2017-October/037763.html
Enable -fasynchronous-unwind-tables for building the Xenomai libraries
and the user applications (via xeno-config --cflags).
Report and suggestion for a fix by Andreas Glatz
<[email protected]>.
_______________________________________________
Xenomai-git mailing list
[email protected]
https://xenomai.org/mailman/listinfo/xenomai-git