From: Shawn Pearce Date: Tue, 05 Sep 2006 03:09:29 GMT Subject: Re: [PATCH 3/5] autoconf: Preliminary check for working mmap Message-ID: <20060905030929.GA29865@spearce.org> In-Reply-To: Jakub Narebski wrote: > Junio C Hamano wrote: > > > Jakub Narebski writes: > > > >> This patch sent earlier in other patch series and dropped, > >> as git uses private mapping, not private fixed. I think > >> that this check is better than no check at all... > > > > I think the next major change that is needed fairly soon is to > > be able to mmap parts of a large pack file (even with 32-bit > > offset). I haven't loooked into it deeply enough but it may or > > may not turn out to be beneficial if we map at fixed location so > > the requirements of "working mmap()" might change. I'd be > > happier if you held onto this part of the patch before that > > happens. > > Well, this patch perhaps not always would set NO_MMAP when it should > (some broken mmap that does private+fixed but not private), but I guess that > if it would set NO_MMAP then mmap is broken (or doesn't exist at all). > > I have noticed AC_FUNC_MMAP test, and thought why not to use it? > The simplest check if mmap exist would be to check libc for mmap function. Are there really mmap implementations that will only do private+fixed? Sick. I'm maybe only 1/3 of the way through the sliding window mmap implementation. I've got a good chunk of sha1_file.c converted but I still have to deal with the copying in pack-objects.c and the verify code in verify-pack.c. I'm hoping I can send a preliminary patch series tomorrow as I'm going to work on it more tonight and tomorrow. -- Shawn.