Skip to content
Syscall BSD#529

svc · unix #529

os_fault_with_payload

Signale un os_fault non fatal avec une charge structurée à ReportCrash.

Prototype

int os_fault_with_payload(uint32_t reason_namespace, uint64_t reason_code, void *payload, uint32_t payload_size, const char *reason_string, uint64_t reason_flags);

Retour: int

Arguments

NameTypeDirDescription
reason_namespaceuint32_t-
reason_codeuint64_t-
payloadvoid-
payload_sizeuint32_t-
reason_stringconst char-
reason_flagsuint64_t-

Historique des versions

XNU tagmacOS#
xnu-4570.1.46macOS 10.13 High Sierra529
xnu-4903.221.2macOS 10.14 Mojave529
xnu-6153.11.26macOS 10.15 Catalina529
xnu-7195.50.7.100.1macOS 11.0 Big Sur529
xnu-8019.41.5macOS 12.0 Monterey529
xnu-8792.41.9macOS 13.0 Ventura529
xnu-10002.1.13macOS 14.0 Sonoma529
xnu-11215.1.10macOS 15.0 Sequoia529
xnu-11417.101.15macOS 15.4 Sequoia529
xnu-12377.1.9macOS 26.0 Tahoe529
xnu-10002.41.9529
xnu-10002.61.3529
xnu-10002.81.5529
xnu-10063.101.15529
xnu-10063.121.3529
xnu-10063.141.1529
xnu-11215.41.3529
xnu-11215.61.5529
xnu-11215.81.4529
xnu-11417.121.6529
xnu-11417.140.69529
xnu-12377.101.15529
xnu-12377.41.6529
xnu-12377.61.12529
xnu-12377.81.4529
xnu-4570.20.62529
xnu-4570.31.3529
xnu-4570.41.2529
xnu-4570.51.1529
xnu-4570.61.1529
xnu-4570.71.2529
xnu-4903.231.4529
xnu-4903.241.1529
xnu-4903.270.47529
xnu-6153.101.6529
xnu-6153.121.1529
xnu-6153.141.1529
xnu-6153.41.3529
xnu-6153.61.1529
xnu-6153.81.5529
xnu-7195.101.1529
xnu-7195.121.3529
xnu-7195.141.2529
xnu-7195.60.75529
xnu-7195.81.3529
xnu-8019.61.5529
xnu-8019.80.24529
xnu-8020.101.4529
xnu-8020.121.3529
xnu-8020.140.41529
xnu-8792.61.2529
xnu-8792.81.2529
xnu-8796.101.5529
xnu-8796.121.2529
xnu-8796.141.3529

Notes

Syscall sous-jacent à os_fault_with_payload(3) et aux APIs os_log fault. Le noyau transmet la charge, le descripteur de position source et la chaîne de raison à ReportCrash via exception Mach, produisant un rapport .ips sans terminer le processus. Largement utilisé dans les frameworks système pour signaler des assertions à investiguer mais non fatales.

Détection

Les .ips résultants sont routinièrement envoyés à Apple via crash-reporting ; sur un endpoint d'entreprise, surveiller DiagnosticReports pour des émetteurs non-Apple émettant des vagues d'os_faults est un signal d'anomalie utile.

API associées

os_log_faultabort_with_payloadproc_trace_logsys_panic_with_data