You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Recommend instead of looking up image information at crash time, to build and maintain a data structure of loaded images ahead of time using _dyld_register_func_for_add_image and _dyld_register_func_for_remove_image.
The text was updated successfully, but these errors were encountered:
Hey!
Have you already implemented this fix in your fork of KSCrash? If so, could you share the changes or possibly submit a pull request to the main repo? It'd be great to see how you've tackled this issue and it could help others facing similar problems!
We use a fork of KSCrash and received a customer report of watchdog timeouts while handling a signal.
_dyld_get_image_header
is called from withinonCrash
and takes an os_unfair_lock, which is not reentrant and thus contravenes the guidelines stated in https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man2/sigaction.2.html that syscalls made from signal handlers must be reentrant. It seems that_dyld_get_image_header
is hanging or deadlocked while waiting for the lock to be relinquished and the system is killing the process due to the watchdog timeout.Recommend instead of looking up image information at crash time, to build and maintain a data structure of loaded images ahead of time using
_dyld_register_func_for_add_image
and_dyld_register_func_for_remove_image
.The text was updated successfully, but these errors were encountered: