Philippe Gerum wrote:
>> rt-caps-group.patch
> 
> Good idea, but totally untested on my side (did I already mention my
> laziness?). Will merge and backport to 2.3.x, XENO_OPT_SECURITY_ACCESS
> was too cheap to be good anyway.

What about moving that scheduling parameter settings into the
trampoline? Some legacy RTOS libs would still have to be adapted.

> 
>> -----------------------------------
>>
>> See dedicated posts earlier on this list.
>>
>>
>> refactor-timer-modes.patch
>> --------------------------
>>
>> xntimers are now of three kinds: XNTM_MONOREL, XNTM_MONOABS, or
>> XNTM_REALABS. This mode is passed on xntimer_start or on invocation of
>> higher services (xnpod_suspend_thread e.g.). Users were widely
>> automatically converted and may lack optimisation for the new scheme.
>> Please review carefully for regressions!
>>
> 
> The only reason for me to whine about this one so far concerns naming
> issues. Why do things need to be that picky?
> 
> I mean, we have only three modes, relative, absolute monotonic and
> absolute realtime and we discussed in great length why we won't have
> more than those. Given that "relative non-monotonic" would make no sense
> here, and that "realtime" carries a strong notion of absoluteness in
> relation to the wallclock, let's keep "relative", "absolute" and
> "realtime". In any case, "mono" is not widespread enough for people to
> immediately catch "monotonic" anyway, so in case of doubt: I'd say
> _RTFM_.
> 
> Additionally, having XN_INFINITE and XNTM_RELATIVE/ABSOLUTE/REALTIME is
> a clear sign of discrepancy. Please, keep my laziness intact, and let's
> keep XN_ for general macros. I know that this is somehow in
> contradiction with the current practice for the native skin, but I'm
> full of contradictions anyway, so...

Hmm, everything has it's pros and cons, but mostly you are right. Here
is a new proposal, please tell me if it's acceptable so that I can
rebase the rest:

--- xenomai.orig/include/nucleus/types.h
+++ xenomai/include/nucleus/types.h
@@ -62,8 +62,13 @@ typedef int (*xniack_t)(unsigned irq);

 #define XN_INFINITE   (0)
 #define XN_NONBLOCK   ((xnticks_t)-1)
-#define XN_RELATIVE   0
-#define XN_ABSOLUTE   1
+
+/* Timer modes */
+typedef enum xntmode {
+       XN_RELATIVE,
+       XN_ABSOLUTE,
+       XN_REALTIME
+} xntmode_t;

 #define XN_APERIODIC_TICK  0
 #define XN_NO_TICK         ((xnticks_t)-1)


Last issue pending is the xintr locking thing. Will try to have a closer
look again and kick Dmitry for some more explanations of his patch.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Xenomai-core mailing list
Xenomai-core@gna.org
https://mail.gna.org/listinfo/xenomai-core

Reply via email to