Gilles Chanteperdrix wrote: > Hi, > > I had a problem with an RTDM driver: /proc/xenomai/rtdm/open_fildes > could not close its descriptors. So, I tried with trunk which has > auto-cleanup of RTDM descriptors, to see if descriptors would be closed, > the descriptors were not auto-closed when killing my application > either. After a little investigation, it appears that the problem is > that my drivers had a real-time close handler but no non-realtime > handler, so when close was invoked from a non real-time context (either > /proc/xenomai/rtdm/open_fildes, or the auto-cleanup routine), the > default close handler installed by RTDM simply returned -38 and close > aborted. > > The way to fix this issue was rather simple: implement a non real-time > close handler, but I find this behaviour a bit disturbing, maybe > implementing a non real-time close handler could be mandatory ? >
It is, read the fine manual :). Moreover, if you had validated your driver via CONFIG_XENO_OPT_DEBUG_RTDM, you would have got an error on registration. But given the now even more required close_nrt handler, I think decoupling this particular check from the debug switch is appropriate. Will fix. Jan
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Xenomai-core mailing list [email protected] https://mail.gna.org/listinfo/xenomai-core
