commit | 064ec1ba73635e352dedfbcc0ab993b0c4369fa4 | [log] [tgz] |
---|---|---|
author | Morten Stenshorne <mstensho@chromium.org> | Wed Aug 16 21:06:05 2023 |
committer | Chromium LUCI CQ <chromium-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed Aug 16 21:06:05 2023 |
tree | 633a0faa39844851926234e5a8495f35c961744b | |
parent | 3426bf6e8f2eb618d09608b4379ee73f2c4c31a9 [diff] |
Skip fragment item pre-allocation inside block fragmentation. When in block fragmentation (and the fragmentainer size is known), we'd greatly over-estimate the number of fragment items to be added to the builder. This lead to an out-of-memory situation, presumably because oilpan didn't get around to collecting all the large temporary buffers before it was too late (at least one such buffer would be allocated per fragmentainer). The test included is just a perf test, which is about 3.5 times faster than before. Writing a test that would crash without this fix would be super-slow also with the fix included, so this is the best we can do, as far as I can tell. Bug: 1471849 Change-Id: I3c1c2757349da9508657984b7d371f9243f5809b Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4782829 Commit-Queue: Morten Stenshorne <mstensho@chromium.org> Reviewed-by: Koji Ishii <kojii@chromium.org> Cr-Commit-Position: refs/heads/main@{#1184376}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.