Data structure l4/types.h:l4_timeout_t, L4_IPC_TIMEOUT()
Utilities (time.h):
void l4_mips_encode_timeout(dword_t msecs, byte_t *mant, byte_t *exp, byte_t round); dword_t l4_mips_decode_timeout(byte_t mant, byte_t exp);And similar for page-fault timeouts.
Page fault in receiver's AS results in RPC using sender's send pagefault timeout.
Pagefault in sender's AS results in RPC using receiver's receive pagefault timeout.
Page fault timeouts are required for security.
They ensure that an untruted server cannot install a non-existing page fault handler, which would then lead to the IPC blocking indefinitively, if it triggers a page fault.