Project

General

Profile

Bug #8838

breakpad/crashpad signal handler doesn't work in WIOService threads

Added by Roel Standaert 2 months ago. Updated about 1 month ago.

Status:
Resolved
Priority:
Normal
Target version:
Start date:
07/23/2021
Due date:
% Done:

100%

Estimated time:

Description

We encountered this issue when using Sentry: https://github.com/getsentry/sentry-native/issues/432

WIOService's worker threads block all signals. As far as I understand this is to make sure that signals are handled in the main thread, since we can't be sure which thread will handle the signal. There are some exceptional signals that are always sent to a specific thread though (called thread-directed signals) (see https://stackoverflow.com/a/6533431):

  • SIGBUS
  • SIGFPE
  • SIGILL
  • SIGSEGV

I think the solution to make crashpad/breakpad and thus Sentry work properly is to unblock those four signals.

#1

Updated by Roel Standaert 2 months ago

  • Status changed from InProgress to Review
  • Assignee deleted (Roel Standaert)
#2

Updated by Roel Standaert 2 months ago

  • Status changed from Review to Implemented @Emweb
#3

Updated by Roel Standaert 2 months ago

  • Assignee set to Roel Standaert
#4

Updated by Roel Standaert about 2 months ago

  • % Done changed from 0 to 100
#5

Updated by Roel Standaert about 1 month ago

  • Status changed from Implemented @Emweb to Resolved

Also available in: Atom PDF