Dear list,

On Tue, 2011-08-02 at 13:03 +0100, Clemens Vonrhein wrote:
> Dear Miguel,
> 
> yes, I hit the same issue - and for me the machine then completely
> freezes and needs a reboot.

I wrote this mmap test (back when VMS was still supported by CCP4, and
porting CCP4 to Mac's was just an idea that got a laugh at the bar :-)).

> The patch for configure:
> 
> --- configure.orig      2011-05-05 16:07:55.000000000 +0100
> +++ configure   2011-07-21 16:05:57.000000000 +0100
> @@ -3206,6 +3206,9 @@
>    if test "$system" = sunos64; then
>      xopts="$xopts --enable-64-bit=yes"
>    fi
> +  case `uname` in
> +    Darwin*) xopts="$xopts --disable-mmap";;
> +  esac

Doing this may result in excess memory consumption, so I can't recommend
it as a good workaround, and it seems to me that this test needs looking
at again. The source is in ccp4-6.2.0/lib/ccif/aclocal.m4, where I made
the following comment:

> /* Adapted from autoconf's standard HAVE_MMAP test in acspecific.m4 */

IIRC, the adaptation that I did was to check that the system's mmap(2)
function does not require the first argument to specify a starting
address for the mapping. These days, modern OS's all have an mmap
implementation that behaves in the required way, so the test as I
adapted it is arguably not needed any longer. OTOH, if there is an issue
with mmap over nfs on certain systems, some sort of test is still
needed, although a lot of mainstream applications use mmap all the time
(such as Emacs, Apache http server, etc. etc.). To my astonishment
though, there doesn't seem to be a standard autoconf test for mmap as it
is used in contemporary development, and the original of the test that I
adapted still checks for the old behaviour:

> -- Macro: AC_FUNC_MMAP
>      If the `mmap' function exists and works correctly, define
>      `HAVE_MMAP'.  This checks only private fixed mapping of
>      already-mapped memory.

(Checked on autoconf version 2.68)

On a quick test, I don't actually crash our OS X build system, but the
mmap test does fail. I don't have a lot of time to spend on this now,
but if anyone from CCP4 is interested in looking into this, please
contact me off-list.

Regards,
Peter.

-- 
Peter Keller                                     Tel.: +44 (0)1223 353033
Global Phasing Ltd.,                             Fax.: +44 (0)1223 366889
Sheraton House,
Castle Park,
Cambridge CB3 0AX
United Kingdom

Reply via email to