Provides functions for common dump tasks.
#include <sys/dump.h>
kerrno_t dmp_eaddr (flags, anchor, name, addr, sz)
long flags;
void *anchor;
char *name;
long addr;
long sz;
kerrno_t dmp_context (flags, anchor, name, ctx_type, p2)
long flags;
void *anchor;
char *name;
long ctx_type;
long p2;
kerrno_t dmp_tid (flags, anchor, name, tid, unused)
long flags;
void *anchor;
char *name;
tid_t tid;
void *unused;
kerrno_t dmp_pid (flags, anchor, name, pid, unused)
long flags;
void *anchor;
char *name;
pid_t pid;
void *unused;
kerrno_t dmp_errbuf (flags, anchor, name, erridx, unused)
long flags;
void *anchor;
char *name;
ulong erridx;
long unused;
kerrno_t dmp_mtrc (flags, anchor, name, com_sz, rare_sz)
long flags;
void *anchor;
char *name;
size_t com_sz;
size_t rare_sz;
kerrno_t dmp_systrace (flags, anchor, name, sz, unused)
long flags;
void *anchor;
char *name;
long sz;
long unused;
kerrno_t dmp_ct (flags, anchor, name, rasb, sz)
long flags;
void *anchor;
char *name;
ras_block_t rasb;
size_t sz;
Item | Description |
---|---|
anchor | Points to the associated ldmp_parms_t data structure or to an ldmp_prepare_t data structure. |
flags | The flags parameter can be one or more of the following
values:
|
name | Specifies the name of the pseudo-component's dump table in the dump. The name parameter is only valid for the dmp_eaddr kernel service. You must specify the name parameter to NULL for the dmp_context, dmp_tid, dmp_pid, dmp_errbuf, dmp_mtrc, dmp_systrace, and dmp_ct kernel services. |
unused | You must specify this parameter to NULL or 0. |
The remaining parameters are pseudo-component dependent: dmp_eaddraddr | Specifies the effective address of the memory to be dumped. |
sz | Specifies the length of the memory in bytes. |
dmp_contextctx_type | Specifies the context to dump. It can be one
of the following values:
|
p2 | Specifies the address of the context, the logical processor ID, the bind ID, or the thread ID dependent on the value of the ctx_type parameter. |
dmp_tidtid | Specifies the ID of the thread to dump. |
dmp_pidpid | Specifies the ID of the process to dump. |
dmp_errbuferridx | Specifies the kernel workload partition (WPAR) ID of the partition's error logging buffer to dump. The value of 0 stands for the global buffer. |
dmp_mtrccom_sz | Specifies the amount of common to dump. |
rare_sz | Specifies the amount of rare data to dump. |
dmp_systracesz | Specifies the amount of system trace data to dump.If the sz parameter is set to 0, all the buffered trace data is dumped, up to the amount allowed by the detail level. |
dmp_ctrasb | Specifies the ras_block_t of the component whose component trace is to be dumped. |
sz | Specifies the amount of data to dump. If the sz parameter is set to 0, all the components' trace data is dumped, up to the limit for the detail level. |
The dmp_eaddr kernel service dumps memory by effective address.
The dmp_context kernel service dumps the specified thread context.
The dmp_tid kernel service dumps the kernel data for a thread.
The dmp_pid kernel service dumps the kernel data for a process.
The dmp_errbuf kernel service dumps the error logging buffer for the specified partition.
The dmp_mtrc kernel service dumps entries from the lightweight memory trace buffers.
The dmp_systrace dumps entries from the system trace buffers.
The dmp_ct dumps component trace entries.
The dmp_eaddr, dmp_context, dmp_tid, dmp_pid, dmp_errbuf, dmp_mtrc, dmp_systrace, and dmp_ct kernel services can be called from either the process or interrupt environment.
Item | Description |
---|---|
0 | Indicates a successful completion. |
EINVAL_DMP_PSEUDO | Indicates that the name parameter is not valid. |
EINVAL_DMP_CHECK_ANCHOR | Indicates that no anchor was specified, or the anchor parameter does not point to an area of ldmp_parms_t or ldmp_prepare_t type. |
EFAULT_DMP_CHECK_ANCHOR | Indicates that the storage specified by the anchor parameter is not valid. |
EINVAL_RAS_DMP_COMPSPEC_FLAGS | Indicates that the flags specification is not valid. This error also occurs if the DCF_FIRST flag is specified when the anchor is an ldmp_prepare_t data item. |
EINVAL_RAS_DMP_COMPSPEC_NOADD | Indicates that components cannot be added to this dump. |
ENOMEM_RAS_DMP_COMPSPEC | Indicates that the storage is not sufficient. |
EINVAL_RAS_DMP_EADDR | Indicates that the flags parameter is not valid. |
EINVAL_RAS_DMP_CONTEXT | Indicates that the parameter of the dmp_context kernel service is not valid. This is also returned if the p2 parameter is not used, but is not NULL. |
ENOENT_RAS_DMP_CONTEXT_CTX_NOTFOUND | Indicates that the specified context was not found. |
EFAULT_RAS_DMP_CONTEXT | Indicates that the storage the specified context pointer points to is not valid. |
EINVAL_RAS_DMP_TID | Indicates that the parameter of the dmp_tid kernel service is not valid. |
EINVAL_RAS_DMP_PID | Indicates that the parameter of the dmp_pid kernel service is not valid. |
EINVAL_RAS_DMP_ERRBUF | Indicates that the parameter of the dmp_errbuf kernel service is not valid. |
ECHRNG_RAS_DMP_ERRBUF | Indicates that the erridx parameter is out of range. |
EINVAL_RAS_DMP_MTRC | Indicates that the parameter of the dmp_mtrc kernel service is not valid. |
ENOENT_RAS_DMP_MTRC | Indicates that the lightweight memory trace is not active. |
EINVAL_RAS_DMP_SYSTRACE | Indicates that the parameter of the dmp_systrace kernel service is not valid. |
ENOENT_RAS_DMP_SYSTRACE | Indicates that the system trace is not active. |
EINVAL_RAS_DMP_CT | Indicates that the parameter of the dmp_ct kernel service is not valid. |
ENOMEM_RAS_DMP_CT | Indicates that the storage is not sufficient. |
EINVAL_RAS_DMP_CT_GETPATH | Indicates that the specified component is not valid. |
EINVAL_RAS_DMP_CT_LOOKUP | Indicates that an error occurred while this component was being validated. |
ENOTSUP_RAS_DMP_CT | Indicates that the specified component does not have a component trace. |
The livedump kernel service and dmp_kernext kernel service.