summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorseawood%netscape.com <devnull@localhost>2002-01-01 00:43:19 +0000
committerseawood%netscape.com <devnull@localhost>2002-01-01 00:43:19 +0000
commit5e8ec54e73bf186b2cfaba8e9ba81c77b40d40d7 (patch)
tree753bb49da95b067164094584edaf5dfd3523fee0
parent00ac62df2e505b45b78e9628b2436f08a1dae5e0 (diff)
downloadnspr-hg-5e8ec54e73bf186b2cfaba8e9ba81c77b40d40d7.tar.gz
Recent versions of freebsd have a threadsafe poll.
Use sched_get_priority_* to get actual priority min & max rather than hardcoding defaults. Patches from freebsd ports system. Bug #112987 r=rjesup@wgate.com
-rw-r--r--pr/include/md/_freebsd.h3
-rw-r--r--pr/include/md/_pth.h4
2 files changed, 4 insertions, 3 deletions
diff --git a/pr/include/md/_freebsd.h b/pr/include/md/_freebsd.h
index 0671b60f..de4cf99e 100644
--- a/pr/include/md/_freebsd.h
+++ b/pr/include/md/_freebsd.h
@@ -37,6 +37,7 @@
#include "prthread.h"
+#include <sys/param.h>
#include <sys/syscall.h>
#define PR_LINKER_ARCH "freebsd"
@@ -65,7 +66,7 @@
#define _PR_HAVE_SOCKADDR_LEN
#define _PR_STAT_HAS_ST_ATIMESPEC
#define _PR_NO_LARGE_FILES
-#if ( __FreeBSD__ > 2 )
+#if ( __FreeBSD_version >= 220000 ) && ( __FreeBSD_version < 400008 )
#if !defined(_PR_PTHREADS)
/*
* libc_r doesn't have poll(). Although libc has poll(), it is not
diff --git a/pr/include/md/_pth.h b/pr/include/md/_pth.h
index faa50377..8a3ef295 100644
--- a/pr/include/md/_pth.h
+++ b/pr/include/md/_pth.h
@@ -225,7 +225,7 @@
#define PT_PRIO_MAX sched_get_priority_max(SCHED_OTHER)
#endif /* defined(_PR_DCETHREADS) */
-#elif defined(LINUX)
+#elif defined(LINUX) || defined(FREEBSD)
#define PT_PRIO_MIN sched_get_priority_min(SCHED_OTHER)
#define PT_PRIO_MAX sched_get_priority_max(SCHED_OTHER)
#elif defined(NTO)
@@ -245,7 +245,7 @@
*/
#define PT_PRIO_MIN 1
#define PT_PRIO_MAX 127
-#elif defined(FREEBSD) || defined(NETBSD) || defined(OPENBSD) \
+#elif defined(NETBSD) || defined(OPENBSD) \
|| defined(BSDI) || defined(DARWIN) || defined(UNIXWARE) /* XXX */
#define PT_PRIO_MIN 0
#define PT_PRIO_MAX 126