strbuf: reduce default buffer size
authorLucas De Marchi <lucas.demarchi@intel.com>
Fri, 17 Oct 2014 00:02:13 +0000 (21:02 -0300)
committerLucas De Marchi <lucas.demarchi@intel.com>
Fri, 17 Oct 2014 00:02:13 +0000 (21:02 -0300)
commit405b8927fe36df633f70cbed74f1aab1fea0b947
tree93085b8c970f6401d88499b454f39ed32f884d37
parent48e4d181912389c95dd91449dedf5dcb886996a4
strbuf: reduce default buffer size

Using 2048 as buffer sizer for strbuf is a bit exaggerated. strbuf is
used much more when we are not using mmapped indexes, but it's used for
mmapped when for example searching for an alias. A quick and dirty hack
to output the size of our strbufs is to print buf->used inside
strbuf_str(). Doing this and creating some statistics with:

while read xxx alias xxx; do
    tools/modprobe -R "$alias" > /dev/null;
done < /lib/modules/$(uname -r)/modules.alias 2>&1 | \
     Rscript -e 'summary (as.numeric (readLines ("stdin")))'

   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's
   1.00   29.00   31.00   31.55   38.00   92.00      26

So, reduce the step to 128, which is still greater than the maximum in
these cases. In the worst case this can only create a few calls to
realloc(), while keeping the memory footprint low for the common cases.
shared/strbuf.c