blob: 0bbb10231616b97705e379eb673d1d4c62d0d3ac (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
--- v8/src/trap-handler/handler-inside-posix.cc.orig 2023-12-23 12:33:28 UTC
+++ v8/src/trap-handler/handler-inside-posix.cc
@@ -61,6 +61,8 @@ namespace trap_handler {
#define CONTEXT_REG(reg, REG) &uc->uc_mcontext->__ss.__##reg
#elif V8_OS_FREEBSD
#define CONTEXT_REG(reg, REG) &uc->uc_mcontext.mc_##reg
+#elif V8_OS_OPENBSD
+#define CONTEXT_REG(reg, REG) &uc->sc_##reg
#else
#error "Unsupported platform."
#endif
@@ -78,8 +80,12 @@ bool IsKernelGeneratedSignal(siginfo_t* info) {
// si_code at its default of 0 for signals that don’t originate in hardware.
// The other conditions are only relevant for Linux.
return info->si_code > 0 && info->si_code != SI_USER &&
- info->si_code != SI_QUEUE && info->si_code != SI_TIMER &&
- info->si_code != SI_ASYNCIO && info->si_code != SI_MESGQ;
+ info->si_code != SI_QUEUE && info->si_code != SI_TIMER
+#ifdef V8_OS_OPENBSD
+ ;
+#else
+ && info->si_code != SI_ASYNCIO && info->si_code != SI_MESGQ;
+#endif
}
class UnmaskOobSignalScope {
|