Use proper object allocators for unknown object nodes too

We used to use a different allocator scheme for when we didn't know the
object type.  That meant that objects that were created without any
up-front knowledge of the type would not go through the same allocation
paths as normal object allocations, and would miss out on the statistics.

But perhaps more importantly than the statistics (that are useful when
looking at memory usage but not much else), if we want to make the
object hash tables use a denser object pointer representation, we need
to make sure that they all go through the same blocking allocator.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
3 files changed
tree: ee149f21b7fe1a53ced6a4051e10268608d14d54
  1. arm/
  2. compat/
  3. contrib/
  4. Documentation/
  5. git-gui/
  6. gitweb/
  7. mozilla-sha1/
  8. perl/
  9. ppc/
  10. t/
  11. templates/
  12. xdiff/
  13. .gitignore
  14. .mailmap
  15. alloc.c
  16. archive-tar.c
  17. archive-zip.c
  18. archive.h
  19. base85.c
  20. blob.c
  21. blob.h
  22. builtin-add.c
  23. builtin-annotate.c
  24. builtin-apply.c
  25. builtin-archive.c
  26. builtin-blame.c
  27. builtin-branch.c
  28. builtin-bundle.c
  29. builtin-cat-file.c
  30. builtin-check-ref-format.c
  31. builtin-checkout-index.c
  32. builtin-commit-tree.c
  33. builtin-config.c
  34. builtin-count-objects.c
  35. builtin-describe.c
  36. builtin-diff-files.c
  37. builtin-diff-index.c
  38. builtin-diff-tree.c
  39. builtin-diff.c
  40. builtin-fetch--tool.c
  41. builtin-fmt-merge-msg.c
  42. builtin-for-each-ref.c
  43. builtin-fsck.c
  44. builtin-gc.c
  45. builtin-grep.c
  46. builtin-init-db.c
  47. builtin-log.c
  48. builtin-ls-files.c
  49. builtin-ls-tree.c
  50. builtin-mailinfo.c
  51. builtin-mailsplit.c
  52. builtin-merge-base.c
  53. builtin-merge-file.c
  54. builtin-mv.c
  55. builtin-name-rev.c
  56. builtin-pack-objects.c
  57. builtin-pack-refs.c
  58. builtin-prune-packed.c
  59. builtin-prune.c
  60. builtin-push.c
  61. builtin-read-tree.c
  62. builtin-reflog.c
  63. builtin-rerere.c
  64. builtin-rev-list.c
  65. builtin-rev-parse.c
  66. builtin-revert.c
  67. builtin-rm.c
  68. builtin-runstatus.c
  69. builtin-shortlog.c
  70. builtin-show-branch.c
  71. builtin-show-ref.c
  72. builtin-stripspace.c
  73. builtin-symbolic-ref.c
  74. builtin-tar-tree.c
  75. builtin-unpack-objects.c
  76. builtin-update-index.c
  77. builtin-update-ref.c
  78. builtin-upload-archive.c
  79. builtin-verify-pack.c
  80. builtin-write-tree.c
  81. builtin.h
  82. cache-tree.c
  83. cache-tree.h
  84. cache.h
  85. check-builtins.sh
  86. check-racy.c
  87. color.c
  88. color.h
  89. combine-diff.c
  90. commit.c
  91. commit.h
  92. config.c
  93. config.mak.in
  94. configure.ac
  95. connect.c
  96. convert-objects.c
  97. convert.c
  98. copy.c
  99. COPYING
  100. csum-file.c
  101. csum-file.h
  102. ctype.c
  103. daemon.c
  104. date.c
  105. decorate.c
  106. decorate.h
  107. delta.h
  108. diff-delta.c
  109. diff-lib.c
  110. diff.c
  111. diff.h
  112. diffcore-break.c
  113. diffcore-delta.c
  114. diffcore-order.c
  115. diffcore-pickaxe.c
  116. diffcore-rename.c
  117. diffcore.h
  118. dir.c
  119. dir.h
  120. dump-cache-tree.c
  121. entry.c
  122. environment.c
  123. exec_cmd.c
  124. exec_cmd.h
  125. fast-import.c
  126. fetch-pack.c
  127. fetch.c
  128. fetch.h
  129. generate-cmdlist.sh
  130. git-add--interactive.perl
  131. git-am.sh
  132. git-applymbox.sh
  133. git-applypatch.sh
  134. git-archimport.perl
  135. git-bisect.sh
  136. git-checkout.sh
  137. git-clean.sh
  138. git-clone.sh
  139. git-commit.sh
  140. git-compat-util.h
  141. git-cvsexportcommit.perl
  142. git-cvsimport.perl
  143. git-cvsserver.perl
  144. git-fetch.sh
  145. git-instaweb.sh
  146. git-lost-found.sh
  147. git-ls-remote.sh
  148. git-merge-octopus.sh
  149. git-merge-one-file.sh
  150. git-merge-ours.sh
  151. git-merge-resolve.sh
  152. git-merge-stupid.sh
  153. git-merge.sh
  154. git-mergetool.sh
  155. git-p4import.py
  156. git-parse-remote.sh
  157. git-pull.sh
  158. git-quiltimport.sh
  159. git-rebase.sh
  160. git-relink.perl
  161. git-remote.perl
  162. git-repack.sh
  163. git-request-pull.sh
  164. git-reset.sh
  165. git-send-email.perl
  166. git-sh-setup.sh
  167. git-svn.perl
  168. git-svnimport.perl
  169. git-tag.sh
  170. git-verify-tag.sh
  171. GIT-VERSION-GEN
  172. git.c
  173. git.spec.in
  174. gitk
  175. grep.c
  176. grep.h
  177. hash-object.c
  178. help.c
  179. http-fetch.c
  180. http-push.c
  181. http.c
  182. http.h
  183. ident.c
  184. imap-send.c
  185. index-pack.c
  186. INSTALL
  187. interpolate.c
  188. interpolate.h
  189. list-objects.c
  190. list-objects.h
  191. local-fetch.c
  192. lockfile.c
  193. log-tree.c
  194. log-tree.h
  195. Makefile
  196. match-trees.c
  197. merge-file.c
  198. merge-index.c
  199. merge-recursive.c
  200. merge-tree.c
  201. mktag.c
  202. mktree.c
  203. object-refs.c
  204. object.c
  205. object.h
  206. pack-check.c
  207. pack-redundant.c
  208. pack.h
  209. pager.c
  210. patch-delta.c
  211. patch-id.c
  212. patch-ids.c
  213. patch-ids.h
  214. path-list.c
  215. path-list.h
  216. path.c
  217. peek-remote.c
  218. pkt-line.c
  219. pkt-line.h
  220. quote.c
  221. quote.h
  222. reachable.c
  223. reachable.h
  224. read-cache.c
  225. README
  226. receive-pack.c
  227. reflog-walk.c
  228. reflog-walk.h
  229. refs.c
  230. refs.h
  231. revision.c
  232. revision.h
  233. rsh.c
  234. rsh.h
  235. run-command.c
  236. run-command.h
  237. send-pack.c
  238. server-info.c
  239. setup.c
  240. sha1_file.c
  241. sha1_name.c
  242. shallow.c
  243. shell.c
  244. show-index.c
  245. sideband.c
  246. sideband.h
  247. ssh-fetch.c
  248. ssh-pull.c
  249. ssh-push.c
  250. ssh-upload.c
  251. strbuf.c
  252. strbuf.h
  253. tag.c
  254. tag.h
  255. tar.h
  256. test-chmtime.c
  257. test-date.c
  258. test-delta.c
  259. test-match-trees.c
  260. test-sha1.c
  261. test-sha1.sh
  262. trace.c
  263. tree-diff.c
  264. tree-walk.c
  265. tree-walk.h
  266. tree.c
  267. tree.h
  268. unpack-file.c
  269. unpack-trees.c
  270. unpack-trees.h
  271. update-server-info.c
  272. upload-pack.c
  273. usage.c
  274. utf8.c
  275. utf8.h
  276. var.c
  277. write_or_die.c
  278. wt-status.c
  279. wt-status.h
  280. xdiff-interface.c
  281. xdiff-interface.h