Is your responsibility as user of the set DIE function because
the TQE resides in SQA. Thus, you must explicitly free the TQE when
it is no longer necessary and (with one exception) in error situations
as well. Timer supervision frees a TQE for you for a failing address
space only if the TQE is enqueued on the real time queue and has field
TQEAID set to the ASID of the failing address space.
Before freeing the TQE, however, you must ensure that it is not
currently on the real time queue. There are several ways to accomplish
this:
- Always free the TQE in the DIE routine because it is never on
the real time queue when the routine receives control.
- Before freeing the TQE, use timer supervision's TQE DEQUEUE routine.
This routine either removes the TQE from the real time queue or, if
the TQE is not on the queue, takes no action.
Note: - You must not alter the TQE (other than in the fields previously
described).
- The interface for the TQE DEQUEUE routine is described in “Interval
Cancellation”.