30 lines
891 B
Diff
30 lines
891 B
Diff
|
--- /dev/null
|
||
|
+++ b/include/signal_compat.h
|
||
|
@@ -0,0 +1,4 @@
|
||
|
+#define SIGEV_SIGNAL 0 /* notify via signal */
|
||
|
+#define SIGEV_NONE 1 /* other notification: meaningless */
|
||
|
+#define SIGEV_THREAD 2 /* deliver via thread creation */
|
||
|
+#define SIGEV_THREAD_ID 4 /* deliver to thread */
|
||
|
--- a/criu/pie/restorer.c
|
||
|
+++ b/criu/pie/restorer.c
|
||
|
@@ -50,6 +50,10 @@
|
||
|
#include "shmem.h"
|
||
|
#include "restorer.h"
|
||
|
|
||
|
+#ifndef __GLIBC__
|
||
|
+#include "signal_compat.h"
|
||
|
+#endif
|
||
|
+
|
||
|
#ifndef PR_SET_PDEATHSIG
|
||
|
#define PR_SET_PDEATHSIG 1
|
||
|
#endif
|
||
|
@@ -1067,7 +1071,7 @@
|
||
|
#ifdef __GLIBC__
|
||
|
sev._sigev_un._tid = args->posix_timers[i].spt.notify_thread_id;
|
||
|
#else
|
||
|
- sev.sigev_notify_thread_id = args->posix_timers[i].spt.notify_thread_id;
|
||
|
+ sev.sigev_notify_function = args->posix_timers[i].spt.notify_thread_id;
|
||
|
#endif
|
||
|
sev.sigev_value.sival_ptr = args->posix_timers[i].spt.sival_ptr;
|
||
|
|