[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NEW: cyrus-imapd-2.1.12



I found another issue which causes for a bit more concern:

configure: warning: *** This system does not have a working mmap()
configure: warning: *** Expect a considerable performance penalty

Does OpenBSD really not have a working mmap()? :) As I understand this happens because the corresponding conftest.c does not include unistd.h and failes with an "implicit declaration of write()" and so on..

Based on what I have read on their discussion lists, the wording on this warning is not very accurate. They are assuming that mmap and read/write can access a file at the same time, and changes from one will instantly show up in the other. On a system with a unified memory model, this is true (Linux, FreeBSD, etc). On OpenBSD, you have to explicitly call msync for the methods to see the same data. The performance penalty they are talking about is their workaround for this. I could be wrong on this, but that is what I have gathered from their lists.