- 14 Jan, 2019 1 commit
-
-
Matthew Dempsky authored
Fuchsia VMOs will be non-executable by default in the future (SEC-42), so we'll need to use zx_vmo_replace_as_executable to make it possible to map them into memory as executable. And in the mean time, this call is a no-op. SEC-42 TBR: mlippautz Change-Id: I4521559b163519ded4afa6b55e99f983e38b1de5 Reviewed-on: https://chromium-review.googlesource.com/c/1281824Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Wez <wez@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Wez <wez@chromium.org> Cr-Commit-Position: refs/heads/master@{#58804}
-
- 22 Oct, 2018 1 commit
-
-
Hannes Payer authored
Bug: chromium:897074 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I728572cda9a8914ee689eeee68a060b5713e4c6b Reviewed-on: https://chromium-review.googlesource.com/c/1290972Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#56845}
-
- 18 Oct, 2018 1 commit
-
-
Sergey Ulanov authored
By default zx_vmo_create() creates resizable VMOs, which may be hazardous in some cases. It's safer to use ZX_VMO_NON_RESIZABLE unless VMO needs to be resizable. It doesn't make much difference in OS::Allocate() because it drops the VMO handle immediately after mapping it, still it's better to use ZX_VMO_NON_RESIZABLE for consistency. Change-Id: I688ee44b08042a9df7e3fae0b1b3298271b53b1c Reviewed-on: https://chromium-review.googlesource.com/c/1277605Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Sergey Ulanov <sergeyu@chromium.org> Cr-Commit-Position: refs/heads/master@{#56788}
-
- 19 Sep, 2018 1 commit
-
-
Clemens Hammacher authored
Those two methods are spread over the code base, and their purpose is often not clear. Historically, they were used to turn pointers into integers in order to do computations on them. Today we have {Address} which is uintptr_t, so we can compute directly on that. This also makes the {RoundUp} and {RoundDown} macros only work on integral values (including {Address}). R=mlippautz@chromium.org Bug: v8:8015 Change-Id: Ia98fb826793ee5d3a2a5b18c09c329d088443772 Reviewed-on: https://chromium-review.googlesource.com/1233914Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56048}
-
- 31 Aug, 2018 1 commit
-
-
Wez authored
Updates zx_vmar_*_old() callers back to the zx_vmar_*() equivalents, which have a new parameter order. Change-Id: I1662b4fbb866cef4eedc13e0db3e9389d4375d1e Reviewed-on: https://chromium-review.googlesource.com/1199903 Commit-Queue: Wez <wez@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#55562}
-
- 28 Aug, 2018 1 commit
-
-
Wez authored
The VMAR syscall signatures are being updated, so migrate to the temporarily-provided *_old() variants, in advance of the Fuchsia SDK roll that updates the real APIs. TBR: hpayer Change-Id: I10da4df97b122262de04a2417bd91b921f3a63d5 Reviewed-on: https://chromium-review.googlesource.com/1194429 Commit-Queue: Wez <wez@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#55473}
-
- 17 Apr, 2018 1 commit
-
-
Dan Elphick authored
Add a new permission kRead to PageAllocator::Permission and OS::MemoryPermission and implement it in platform-*. Not used yet, because it needs corresponding changes in chromium. Bug: v8:7464 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I9f84251eff593536cbcc1cde04641d696c79d65c Reviewed-on: https://chromium-review.googlesource.com/1006756Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#52636}
-
- 26 Feb, 2018 1 commit
-
-
Wez authored
Recent Fuchsia SDKs have begun removing both symbols for unsupported POSIX APIs, and also the relevant definitions, and even headers. This CL: - Removes dependencies on <sys/resource.h>. - Adds a working implementation of GetUserTime(). - Fixes GetCurrentThreadId() to use the native (32-bit) Fuchsia thread handle, rather than the (64-bit) pthread*, to avoid potential for id clashes when truncating the value into a 32-bit int. Bug: chromium:707030 Change-Id: Ic5774e138f7657123dd65d0fb7ef5d87876766e8 Reviewed-on: https://chromium-review.googlesource.com/933247Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Wez <wez@chromium.org> Cr-Commit-Position: refs/heads/master@{#51579}
-
- 24 Jan, 2018 1 commit
-
-
Michael Starzinger authored
This reverts commit bf19e60c. Reason for revert: Two issues discovered with W^X in V8's 6.5 branch (see v8:7272 and chromium:793428). Still need a way to disable the feature. Original change's description: > [platform] Remove {PageAllocator::kReadWriteExecute}. > > Now that write-protection of code memory is enabled everywhere and V8 is > fully W^X compliant, we can remove the permission mode in question. > > R=hpayer@chromium.org > BUG=v8:6792 > > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I80fe95ac6bb0e2d1ad6d993154ce45d492d941be > Reviewed-on: https://chromium-review.googlesource.com/866855 > Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#50770} TBR=bbudge@chromium.org,mstarzinger@chromium.org,hpayer@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:6792 Change-Id: If4a205497ac83084a4092560363affb13b391462 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/883461Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#50834}
-
- 22 Jan, 2018 1 commit
-
-
Michael Starzinger authored
Now that write-protection of code memory is enabled everywhere and V8 is fully W^X compliant, we can remove the permission mode in question. R=hpayer@chromium.org BUG=v8:6792 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I80fe95ac6bb0e2d1ad6d993154ce45d492d941be Reviewed-on: https://chromium-review.googlesource.com/866855 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#50770}
-
- 19 Dec, 2017 1 commit
-
-
Clemens Hammacher authored
... or sometimes by FATAL(...) to give a better error message. The benefit of UNREACHABLE() over CHECK(false) is that the compiler knows that this macro will never return, hence we can omit the return of a dummy value afterwards. R=neis@chromium.org Change-Id: I14e6a4f1d75f1338f481bd1520d841fd383d6202 Reviewed-on: https://chromium-review.googlesource.com/832431Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50214}
-
- 22 Nov, 2017 1 commit
-
-
Bill Budge authored
- Change VirtualMemory to match OS memory concepts. Rename Release Free, ReleasePartial to Release. - Adds comments to make the semantics clear. Right now V8 munmaps on POSIX, making address space available, while on Windows it is only possible to decommit. Bug: chromium:756050 Change-Id: I6ba04d857ab9e1ca1f273e9e766e0825e67210cc Reviewed-on: https://chromium-review.googlesource.com/783513Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#49586}
-
- 21 Nov, 2017 1 commit
-
-
Bill Budge authored
- Eliminates CommitRegion and UncommitRegion methods, replacing them with calls to SetPermissions. - Makes a similar change to the API of VirtualMemory. - This changes system calls from mmap to mprotect on most POSIX platforms. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Ib10f8293c9398c6c1e729cd7d686b7c97e6a5d75 Reviewed-on: https://chromium-review.googlesource.com/769679Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#49552}
-
- 16 Nov, 2017 2 commits
-
-
Bill Budge authored
- Adds SetPermissions method which returns bool result. - Eliminates Guard, SetReadAndWritable, SetReadAndExecutable, and SetReadWriteAndExecutable methods. - Adds some Fuchsia memory allocation implementation. - Some minor fixes in usage of OS::AllocatePageSize and OS::CommitPageSize. - Adds DCHECKs for sanitizing parameters to OS::Allocate/Free. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I966ec6f029dd0371d70eca20bae197d87956f8b5 Reviewed-on: https://chromium-review.googlesource.com/760657 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49430}
-
Hannes Payer authored
This CL also narrows the rw scopes on various call sites. Bug: chromium:774108,v8:6792 Change-Id: I41a6f5dc4948833baaa441fb998ef40d8a832619 Reviewed-on: https://chromium-review.googlesource.com/758370 Commit-Queue: Hannes Payer <hpayer@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#49411}
-
- 14 Nov, 2017 1 commit
-
-
Bill Budge authored
This is a reland of 4899bcb6 This is a reland of b73ee334 Original change's description: > [Memory] Use OS::Allocate for all OS memory allocations. > > - Eliminates OS::ReserveRegion and OS::ReserveAlignedRegion. > - Changes OS::Allocate to take alignment parameter, reorders parameters > to match page_allocator. > - Since the size of memory allocation can be deduced, don't return the > amount of memory allocated. > - Changes reservation of aligned address space. Before we would reserve > (size + alignment) rounded up to page size. This is too much, because > maximum misalignment is (alignment - page_size). > - On Windows and Cygwin, we release an oversize allocation and > immediately retry at the aligned address in the allocation. If we > lose the address due to a race, we just retry. > - Clean up all the calls to OS::Allocate in codegen and tests by adding > helper AllocateSystemPage function (allocation.h) and > AllocateAssemblerBuffer (cctest.h). > - Changes 'assm' to 'masm' in some targets for consistency when using > a macro-assembler. > > - Eliminates OS::ReleaseRegion, replacing with calls to OS::Free. > - Adds bool return value to OS::Free. > - Cleans up types of flags, protection on Windows and Cygwin. > Bug: chromium:756050 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I306dbe042cc867670fdc935abca29db074b0da71 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iad3c025334e8f8d7d647be99a36a11ee449c9087 Reviewed-on: https://chromium-review.googlesource.com/767014 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#49363}
-
- 11 Nov, 2017 1 commit
-
-
Jakob Gruber authored
Revert this and its follow-up as suspect for current canary OOM crasher. This reverts commit 4899bcb6. This reverts commit b73ee334. TBR=adamk@chromium.org,hpayer@chromium.org Bug: chromium:783708 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I4c00582e7ab2df22216ad6732e2843e9958db0c0 Reviewed-on: https://chromium-review.googlesource.com/765447Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#49315}
-
- 10 Nov, 2017 1 commit
-
-
Bill Budge authored
- Eliminates OS::ReleaseRegion, replacing with calls to OS::Free. - Adds bool return value to OS::Free. - Cleans up types of flags, protection on Windows and Cygwin. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I6a642374e33876966a5552fb0cdf552dc6d79aaa Reviewed-on: https://chromium-review.googlesource.com/762345 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#49305}
-
- 09 Nov, 2017 1 commit
-
-
Bill Budge authored
This is a reland of 7e78506f Original change's description: > [Memory] Use OS::Allocate for all OS memory allocations. > > - Eliminates OS::ReserveRegion and OS::ReserveAlignedRegion. > - Changes OS::Allocate to take alignment parameter, reorders parameters > to match page_allocator. > - Since the size of memory allocation can be deduced, don't return the > amount of memory allocated. > - Changes reservation of aligned address space. Before we would reserve > (size + alignment) rounded up to page size. This is too much, because > maximum misalignment is (alignment - page_size). > - On Windows and Cygwin, we release an oversize allocation and > immediately retry at the aligned address in the allocation. If we > lose the address due to a race, we just retry. > - Clean up all the calls to OS::Allocate in codegen and tests by adding > helper AllocateSystemPage function (allocation.h) and > AllocateAssemblerBuffer (cctest.h). > - Changes 'assm' to 'masm' in some targets for consistency when using > a macro-assembler. > > Bug: chromium:756050 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I306dbe042cc867670fdc935abca29db074b0da71 > Reviewed-on: https://chromium-review.googlesource.com/749848 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49235} Bug: chromium:756050 Change-Id: I333f7a6aea0bcb608d01cafb43e94893a4625b15 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/758509Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#49273}
-
- 08 Nov, 2017 2 commits
-
-
Bill Budge authored
This reverts commit 7e78506f. Reason for revert: Broke Android build on Arm64. Original change's description: > [Memory] Use OS::Allocate for all OS memory allocations. > > - Eliminates OS::ReserveRegion and OS::ReserveAlignedRegion. > - Changes OS::Allocate to take alignment parameter, reorders parameters > to match page_allocator. > - Since the size of memory allocation can be deduced, don't return the > amount of memory allocated. > - Changes reservation of aligned address space. Before we would reserve > (size + alignment) rounded up to page size. This is too much, because > maximum misalignment is (alignment - page_size). > - On Windows and Cygwin, we release an oversize allocation and > immediately retry at the aligned address in the allocation. If we > lose the address due to a race, we just retry. > - Clean up all the calls to OS::Allocate in codegen and tests by adding > helper AllocateSystemPage function (allocation.h) and > AllocateAssemblerBuffer (cctest.h). > - Changes 'assm' to 'masm' in some targets for consistency when using > a macro-assembler. > > Bug: chromium:756050 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I306dbe042cc867670fdc935abca29db074b0da71 > Reviewed-on: https://chromium-review.googlesource.com/749848 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49235} TBR=bbudge@chromium.org,hpayer@chromium.org,mlippautz@chromium.org Change-Id: Ic09de4d63c19746a62e804b1f889817ffaebc330 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/758625Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#49242}
-
Bill Budge authored
- Eliminates OS::ReserveRegion and OS::ReserveAlignedRegion. - Changes OS::Allocate to take alignment parameter, reorders parameters to match page_allocator. - Since the size of memory allocation can be deduced, don't return the amount of memory allocated. - Changes reservation of aligned address space. Before we would reserve (size + alignment) rounded up to page size. This is too much, because maximum misalignment is (alignment - page_size). - On Windows and Cygwin, we release an oversize allocation and immediately retry at the aligned address in the allocation. If we lose the address due to a race, we just retry. - Clean up all the calls to OS::Allocate in codegen and tests by adding helper AllocateSystemPage function (allocation.h) and AllocateAssemblerBuffer (cctest.h). - Changes 'assm' to 'masm' in some targets for consistency when using a macro-assembler. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I306dbe042cc867670fdc935abca29db074b0da71 Reviewed-on: https://chromium-review.googlesource.com/749848 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49235}
-
- 03 Nov, 2017 1 commit
-
-
Bill Budge authored
- Sanitize Windows page size / alignment code. - Reorder some methods to match header file. - Rename AllocateAlignment to AllocatePageSize to be consistent with CommitPageSize. - Eliminate OS::Allocate overload with is_executable argument. - Eliminate base::OS::AllocateGuarded - it's not implemented. Bug: chromium:756050 Change-Id: I046bb019cddde0c0063d617adc2c94a23989d9d1 Reviewed-on: https://chromium-review.googlesource.com/742684 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#49114}
-
- 18 Oct, 2017 2 commits
-
-
Bill Budge authored
This reverts commit d607f1e7. Reason for revert: Suspected cause of hanging tests: https://bugs.chromium.org/p/v8/issues/detail?id=6927#c13 Original change's description: > [Memory] Move GetRandomMmapAddr from base::OS platform to v8::internal. > > - Moves GetRandomMmapAddr from platform to v8::internal allocation > primitives, in preparation for delegating this to the embedder. > - Adds hint parameters to OS functions that used to use this function. > > Bug: chromium:756050 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: Iad72e6eac9c08a3e22c2cd2b2905623b8e514ae0 > Reviewed-on: https://chromium-review.googlesource.com/677777 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48124} TBR=bbudge@chromium.org,ulan@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:756050 Change-Id: I2c515934906e67b47ceea2863bc2992ac1d23ab3 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/726319 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#48701}
-
Clemens Hammacher authored
This CL fixes all occurences that don't require special OWNER reviews, or can be reviewed by Michi. After this one, we should be able to reenable the readability/check cpplint check. R=mstarzinger@chromium.org Bug: v8:6837, v8:6921 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Ic81d68d5534eaa795b7197fed5c41ed158361d62 Reviewed-on: https://chromium-review.googlesource.com/721120 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#48670}
-
- 01 Oct, 2017 1 commit
-
-
Bill Budge authored
- Moves leak sanitizer code to callers of OS:: Memory functions. - Changes signature of OS::ReleasePartialRegion to be more generic, removing the parameters that only make sense as part of VirtualMemory. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I2f1401c9b0856b2eaf36b80b5f141e935ef63e1c Reviewed-on: https://chromium-review.googlesource.com/685741Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#48250}
-
- 22 Sep, 2017 1 commit
-
-
Bill Budge authored
- Moves GetRandomMmapAddr from platform to v8::internal allocation primitives, in preparation for delegating this to the embedder. - Adds hint parameters to OS functions that used to use this function. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iad72e6eac9c08a3e22c2cd2b2905623b8e514ae0 Reviewed-on: https://chromium-review.googlesource.com/677777Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#48124}
-
- 21 Sep, 2017 1 commit
-
-
Bill Budge authored
This is a reland of f2cd10db Original change's description: > Reland "[Memory] Move VirtualMemory out of base:: platform." > > This is a reland of 4dd293d9 > Original change's description: > > [Memory] Move VirtualMemory out of base:: platform. > > > > - Moves base::VirtualMemory to v8::internal::VirtualMemory. > > - Makes VirtualMemory platform-independent by moving internals to new > > OS:: static methods, for each platform. > > > > This will make it easier to delegate memory management in VirtualMemory > > to V8::Platform, so that embedders like Blink can override it. We can't > > depend on V8::Platform in base/platform. > > > > Bug: chromium:756050 > > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf > > Reviewed-on: https://chromium-review.googlesource.com/653214 > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#48048} > > Bug: chromium:756050 > Change-Id: Ib492c7c69f1833be127a571808301e96b84b8aa2 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Reviewed-on: https://chromium-review.googlesource.com/671125 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48084} Bug: chromium:756050 Change-Id: Ie596730b5cefc38137cab7fc1f76613f5af7b825 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/675283Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#48113}
-
- 20 Sep, 2017 1 commit
-
-
Michael Hablich authored
This reverts commit f2cd10db. Reason for revert: Blocks the roll https://chromium-review.googlesource.com/c/chromium/src/+/674623 Original change's description: > Reland "[Memory] Move VirtualMemory out of base:: platform." > > This is a reland of 4dd293d9 > Original change's description: > > [Memory] Move VirtualMemory out of base:: platform. > > > > - Moves base::VirtualMemory to v8::internal::VirtualMemory. > > - Makes VirtualMemory platform-independent by moving internals to new > > OS:: static methods, for each platform. > > > > This will make it easier to delegate memory management in VirtualMemory > > to V8::Platform, so that embedders like Blink can override it. We can't > > depend on V8::Platform in base/platform. > > > > Bug: chromium:756050 > > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf > > Reviewed-on: https://chromium-review.googlesource.com/653214 > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#48048} > > Bug: chromium:756050 > Change-Id: Ib492c7c69f1833be127a571808301e96b84b8aa2 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Reviewed-on: https://chromium-review.googlesource.com/671125 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48084} TBR=bbudge@chromium.org,ulan@chromium.org,hpayer@chromium.org,mlippautz@chromium.org,scottmg@chromium.org Change-Id: I04176d77ca9ad8315b0e1bb2b21f40f2c8ab9536 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/674843Reviewed-by:
Michael Hablich <hablich@chromium.org> Commit-Queue: Michael Hablich <hablich@chromium.org> Cr-Commit-Position: refs/heads/master@{#48088}
-
- 19 Sep, 2017 1 commit
-
-
Bill Budge authored
This is a reland of 4dd293d9 Original change's description: > [Memory] Move VirtualMemory out of base:: platform. > > - Moves base::VirtualMemory to v8::internal::VirtualMemory. > - Makes VirtualMemory platform-independent by moving internals to new > OS:: static methods, for each platform. > > This will make it easier to delegate memory management in VirtualMemory > to V8::Platform, so that embedders like Blink can override it. We can't > depend on V8::Platform in base/platform. > > Bug: chromium:756050 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf > Reviewed-on: https://chromium-review.googlesource.com/653214 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48048} Bug: chromium:756050 Change-Id: Ib492c7c69f1833be127a571808301e96b84b8aa2 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/671125 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#48084}
-
- 18 Sep, 2017 4 commits
-
-
Scott Graham authored
Chromium has rolled the Fuchsia SDK, so this can be removed now, and the new zx_, etc. names used exclusively. Bug: chromium:765754 Change-Id: I8bd60239da7a05e62d3b8d5209e1cfe898d8052a Reviewed-on: https://chromium-review.googlesource.com/671769Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Scott Graham <scottmg@chromium.org> Cr-Commit-Position: refs/heads/master@{#48071}
-
Scott Graham authored
This is a reland of aabb893a Original change's description: > fuchsia: Set up for 3-sided roll to convert Magenta->Zircon > > Fuchsia changed their kernel name from Magenta to Zircon and all the > functions and defines along with it. In order to be able to roll the SDK > in Chromium, we first need to land with this define added in v8, so that > can roll in to Chromium, then roll the Fuchsia SDK with this magic > define set (CHROMIUM_ROLLING_MAGENTA_TO_ZIRCON), then actually update v8 > to reference zx_ instead of mx_ and roll that again. > > Chromium-side for reference: https://chromium-review.googlesource.com/c/chromium/src/+/669139 > > Bug: chromium:765754, chromium:707030 > Change-Id: I4ed5027f455d2346f431e7c700e87693348d5b79 > Reviewed-on: https://chromium-review.googlesource.com/668751 > Reviewed-by: Bill Budge <bbudge@chromium.org> > Commit-Queue: Scott Graham <scottmg@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48047} TBR=bbudge@chromium.org Bug: chromium:765754, chromium:707030 Change-Id: Ib6e99ca418af527014622614d07d295b6110f9d5 Reviewed-on: https://chromium-review.googlesource.com/670944Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48067}
-
Michael Hablich authored
This reverts commit 4dd293d9. Reason for revert: Blocks roll: https://chromium-review.googlesource.com/c/chromium/src/+/669785 Original change's description: > [Memory] Move VirtualMemory out of base:: platform. > > - Moves base::VirtualMemory to v8::internal::VirtualMemory. > - Makes VirtualMemory platform-independent by moving internals to new > OS:: static methods, for each platform. > > This will make it easier to delegate memory management in VirtualMemory > to V8::Platform, so that embedders like Blink can override it. We can't > depend on V8::Platform in base/platform. > > Bug: chromium:756050 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf > Reviewed-on: https://chromium-review.googlesource.com/653214 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48048} TBR=bbudge@chromium.org,ulan@chromium.org,hpayer@chromium.org,mlippautz@chromium.org,scottmg@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:756050 Change-Id: Ice2618ef72950e1b64c31434a239c626aa5e5970 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/670843Reviewed-by:
Michael Hablich <hablich@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Hablich <hablich@chromium.org> Cr-Commit-Position: refs/heads/master@{#48062}
-
Michael Hablich authored
This reverts commit aabb893a. Reason for revert: blocks roll https://chromium-review.googlesource.com/c/chromium/src/+/669540; Fix has not landed yet: https://chromium-review.googlesource.com/c/v8/v8/+/670280 Original change's description: > fuchsia: Set up for 3-sided roll to convert Magenta->Zircon > > Fuchsia changed their kernel name from Magenta to Zircon and all the > functions and defines along with it. In order to be able to roll the SDK > in Chromium, we first need to land with this define added in v8, so that > can roll in to Chromium, then roll the Fuchsia SDK with this magic > define set (CHROMIUM_ROLLING_MAGENTA_TO_ZIRCON), then actually update v8 > to reference zx_ instead of mx_ and roll that again. > > Chromium-side for reference: https://chromium-review.googlesource.com/c/chromium/src/+/669139 > > Bug: chromium:765754, chromium:707030 > Change-Id: I4ed5027f455d2346f431e7c700e87693348d5b79 > Reviewed-on: https://chromium-review.googlesource.com/668751 > Reviewed-by: Bill Budge <bbudge@chromium.org> > Commit-Queue: Scott Graham <scottmg@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48047} TBR=bbudge@chromium.org,scottmg@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:765754, chromium:707030 Change-Id: Ic1563b10a69372a0946ee9eacc8a2d21eb3ee302 Reviewed-on: https://chromium-review.googlesource.com/670619Reviewed-by:
Michael Hablich <hablich@chromium.org> Commit-Queue: Michael Hablich <hablich@chromium.org> Cr-Commit-Position: refs/heads/master@{#48059}
-
- 15 Sep, 2017 2 commits
-
-
Bill Budge authored
- Moves base::VirtualMemory to v8::internal::VirtualMemory. - Makes VirtualMemory platform-independent by moving internals to new OS:: static methods, for each platform. This will make it easier to delegate memory management in VirtualMemory to V8::Platform, so that embedders like Blink can override it. We can't depend on V8::Platform in base/platform. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iadfe230b6850bd917727a373f277afded9883adf Reviewed-on: https://chromium-review.googlesource.com/653214 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#48048}
-
Scott Graham authored
Fuchsia changed their kernel name from Magenta to Zircon and all the functions and defines along with it. In order to be able to roll the SDK in Chromium, we first need to land with this define added in v8, so that can roll in to Chromium, then roll the Fuchsia SDK with this magic define set (CHROMIUM_ROLLING_MAGENTA_TO_ZIRCON), then actually update v8 to reference zx_ instead of mx_ and roll that again. Chromium-side for reference: https://chromium-review.googlesource.com/c/chromium/src/+/669139 Bug: chromium:765754, chromium:707030 Change-Id: I4ed5027f455d2346f431e7c700e87693348d5b79 Reviewed-on: https://chromium-review.googlesource.com/668751Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Scott Graham <scottmg@chromium.org> Cr-Commit-Position: refs/heads/master@{#48047}
-
- 18 Aug, 2017 1 commit
-
-
Scott Graham authored
This follows the POSIX-y implementations, using mx_ system calls in place of mmap, et al. Some references: https://fuchsia.googlesource.com/magenta/+/HEAD/docs/objects/vm_address_region.md https://fuchsia.googlesource.com/magenta/+/HEAD/docs/syscalls/vmo_create.md https://fuchsia.googlesource.com/magenta/+/HEAD/docs/syscalls/vmar_map.md https://fuchsia.googlesource.com/magenta/+/HEAD/docs/syscalls/vmar_unmap.md https://fuchsia.googlesource.com/magenta/+/HEAD/docs/syscalls/vmar_protect.md Bug: chromium:731217 Change-Id: I7a33c2cc2b41736e395bd3431b88e6b9621b7ca5 Reviewed-on: https://chromium-review.googlesource.com/619687Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Scott Graham <scottmg@chromium.org> Cr-Commit-Position: refs/heads/master@{#47438}
-
- 14 Jul, 2017 2 commits
-
-
Wez authored
TBR: machenbach, hablich, kozyatinskiy Change-Id: Id5cbcc1260b69a68dded46651471bd1cfa57d3a3 Reviewed-on: https://chromium-review.googlesource.com/571114Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Wez <wez@chromium.org> Cr-Commit-Position: refs/heads/master@{#46685}
-
Ulan Degenbaev authored
Currently every VirtualMemory allocation on 64-bit systems uses a random 46-bit address hint for ASLR. This leads to wired page leak on MacOS discovered by Erik Chen (see crbug.com/700928 and https://chromium-review.googlesource.com/c/557958/): "The Darwin kernel [as of macOS 10.12.5] does not clean up page directory entries [PDE] created from mmap or mach_vm_allocate, even after the region is destroyed. Using a virtual address space that is too large causes a leak of about 1 wired [can never be paged out] page per call to mmap(). The page is only reclaimed when the process is killed." This patch changes VirtualMemory to accept the hint parameter explicitly. On MacOS the hints are confined to 4GB contiguous region. Algorithm: - On startup, set heap.mmap_region_base_ to a random address. - For each mmap use heap.mmap_region_base_ + (random_offset % (4*GB)). BUG=chromium:700928 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I2ae6a024e02fbe63f940105d7920b57c19abacc6 Reviewed-on: https://chromium-review.googlesource.com/558876 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46656}
-
- 12 Jul, 2017 1 commit
-
-
Jaideep Bajwa authored
Follow up on https://codereview.chromium.org/2740353002. Created PosixDefaultTimezoneCache which is a subclass of PosixTimezoneCache containing definition of LocalTimezone and LocalTimeOffset which is separate for different OS. R=littledan@chromium.org, ulan@chromium.org BUG=v8:6578 LOG=N Change-Id: I58342893aeefe79ac50e1df041d614fc473f15bf Reviewed-on: https://chromium-review.googlesource.com/568686Reviewed-by:
Daniel Ehrenberg <littledan@chromium.org> Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#46604}
-
- 16 Jun, 2017 1 commit
-
-
Michael Lippautz authored
Affects the Windows case where we over reserve for alignment reasons but actually already get aligned memory. Implemented on allocator level to potentially cover other platforms as well. Bug: Change-Id: I4859451f157e1e363db27413a43345fdd1990a06 Reviewed-on: https://chromium-review.googlesource.com/535454 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#45970}
-