From d964459a649ff8c8d73388bc810a2ea629abe5c9 Mon Sep 17 00:00:00 2001 From: Pierre Ossman Date: Tue, 22 Aug 2006 07:41:23 +0000 Subject: Fix detection of page size for non-POSIX systems. git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1312 fefdeb5f-60dc-0310-8127-8f9354f1896f --- configure.ac | 3 ++- src/pulsecore/memblock.c | 8 +++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index b6b5f495..4aba536d 100644 --- a/configure.ac +++ b/configure.ac @@ -221,7 +221,8 @@ AC_FUNC_FORK AC_FUNC_GETGROUPS AC_FUNC_SELECT_ARGTYPES AC_CHECK_FUNCS([chmod chown getaddrinfo getgrgid_r getpwuid_r gettimeofday \ - getuid inet_ntop inet_pton nanosleep pipe setpgid setsid sigaction sleep]) + getuid inet_ntop inet_pton nanosleep pipe setpgid setsid sigaction sleep \ + sysconf]) AC_CHECK_FUNCS([mkfifo], [HAVE_MKFIFO=1], [HAVE_MKFIFO=0]) AM_CONDITIONAL(HAVE_MKFIFO, test "x$HAVE_MKFIFO" = "x1") diff --git a/src/pulsecore/memblock.c b/src/pulsecore/memblock.c index c34ddee5..9e5c5b81 100644 --- a/src/pulsecore/memblock.c +++ b/src/pulsecore/memblock.c @@ -443,8 +443,14 @@ pa_mempool* pa_mempool_new(int shared) { p = pa_xnew(pa_mempool, 1); +#ifdef HAVE_SYSCONF ps = (size_t) sysconf(_SC_PAGESIZE); - +#elif defined(PAGE_SIZE) + ps = (size_t) PAGE_SIZE; +#else + ps = 4096; /* Let's hope it's like x86. */ +#endif + p->block_size = (PA_MEMPOOL_SLOT_SIZE/ps)*ps; if (p->block_size < ps) -- cgit