From: David Turner Date: Wed, 20 Apr 2016 19:41:24 GMT Subject: Re: [PATCH v5 02/15] read-cache: allow to keep mmap'd memory after reading Message-ID: <1461181284.5540.169.camel@twopensource.com> In-Reply-To: On Wed, 2016-04-20 at 11:01 +0200, Johannes Schindelin wrote: > Hi Dave, > > On Tue, 19 Apr 2016, David Turner wrote: > > > unmap: > > + istate->mmap = NULL; > > munmap(mmap, mmap_size); > > die("index file corrupt"); > > } > > [...] > > @@ -1698,6 +1705,10 @@ int discard_index(struct index_state > > *istate) > > free(istate->cache); > > istate->cache = NULL; > > istate->cache_alloc = 0; > > + if (istate->keep_mmap && istate->mmap) { > > + munmap(istate->mmap, istate->mmap_size); > > + istate->mmap = NULL; > > + } > > discard_split_index(istate); > > Just curious: any reason why the first hunk munmap()s after resetting > the > field to NULL and the second hunk does it in the opposite order? No idea. Will change the first hunk.