Re: [PATCH 3/5] autoconf: Preliminary check for working mmap
- From
Shawn Pearce <spearce@spearce.org>
- Date
- Sep 5, 2006, 06:25 UTC
- Message-ID
- <20060905062531.GA30496@spearce.org>
- In-Reply-To
- <7vu03mkiei.fsf@assigned-by-dhcp.cox.net>
Junio C Hamano <junkio@cox.net> wrote:
Show 12 quoted lines
> Shawn Pearce <spearce@spearce.org> 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.