Subject: Re: [PATCH 3/5] autoconf: Preliminary check for working mmap

From: Shawn Pearce <[email-masked]>
Date: Tue, 5 Sep 2006 02:25:31 -0400

Junio C Hamano <[email-masked]> wrote:
> Shawn Pearce <[email-masked]> writes:
> 
> > 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.
> 
> Thanks -- I was tempted to do this myself after finishing the
> index_64 change in "pu" branch, but have resisted the temptation
> myself so far.  Being lazy, the less I have to code the better,
> naturally ;-).

I thought that might be the case.  I should be able to finish it
up tomorrow.  :-)

I don't know if I've made this more complex than I really need to
but I've permitted multiple windows per pack.  There is just one
LRU of all windows across all packs and a maximum amount of address
space to use for pack mappings.  Least recently used window gets
tossed when we need a different window.  This permits us to keep
say a window active on the front of a pack (near the commits) and
another different active window closer to the back (near the blobs).

That multiple window feature made it a slightly non-trivial copy
and paste from fast-import but I think its worth it for tree walking
type applications.

-- 
Shawn.