-
Andreas Haas authored
This CL limits the amount of address space we reserve for shared WebAssembly memory. Up until now we just reserved either the defined maximum size of the memory or the V8-defined maximum memory size, depending on whether the maximum size is defined or not. This could cause OOMs easily on 32-bit systems due to address space exhaustion. With this CL we limit the amount of address space we reserve for shared WebAssembly memory. 1) We try to reserve at least the initial size; 2) If no maximum size is defined, we reserve 1GB by default; 3) If a maximum size is defined, then we reserve that maximum size but at most 1GB. Note that the handling of shared memory here is different than the handling of not-shared memory because for shared memory it is not possible to grow with realloc. R=clemensb@chromium.org Bug: v8:12038 Change-Id: I00493b330ee00588d65cbffa6f042e039106736e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3071206Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#76116}
5edf5957