Home |
RTKernel-32 Programming Manual Multitasking, Real-Time, and RTKernel-32 Alternate APIs for RTKernel-32 Error and Information Messages Error Messages |
Error MessagesAll possible error messages follow in alphabetical order. Messages issued only by the Debug Version are marked "(dbg)". AllocUserData: Too many user data entries used RTKAllocUserData is called without any more user data entries available. The number of user data entries is limited to 16. Block size must be at least 'sizeof(void*)' RTKAllocMemPool was called with a block size less than 4. Buffers allocated through Memory Pools must have at least 4 bytes each. Configuration structure size error RTKernel-32 found that RTKConfig's Size field does not have the expected value. Please check the initialization of RTKConfig. Conflicting math context flags A call to RTKCreateThread specified both TF_MATH_CONTEXT and TF_NO_MATH_CONTEXT, which is contradicting. DeleteMailbox: Task queued to get/put from/into mailbox An attempt was made to delete a mailbox using RTKDeleteMailbox, although it is being used by other tasks. Initial resource value must be 1 An attempt was made to initialize a resource or mutex semaphore with a value other than 1. Initial semaphore value out of range An attempt was made to initialize a binary or event semaphore with a value greater than 1. Internal XXXX: Message (dbg) An internal error has occurred in RTKernel-32. XXXX are 2 to 4 letters; Message provides more information about the error. Normally, such errors should never occur. They suggest that internal data structures of RTKernel-32 have been corrupted. Interrupts enabled by task switch hook (dbg) A task switch hook of an application has enabled interrupts which is not supported. Invalid mailbox (dbg) A mailbox was passed to RTKernel-32 that does not reference an existing or valid mailbox structure. It is also possible that internal data structures of RTKernel-32 have been corrupted, leading to a mailbox not being recognized as valid. Unnoticed stack overflows or dangling pointers can cause such errors. Invalid semaphore (dbg) A semaphore was passed to RTKernel-32 that does not reference an existing or valid semaphore structure. It is also possible that internal data structures of RTKernel-32 have been corrupted, leading to a semaphore not being recognized as valid. Unnoticed stack overflows or dangling pointers can cause such errors. Invalid task handle (dbg) A task handle was passed to RTKernel-32 that does not reference an existing or valid task. It is also possible that internal data structures of RTKernel-32 have been corrupted, leading to a task not being recognized as valid. Unnoticed stack overflows or dangling pointers can cause such errors. IRQ out of range (dbg) In invalid IRQ value was passed to one of the IRQ functions. RTKernel-32 supports IRQs 0 to 31, but the interrupt driver used can further limit the number of available IRQs. Out of memory to allocate Object An attempt was made to create a mailbox, a semaphore, a task, a trace buffer, a Memory Pool, or an interrupt stack, and not enough memory was available. Preemptions not supported RTKPreemptionsON was called although the interrupt driver does not support preemptions. Priority out of range RTKCreateThread, RTKRTLCreateThread, or RTKernelInit was passed an invalid priority. The Debug Version also checks the new priority in function RTKSetPriority. Resource owned by task Function RTKDeleteSemaphore was called for a resource or mutex semaphore currently occupied by a task. ResourceOwner called on non-resource semaphore (dbg) Function RTKResourceOwner was called with a semaphore that was not initialized as a resource or mutex semaphore. RTKernelInit() not called An attempt was made to use the kernel before it has been initialized and automatic initialization was disabled in RTKConfig. RTKIRQInfo: buffer too small The buffer passed to RTKIRQInfo was too small. The buffer size should be at least 200 bytes. RTKMailboxInfo: buffer too small The buffer passed to RTKMailboxInfo was too small. The buffer size should be at least 120 bytes. RTKPulse on non-event semaphores (dbg) RTKPulse is only supported for event semaphores. RTKResetEvent called on non-event semaphore (dbg) Function RTKResetEvent is only supported for event semaphores. RTKSemaInfo: buffer too small The buffer passed to RTKSemaInfo was too small. The buffer size should be at least 130 bytes. RTKTaskInfo: buffer too small The buffer passed to RTKTaskInfo was too small to accept even one task. The buffer size should be at least 200 bytes. RTKWait called in interrupt (dbg) RTKWait, RTKWaitTimed, or RTKWaitUntil was called inside an interrupt handler which is not supported. Semaphore overflow (dbg) An attempt was made to store more than 232-1 events in a counting semaphore. Semaphore type unknown RTKOpenSemaphore was passed an unknown semaphore type. Signal: Current task does not own resource (dbg) A resource or mutex semaphore was released using RTKSignal by a task not occupying the resource or mutex. Signal: Resource released out of sequence (dbg) A resource or mutex semaphore was released by RTKSignal in an improper sequence. Stack overflow (dbg) RTKernel-32 has recognized a stack overflow; the task had less than 64 bytes left on its stack. The Debug Version checks for stack overflow in each kernel call. This message is also issued by an explicit call to RTKStackCheck if a stack overflow has occurred. Task already owns resource (dbg) RTKWait, RTKWaitTimed, RTKWaitUntil, or RTKWaitCond were called by a task that already occupies the respective resource semaphore. Task blocked in interrupt (dbg) An attempt was made to perform a blocking task switch in an interrupt handler. Task terminated with owned resources A Task has terminated itself while it held resource or mutex semaphores. It should free all such semaphores before terminating. Task waiting on semaphore RTKDeleteSemaphore was called although another task was waiting on the given semaphore. User data index out of range One of the user data functions has been called with an invalid user data index. The index must be allocated using RTKAllocUserData. Error and Information Messages
|