(Fixed Nico's address) Jeff King <peff@xxxxxxxx> wrote: > On Thu, Aug 04, 2016 at 11:34:35PM +0000, Eric Wong wrote: > > Junio C Hamano <gitster@xxxxxxxxx> wrote: > > > [Graduated to "master"] > > > > > * ew/http-walker (2016-07-18) 4 commits > > > (merged to 'next' on 2016-07-18 at a430a97) > > > + list: avoid incompatibility with *BSD sys/queue.h > > > (merged to 'next' on 2016-07-13 at 8585c03) > > > + http-walker: reduce O(n) ops with doubly-linked list > > > > Yay! This finally introduces the Linux kernel linked list > > into git. I'm not sure if it's worth the effort to introduce > > cleanup commits to start using it in places where we already > > have doubly-linked list implementations: > > > > (+Cc Nicolas and Lukas) > > * sha1_file.c delta_base_cache_lru is open codes this > > * builtin/pack-redundant.c could probably be adapted, too > > ... any more? > > I just introduced another doubly-linked list in [1]. It adds some MRU > features on top of the list, but it could in theory be built on top of a > generic doubly-linked list. Yes, and you'd be avoiding the extra mallocs and be able to use list_entry (aka `container_of`) so it could be faster, too. I was thinking packed_git could also be a doubly-linked list anyways since it would allow easier removal of unlinked pack entries. My use case would be long-running "cat-file --batch" processes being able to detect unlinked packs after someone else runs GC. > It's also possible the delta-base-cache stuff could build on top of that > same code, but I didn't look closely at it. > > -Peff > > [1] http://public-inbox.org/git/20160729040659.GC22408@xxxxxxxxxxxxxxxxxxxxx/ -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html