dmp_eaddr, dmp_context, dmp_tid, dmp_pid, dmp_errbuf, dmp_mtrc, dmp_systrace y dmp_ct Kernel Services
Finalidad
Proporciona funciones para tareas de volcado comunes.
Sintaxis
#include <sys/dump.h>
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;
Parámetros
| Elemento | Descripción |
|---|---|
| ancla | Apunta a la estructura de datos ldmp_parms_t asociada o a una estructura de datos ldmp_prepare_t . |
| distintivos | El parámetro Banderas puede ser uno o más de los siguientes valores:
|
| Nombre | Especifica el nombre de la tabla de volcado del pseudo componente en el vuelco. El parámetro Nombre sólo es válido para el servicio de kernel de dmp_eaddr . Debe especificar el parámetro Nombre en NULL para los servicios de kernel de dmp_context, dmp_tid, dmp_pid, dmp_errbuf, dmp_mtrc, dmp_systracey dmp_ct . |
| unused | Debe especificar este parámetro en NULL o 0. |
| Los parámetros restantes dependen de un pseudo componente: dmp_eaddradr | Especifica la dirección efectiva de la memoria que se va a volcar. |
| SZ | Especifica la longitud de la memoria en bytes. |
| dmp_contextctx_type | Especifica el contexto que se debe volcar. Puede ser uno de los siguientes valores:
|
| p2 | Especifica la dirección del contexto, el ID de procesador lógico, el ID de enlace o el ID de hebra dependiente del valor del parámetro ctx_type . |
| dmp_tidtid | Especifica el ID de la hebra que se debe volcar. |
| dmp_pidPid | Especifica el ID del proceso que se debe volcar. |
| dmp_errbuferidx | Especifica el ID de kernel partición de carga (WPAR) del almacenamiento intermedio de registro de errores de la partición que se debe volcar. El valor de 0 representa el almacenamiento intermedio global. |
| dmp_mtrccom_sz | Especifica la cantidad de común que se debe volcar. |
| rre_sz | Especifica la cantidad de datos raros que se deben volcar. |
| dmp_systracesz | Especifica la cantidad de datos de rastreo del sistema para el volcado dump.If el parámetro sz se establece en 0, se vuelcan todos los datos de rastreo almacenados en almacenamiento intermedio, hasta la cantidad permitida por el nivel de detalle. |
| dmp_ctrasb | Especifica ras_block_t del componente cuyo rastreo de componente se va a volcar. |
| SZ | Especifica la cantidad de datos que se deben volcar. Si el parámetro sz se establece en 0, se vuelcan todos los datos de rastreo de los componentes, hasta el límite del nivel de detalle. |
Descripción
El servicio de kernel de dmp_eaddr vuelca la memoria por dirección efectiva.
El servicio de kernel de dmp_context vuelca el contexto de hebra especificado.
El servicio de kernel de dmp_tid vuelca los datos del kernel para una hebra.
El servicio de kernel de dmp_pid vuelca los datos del kernel para un proceso.
El servicio de kernel de dmp_errbuf vuelca el almacenamiento intermedio de registro de errores para la partición especificada.
El servicio de kernel de dmp_mtrc vuelca las entradas de los almacenamientos intermedios de rastreo de memoria ligera.
El dmp_systrace vuelca las entradas de los almacenamientos intermedios de rastreo del sistema.
El dmp_ct vuelca las entradas de rastreo de componentes.
Entorno de ejecución
Los servicios dmp_eaddr, dmp_context, dmp_tid, dmp_pid, dmp_errbuf, dmp_mtrc, dmp_systracey dmp_ct se pueden llamar desde el entorno proceso o interrupción .
Valores de retorno
| Elemento | Descripción |
|---|---|
| 0 | Indica una finalización satisfactoria. |
| EINVAL_DMP_SEUDO | Indica que el parámetro de nombre no es válido. |
| EINVAL_DMP_CHECK_ANCHOR | Indica que no se ha especificado ningún ancla, o que el parámetro ancla no apunta a un área de tipo ldmp_parms_t o ldmp_prepare_t . |
| EFAULT_DMP_CHECK_ANCHOR | Indica que el almacenamiento especificado por el parámetro ancla no es válido. |
| EINVAL_RAS_DMP_COMPSPEC_FLAGS | Indica que la especificación de distintivos no es válida. Este error también se produce si se especifica el distintivo DCF_PRIMERO cuando el ancla es un elemento de datos ldmp_prepare_t . |
| EINVAL_RAS_DMP_COMPSPEC_NOADD | Indica que los componentes no se pueden añadir a este vuelco. |
| ENOMM_RAS_DMP_COMPSPEC | Indica que el almacenamiento no es suficiente. |
| EINVAL_RAS_DMP_EADDR | Indica que el parámetro flags no es válido. |
| EINVAL_RAS_DMP_CONTEXT | Indica que el parámetro del servicio de kernel de dmp_context no es válido. También se devuelve si el parámetro p2 no se utiliza, pero no es NULL. |
| ENOENT_RAS_DMP_CONTEXT_CTX_NOTFOUND | Indica que no se ha encontrado el contexto especificado. |
| EFAULT_RAS_DMP_CONTEXT | Indica que el almacenamiento al que apunta el puntero de contexto especificado no es válido. |
| EINVAL_RAS_DMP_TID | Indica que el parámetro del servicio de kernel de dmp_tid no es válido. |
| EINVAL_RAS_DMP_PID | Indica que el parámetro del servicio de kernel de dmp_pid no es válido. |
| EINVAL_RAS_DMP_ERRBUF | Indica que el parámetro del servicio de kernel de dmp_errbuf no es válido. |
| ECHRNG_RAS_DMP_ERRBUF | Indica que el parámetro eridx está fuera de rango. |
| EINVAL_RAS_DMP_MTRC | Indica que el parámetro del servicio de kernel de dmp_mtrc no es válido. |
| ENOENT_RAS_DMP_MTRC | Indica que el rastreo de memoria ligero no está activo. |
| EINVAL_RAS_DMP_SYSTRACE | Indica que el parámetro del servicio de kernel de dmp_systrace no es válido. |
| ENOENT_RAS_DMP_SYSTRACE | Indica que el rastreo del sistema no está activo. |
| EINVAL_RAS_DMP_CT | Indica que el parámetro del servicio de kernel de dmp_ct no es válido. |
| ENOMM_RAS_DMP_CT | Indica que el almacenamiento no es suficiente. |
| EINVAL_RAS_DMP_CT_GETPATH | Indica que el componente especificado no es válido. |
| EINVAL_RAS_DMP_CT_LOOKUP | Indica que se ha producido un error mientras se validaba este componente. |
| ENOTSUP_RAS_DMP_CT | Indica que el componente especificado no tiene un rastreo de componente. |
Información relacionada
Servicio de kernel de livedump y servicio de kernel de dmp_kernext .