commit: convert commit->buffer to a slab
commitc1b3c71f4b4571abb2b2a457122fd100dc9f7eb0
authorJeff King <peff@peff.net>
Tue, 10 Jun 2014 21:43:02 +0000 (10 17:43 -0400)
committerJunio C Hamano <gitster@pobox.com>
Fri, 13 Jun 2014 19:08:17 +0000 (13 12:08 -0700)
treec6d4ff6717e8f95c83147f4d97c5a90ca6d3029b
parent80cdaba569600154d91819d2e252f6b7dd9cff73
commit: convert commit->buffer to a slab

This will make it easier to manage the buffer cache
independently of the "struct commit" objects. It also
shrinks "struct commit" by one pointer, which may be
helpful.

Unfortunately it does not reduce the max memory size of
something like "rev-list", because rev-list uses
get_cached_commit_buffer() to decide not to show each
commit's output (and due to the design of slab_at, accessing
the slab requires us to extend it, allocating exactly the
same number of buffer pointers we dropped from the commit
structs).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
commit.c
commit.h