dmp_eaddr, dmp_context, dmp_tid, dmp_pid, dmp_errbuf, dmp_mtrc, dmp_systrace und dmp_ct Kernel Services
Zweck
Stellt Funktionen für allgemeine Speicherauszugstasks bereit
Syntax
#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;
Parameter
| Element | Beschreibung |
|---|---|
| Anker | Verweist auf die zugeordnete ldmp_parms_t -Datenstruktur oder auf eine ldmp_prepare_t -Datenstruktur |
| Flags | Der Parameter Flags kann einen oder mehrere der folgenden Werte haben:
|
| Name | Gibt den Namen der Speicherauszugstabelle der Pseudokomponente im Speicherauszug an. Der Parameter Name ist nur für den DMP_E-Adresse -Kernel-Service gültig. Sie müssen den Parameter Name für die Kernel-Services dmp_kontext, DMP_TID, dmp_pid, dmp_errbuf, dmp_mtrc, DMP_Systraceund DMP_CT auf NULL setzen. |
| Nicht verwendet | Sie müssen diesen Parameter mit NULL oder 0 angeben. |
| Die übrigen Parameter sind pseudokomponentenabhängig: DMP_E-AdresseAdresse | Gibt die effektive Adresse des Speichers an, für den ein Speicherauszug erstellt werden soll |
| sz | Gibt die Länge des Speichers in Byte an |
| dmp_kontextctx_typ | Gibt den Kontext für den Speicherauszug an. Es kann einer der folgenden Werte sein:
|
| p2 | Gibt die Adresse des Kontexts, die ID des logischen Prozessors, die Bindungs-ID oder die Thread-ID abhängig vom Wert des Parameters ctx_typ an. |
| DMP_TIDTid | Gibt die ID des Threads an, für den ein Speicherauszug erstellt werden soll |
| dmp_pidPid | Gibt die ID des Prozesses an, für den ein Speicherauszug erstellt werden soll |
| dmp_errbufErridx | Gibt die Kernel- Workload-Partition (WPAR) -ID des Fehlerprotokollierungspuffers der Partition an, für den ein Speicherauszug erstellt werden soll. Der Wert 0 steht für den globalen Puffer. |
| dmp_mtrcKom_sz | Gibt die Menge an gemeinsamen Speicherauszügen an. |
| Rare_sz | Gibt die Menge der seltenen Daten an, für die ein Speicherauszug erstellt wird |
| DMP_SystraceSZ | Gibt die Menge der Systemtracedaten für den dump.If der Parameter sz auf 0 gesetzt ist, wird ein Speicherauszug aller gepufferten Tracedaten bis zu der Menge erstellt, die für die Detailstufe zulässig ist. |
| DMP_CTRasb | Gibt den ras_block_t-Wert der Komponente an, für deren Komponententrace ein Speicherauszug erstellt werden soll. |
| sz | Gibt das Datenvolumen an, für das ein Speicherauszug erstellt werden soll Wenn der Parameter SZ auf 0 gesetzt ist, wird ein Speicherauszug aller Tracedaten der Komponenten bis zum Grenzwert für die Detailstufe erstellt. |
Beschreibung
Der DMP_E-Adresse -Kernel-Service erstellt Speicherauszüge nach effektiver Adresse.
Der dmp_kontext -Kernel-Service erstellt einen Speicherauszug des angegebenen Threadkontextes.
Der DMP_TID -Kernel-Service erstellt einen Speicherauszug der Kerneldaten für einen Thread.
Der dmp_pid -Kernel-Service erstellt einen Speicherauszug der Kerneldaten für einen Prozess.
Der dmp_errbuf -Kernel-Service erstellt einen Speicherauszug des Fehlerprotokollierungspuffers für die angegebene Partition.
Der dmp_mtrc -Kernel-Service gibt Einträge aus den schlanken Speichertracepuffern aus.
Die DMP_Systrace erstellt einen Speicherauszug der Einträge aus den Systemtracepuffern.
Die DMP_CT erstellt einen Speicherauszug der Komponententraceeinträge.
Ausführungsumgebung
Die Kernel-Services DMP_E-Adresse, dmp_kontext, DMP_TID, dmp_pid, dmp_errbuf, dmp_mtrc, DMP_Systraceund DMP_CT können über die Prozess -oder Unterbrechung -Umgebung aufgerufen werden.
Rückgabewerte
| Element | Beschreibung |
|---|---|
| 0 | Erfolgreiche Ausführung. |
| EINVAL_DMP_PSEUDO | Gibt an, dass der Namensparameter ungültig ist. |
| EINVAL_DMP_CHECK_ANCHOR | Gibt an, dass kein Anker angegeben wurde oder der Ankerparameter nicht auf einen Bereich des Typs ldmp_parms_t oder ldmp_prepare_t verweist. |
| EFAULT_DMP_CHECK_ANCHOR | Gibt an, dass der durch den Parameter Anker angegebene Speicher ungültig ist. |
| EINVAL_RAS_DMP_COMPSPEC_FLAGS | Gibt an, dass die Flagspezifikation ungültig ist. Dieser Fehler tritt auch auf, wenn das Flag DCF-ZUERST angegeben wird, wenn der Anker ein ldmp_prepare_t -Datenelement ist. |
| EINVAL_RAS_DMP_COMPSPEC_NOADD | Gibt an, dass diesem Speicherauszug keine Komponenten hinzugefügt werden können |
| ENOMEM_RAS_DMP_COMPSPEC | Gibt an, dass der Speicher nicht ausreicht. |
| EINVAL_RAS_DMP_EADDR | Gibt an, dass der Parameter flags ungültig ist. |
| EINVAL_RAS_DMP_KONTEXT | Gibt an, dass der Parameter des dmp_kontext -Kernel-Service ungültig ist. Dies wird auch zurückgegeben, wenn der Parameter p2 nicht verwendet wird, aber nicht NULL ist. |
| ENOENT_RAS_DMP_CONTEXT_CTX_NOTFOUND | Zeigt an, dass der angegebene Kontext nicht gefunden wurde. |
| EFAULT_RAS_DMP_KONTEXT | Gibt an, dass der Speicher, auf den der angegebene Kontextzeiger verweist, ungültig ist. |
| EINVAL_RAS_DMP_TID | Gibt an, dass der Parameter des DMP_TID -Kernel-Service ungültig ist. |
| EINVAL_RAS_DMP_PID | Gibt an, dass der Parameter des dmp_pid -Kernel-Service ungültig ist. |
| EINVAL_RAS_DMP_ERRBUF | Gibt an, dass der Parameter des dmp_errbuf -Kernel-Service ungültig ist. |
| ECHRNG_RAS_DMP_ERRBUF | Gibt an, dass der Parameter Erridx außerhalb des gültigen Bereichs liegt. |
| EINVAL_RAS_DMP_MTRC | Gibt an, dass der Parameter des dmp_mtrc -Kernel-Service ungültig ist. |
| ENOENT_RAS_DMP_MTRC | Gibt an, dass der schlanke Hauptspeichertrace nicht aktiv ist. |
| EINVAL_RAS_DMP_SYSTRACE | Gibt an, dass der Parameter des DMP_Systrace -Kernel-Service ungültig ist. |
| ENOENT_RAS_DMP_SYSTRACE | Gibt an, dass der Systemtrace nicht aktiv ist. |
| EINVAL_RAS_DMP_CT | Gibt an, dass der Parameter des DMP_CT -Kernel-Service ungültig ist. |
| ENOMEM_RAS_DMP_CT | Gibt an, dass der Speicher nicht ausreicht. |
| EINVAL_RAS_DMP_CT_GETPATH | Gibt an, dass die angegebene Komponente ungültig ist. |
| EINVAL_RAS_DMP_CT_LOOKUP | Zeigt an, dass ein Fehler aufgetreten ist, während diese Komponente validiert wurde |
| ENOTSUP_RAS_DMP_CT | Gibt an, dass die angegebene Komponente keinen Komponententrace hat. |
Zugehörige Informationen
Den Livespeicherauszug -Kernel-Service und den dmp_kernext -Kernel-Service