- 04 Dec, 2021 1 commit
-
-
Samuel Groß authored
This interface is meant to eventually replace the existing v8::PageAllocator interface. Beyond general refactoring of the PageAllocator APIs, the new interface now supports the concept of (contiguous) address space reservations, which previously had to be implemented through page allocations. These reservations now make better use of provided OS primitives on Fuchsia (VMARs) and Windows (placeholder mappings) and can be used to back many of the cages and virtual memory regions that V8 creates. The new interface is not yet stable and may change at any time without deprecating the old version first. Bug: chromium:1218005 Change-Id: I295253c42e04cf311393c5dab9f8c06bd7451ce3 Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3301475 Commit-Queue: Samuel Groß <saelo@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#78235}
-
- 15 Nov, 2021 1 commit
-
-
Samuel Groß authored
This change allows clients of the RegionAllocator to provide callbacks that are invoked when regions are split or merged. This will later be needed on Windows when a RegionAllocator is used to manage a placeholder mapping as these need to be split and merged (using the VirtualFree API) as well. Bug: chromium:1218005 Change-Id: I228b41bdb43c4a9ef0db04de9b121dea6b5f12f9 Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3264287 Commit-Queue: Samuel Groß <saelo@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#77903}
-
- 11 Aug, 2021 1 commit
-
-
Samuel Groß authored
When this is enabled, v8 reserves a large region of virtual address space during initialization, at the start of which it will place its 4GB pointer compression cage. The remainder of the cage is used to store ArrayBuffer backing stores and WASM memory buffers. This will later allow referencing these buffers from inside V8 through offsets from the cage base rather than through raw pointers. Bug: chromium:1218005 Change-Id: I300094b07f64985217104b14c320cc019f8438af Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3010195Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Samuel Groß <saelo@google.com> Cr-Commit-Position: refs/heads/master@{#76234}
-
- 06 Nov, 2020 1 commit
-
-
Clemens Backes authored
Replace by explicitly deleted copy constructor and assignment operator instead. Also add a note to the macros that they are deprecated. Only marked DISALLOW_ASSIGN and DISALLOW_COPY_AND_ASSIGN for now. Others are less often used, and can probably be removed in a single CL later. R=ahaas@chromium.org Bug: v8:11074 Change-Id: I3825bfbbc24b0698f3aef671189fbff586dd5d23 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2523202Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#71015}
-
- 31 Jul, 2020 1 commit
-
-
Dan Elphick authored
Excluded regions are no longer available to the RegionAllocator, so should not be freeable so actually enforce that and aAdd a test. Bug: v8:10454 Change-Id: I51c41cf0bf3d2eeb699b10b1fa02f5465d93b6aa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2330026Reviewed-by: Igor Sheludko (OOO Aug 3-17) <ishell@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#69163}
-
- 30 Jul, 2020 1 commit
-
-
Dan Elphick authored
This adds new methods AllocateSharedPages, ReserveForSharedMemoryMapping and CanAllocateSharedPages to v8::PageAllocator, which if overridden allows the platform to declare that it supports allocation and remapping of shared memory. This interface is currently a work in progress so the new methods are marked "INTERNAL ONLY" and they may change without being first deprecated. An implementation of PageAllocator is provided that can allocate and map shared memory on Linux and Android, but no other platforms are yet supported. While Windows is not supported the interface has been designed to make this possible as AllocateSharedPages returns a SharedMemory object that wraps the shared memory and provides its own remap function. This should allow the SharedMemory object on windows to contain a mapping a to hFileMappingObject as required by MapViewOfFileEx. Bug: v8:10454 Change-Id: I2e601d49ea14da44867a102c823fa4e341cf0dab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2306789Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#69154}
-
- 01 Apr, 2019 1 commit
-
-
Clemens Hammacher authored
Even though both are allowed in the style guide, it recommends to use 'using', as its syntax is more consistent with the rest of C++. This CL turns all typedefs in base code to 'using' declarations. R=mlippautz@chromium.org Bug: v8:8834 Change-Id: Ic5c3d7fa2e50938c6f43e9ff304dc2289fed1133 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547650Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60546}
-
- 07 Nov, 2018 1 commit
-
-
Igor Sheludko authored
in order to make the test compatible with the pointer compression friendly heap layout. Bug: v8:8182 Change-Id: I34a0c597b70687f7ae7dad19df60c94520fa349f Reviewed-on: https://chromium-review.googlesource.com/c/1317818 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#57310}
-
- 28 Sep, 2018 1 commit
-
-
Igor Sheludko authored
Trimming may free up some allocatable pages that can be reused by subsequent allocations. This CL also fixes base::AddressRegion::contains(Address, size_t). Bug: v8:8096 Change-Id: I3b7381fd32f7dbf186dffc1a26d5a88cd8a30d2f Reviewed-on: https://chromium-review.googlesource.com/1249127Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#56284}
-
- 17 Sep, 2018 1 commit
-
-
Igor Sheludko authored
Bug: v8:8015 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I2ce078b662e3dd93e0fac310b0d73c4cadbaccb3 Reviewed-on: https://chromium-review.googlesource.com/1226640 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#55957}
-
- 15 Sep, 2018 1 commit
-
-
Igor Sheludko authored
This is a reland of 16816e53 Bug: v8:8096 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I257fc391931a0a4bf01f2e8136183aaed044231c Reviewed-on: https://chromium-review.googlesource.com/1226915 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#55928}
-
- 12 Sep, 2018 1 commit
-
-
Michael Achenbach authored
Revert "[ptr-compr] Introduce BoundedPageAllocator and use it instead of CodeRange." This reverts commit 16816e53. Revert "[cleanup] Introduce LsanPageAllocator decorator" This reverts commit 0606bf91. Revert "[ptr-compr][heap] Fix TODOs about always using proper page allocator" This reverts commit b0edf8e6. The fist CL in the list is suspected to block the roll: https://chromium-review.googlesource.com/c/chromium/src/+/1216022 Pseudo bisect points to that CL: https://chromium-review.googlesource.com/c/chromium/src/+/1219612 TBR=ishell@chromium.org Bug: v8:8096 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I9fafedd3810e14cdfc2068df7727cf90fc0cc85a Reviewed-on: https://chromium-review.googlesource.com/1219695 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#55818}
-
- 10 Sep, 2018 1 commit
-
-
Igor Sheludko authored
Bug: v8:8096 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: If44c1a9a76c517fe329485d385f445b2be9f5ec2 Reviewed-on: https://chromium-review.googlesource.com/1213186Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#55744}
-
- 06 Sep, 2018 1 commit
-
-
Igor Sheludko authored
This CL adds CheckRange() which will be used in DCHECKs in BoundedPageAllocator and renames "min_region_size" to "page_size" for better readability. Bug: v8:8096 Change-Id: I62cf7a92e50d0a11d462a9fbc34ddc5eda5456e1 Reviewed-on: https://chromium-review.googlesource.com/1209284Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#55692}
-
- 30 Aug, 2018 1 commit
-
-
Igor Sheludko authored
This is a naive implementation of a class that manages regions allocation/deallocation inside given range of addresses. This code will be used in a follow-up CLs. Bug: v8:8096 Change-Id: I7bea7051a1525cc7f87ba34d67b85b274c5de18a Reviewed-on: https://chromium-review.googlesource.com/1127175Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#55531}
-