These panics represent program errors which are detected by the Kernel Executive. Typically, they are caused by passing bad or contradictory parameters to functions. Threads which cause exceptions also raise a KERN-EXEC panic.
The thread causing the panic is terminated.
|
This panic is raised when the Kernel cannot find an object in the object index for the current process or current thread using the specified object index number (the raw handle number). The most common reason for this is trying to use a kernel-side resource
without first having successfully created it or successfully opened
it. Typically, such resources are created or opened through user side
handles, which are instances of classes derived from For example, a call to |
|
This is a general panic raised as a result of trying an unauthorized activity such as trying to suspend a thread, to set the priority of a thread or to set the priority of a process, when not authorized to do so. |
|
This panic is raised by the kernel when opening a kernel side object, a DObject type, and the full name is invalid. The full name is deemed to be invalid if it contains a character that is not one of the printable characters lying between 0x20 and 0x7e inclusive, or it contains an asterisk or a question mark. See also Kern::ValidateFullName(). |
|
This panic is raised when an unhandled exception occurs. Exceptions have many causes, but the most common are access violations caused, for example, by dereferencing NULL. Among other possible causes are: general protection faults, executing an invalid instruction, alignment checks, etc. |
|
This panic is not used. |
|
This panic is not used. |
|
This panic is raised by the kernel when a handle to a code segment is invalid. |
|
This panic is not used. |
|
This panic is not used. |
|
This is a general type of panic that is usually raised by
a device driver when dealing with an asynchronous request, and it
finds that an asynchronous request is already outstanding. For an
example of the context in which this is raised, see This panic is also raised when trying to subscribe to a
property through a call to |
|
This panic is raised by DLogicalChannel::Request() when the request number passed to the function is smaller than the permitted minimum. See also DLogicalChannel::EMinRequestId(). |
|
This panic is raised when creating a logical channel, and the unit number is outside the permitted range:
A logical channel is created as a result of a call to |
|
This panic is raised by the kernel if an event capture hook has already been designated. |
|
This panic is raised by the kernel if the current thread is not the designated event capture hook. |
|
This panic is raised when an attempt is made to set the priority of a thread or process to an illegal value. The permitted priority values for a user process are a subset of the values defined by the TProcessPriority enum. The permitted values are: The permitted priority values for a user thread are a subset of the values defined by the TThreadPriority enum. The permitted values are: |
|
This panic is raised when a timer event is requested from
an asynchronous timer service, an |
|
This panic is not used. |
|
The panic is raised if kernel heap checking has failed. |
|
This panic is not used. |
|
This panic is raised by the Kernel when a server program
makes a request to receive a message, i.e. when it calls the [[[ERROR: [NOKX000E] Unable to find definition for key reference 'RServer2']]] |
|
This panic is raised by the Kernel when a request for an
event, as originated by a call to UserSvr::RequestEvent(), defined in the |
|
This panic is not used. |
|
This panic is not used. |
|
This panic is raised in a call to |
|
This panic is raised when writing global DLL data, and the length of data to be written is greater than the space available. |
|
This panic is raised when searching for objects, using the
internal function |
|
This panic is raised by kernel side code that implements heap debugging behavior, when a specific debug request is not recognized. |
|
This panic is raised when an executive call is made with an invalid call number. |
|
This panic is not used. |
|
This panic is not used. |
|
This panic is raised when an attempt is being made to send a synchronous message to a server more than once, using the current thread's dedicated synchronous message. |
|
This panic is not used. |
|
This panic is called by DProcess::Resume() when trying to resume a process that is still being loaded. |
|
This panic is raised in a call to Kern::KUDesInfo(), Kern::KUDesPut(), when an invalid descriptor is passed. |
|
This panic is raised in a call to Kern::KUDesSetLength() and Kern::KUDesPut() when the descriptor passed to it is not a modifiable type; i.e. is derived from TDesC but not derived from TDes. |
|
This panic is raised in a call to Kern::KUDesSetLength() & Kern::KUDesPut() when the length of the source descriptor is longer than the maximum length of the target descriptor. |
|
This panic is raised by the kernel side code that implements the setting of the currency symbol when the length of the currency symbol is greater than KMaxCurrencySymbol. |
|
This panic is raised by kernel code when it tries to acquire the process DLL lock just before a load, and the wait DLL lock is invalid. |
|
This panic is raised by internal kernel code when an illegal attempt is made to attach to a library. |
|
This panic is raised when extracting a list of DLL entry points, and the number exceeds the maximum permitted. |
|
This panic is raised by internal kernel code when an illegal attempt is made to detach a library. |
|
This panic is raised by internal kernel code when an illegal attempt is made to attach to a library. |
|
This panic is raised by internal kernel code when an illegal attempt is made to detach a library. |
|
This panic is raised by kernel code when it tries to release the process DLL lock when a load fails, and the release DLL lock is invalid. |
|
This panic is raised when a bad message handle is passed
to the kernel. This usually occurs when using functions called on
the |
|
This panic is not used. |
|
This panic can be raised as a result of a call to one of a large number of functions. In general, the panic indicates an attempt to perform an operation on a thread or process by code running in another process - violating the security principle of process isolation. There are exceptions to this general rule, for example, where the panic is raised because the calling process has insufficient capability. The precise reason is stated with the function(s).
|
|
This panic is raised when the user issues a request to be notified of messages or the availability of space, when a request has already been issued and is still outstanding. See |
|
This panic is raised when creating a message queue, and the size of the template parameter is invalid. See |
|
This panic is raised when creating a message queue, and the specified number of slots is not positive. See |
|
This panic is raised if an attempt is made to cancel an outstanding request to be notified of messages or the availability of space, and the cancel is being made by a thread in a different process to the one from which the request was originally made. See |
|
This panic is raised by |
|
This panic is raised by |
|
This panic is raised by |
|
This panic is raised by |
|
This panic is raised when a call is made to |
|
This panic is raised on a process which has not yet been resumed, and whose creator has died. |
|
This panic is raised when a session receives a message to connect to a server when the session is already connected to that server. |
|
This panic is raised during an attempt to connect to a server.
As part of this process, a pointer to an instance of the The panic is caused when the pointer to the session object is NULL. |
|
This panic is raised during an attempt to connect to a server.
As part of this process, a pointer to an instance of the This panic is caused when a pointer to the session has previously been set. |
|
This panic is raised during an attempt to connect to a server.
As part of this process, a pointer to an instance of the This panic is caused when a pointer to a session is being set, and the message is not the connect message. |
|
This panic is caused when a real-time thread attempts to execute a non-realtime function. |
62 |
This panic is raised by Kern::SetThreadRealtimeState when the state argument is invalid. |
63 |
A bad descriptor was passed to a server over IPC, causing an exception when the kernel tried to update its length field. |
64 |
An invalid notification type was passed to a shared buffers exec call handler. |
65 |
An invalid parameter was passed to a shared buffers exec call handler. |
66 |
An entropy estimate passed to an entropy buffer was outside the allowed range. |