Enable USE_PTHREAD_FOR_ITIMER also on FreeBSD
authorViktor Dukhovni <ietf-dane@dukhovni.org>
Mon, 11 Nov 2019 04:43:55 +0000 (23:43 -0500)
committerMarge Bot <ben+marge-bot@smart-cactus.org>
Tue, 19 Nov 2019 16:54:45 +0000 (11:54 -0500)
If using a pthread instead of a timer signal is more reliable, and
has no known drawbacks, then FreeBSD is also capable of supporting
this mode of operation (tested on FreeBSD 12 with GHC 8.8.1, but
no reason why it would not also work on FreeBSD 11 or GHC 8.6).

Proposed by Kevin Zhang in:

    https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=241849

rts/posix/Itimer.c

index 59d34be..e889cdf 100644 (file)
@@ -48,6 +48,9 @@
 #define USE_PTHREAD_FOR_ITIMER
 #endif
 
+#if defined(freebsd_HOST_OS) && defined(THREADED_RTS)
+#define USE_PTHREAD_FOR_ITIMER
+#endif
 
 #if defined(solaris2_HOST_OS)
 /* USE_TIMER_CREATE is usually disabled for Solaris. In fact it is