> On Thu, Nov 26, 2015 at 10:00:16AM +0100, [email protected] wrote: > > Xenomai 2.6.3 documentation states, that the usage of open_rt handlers > > is deprecated > > as this feature will be removed in the future. > > Xenomai 2.6.3 is very old now. It is not even the latest release in > the 2.6 branch. open_rt has been removed from Xenomai 3. > > > As a consequence one cannot use rtdm_mutex_lock inside an nrt_open > > handler > > to synchronize multiple callers, as this will result in a > > (!xnpod_unblockable_p()) assertion. > > So using a spinlock would be the only solution in that situation. > > Is that true? > > No, the caller is a Linux task, or a Xenomai task running in > secondary mode. As such, any Linux service can be used, such as > mutex or semaphores (the Linux ones). Yes, I agree. Using a xenomai spinlock would of course also result in a xenomai assertion, hence I'm left with the linux synchronization services. Same goes for init_module/cleanup_module handlers, as these can only be called by Linux tasks.
> > > > > By the way, if an rtdm driver only supports RTDM_EXCLUSIVE mode, is > > there > > a need to synchronize concurrent calls to rt_dev_open on this device at > > all? > > I guess not, because the second caller will be refused. > > Is that also true? > > Yes. OK. Gilles, thanks again for responding that fast. I really appreciate it. Regards Jochen _______________________________________________ Xenomai mailing list [email protected] http://xenomai.org/mailman/listinfo/xenomai
