The https://github.com/johntitor/mach2 crate provides FFI bindings for mach stuff that is not exposed by libc, however it is incomplete, particularly for aarch64 and exception ports (eg https://github.com/JohnTitor/mach2/pull/8), so I added FFI bindings for the things needed by the exception-handler, manually. If https://github.com/JohnTitor/mach2/pull/8 ever gets merged + released we can reduce that and completely remove it by adding the missing task* versions of the exceptoin ports, but it's not critical, it's not like this stuff will ever change.
The https://github.com/johntitor/mach2 crate provides FFI bindings for mach stuff that is not exposed by
libc
, however it is incomplete, particularly for aarch64 and exception ports (eg https://github.com/JohnTitor/mach2/pull/8), so I added FFI bindings for the things needed by the exception-handler, manually. If https://github.com/JohnTitor/mach2/pull/8 ever gets merged + released we can reduce that and completely remove it by adding the missing task* versions of the exceptoin ports, but it's not critical, it's not like this stuff will ever change.