Several RTEMS OSI calls not safe from ISR
Bug #999844 reported by
till
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
EPICS Base |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Some OSI calls should be safe to call from an ISR
epicsEventSignal()
epicsThreadResume()
and maybe
epicsThreadGetP
These routines check the return status of the underlying
RTEMS calls and use errlogPrintf() to report failure which
is illegal from ISR context.
To post a comment you must log in.
errlogPrintf() contains a short-circuit if it is called from interrupt context. So while an error message won't be informative, I think these functions are safe to call from an ISR.
> if (epicsInterrupt IsInterruptCont ext()) { ontextMessage
> epicsInterruptC
> ("errlogPrintf called from interrupt level\n");
> return 0;
> }