1. 14 Sep, 2018 1 commit
  2. 30 Apr, 2018 2 commits
  3. 26 Mar, 2018 1 commit
  4. 01 Mar, 2018 2 commits
  5. 21 Dec, 2017 1 commit
  6. 15 Nov, 2017 1 commit
    • Andreas Haas's avatar
      Reland "[platform] Implement TaskRunners in the DefaultPlatform" · 8a1bafaf
      Andreas Haas authored
      There was a data race in the access of the foreground_task_runner_map_.
      I protect each access to foreground_task_runner_map_ with a lock now.
      
      Original change's description:
      > [platform] Implement TaskRunners in the DefaultPlatform
      >
      > This CL implements the TaskRunners in the DefaultPlatform which has been
      > added recently to the platform API. In addition I changed how task
      > posting works on the DefaultPlatform.
      >
      > With this implementation the DefaultPlatform keeps one
      > DefaultForegroundTaskRunner per isolate, plus one
      > DefaultBackgroundTaskRunner. The DefaultPlatform owns these TaskRunners
      > with a shared_ptr, which is also shared with any caller of
      > GetForegroundTaskRunner or GetBackgroundTaskrunner.
      >
      > This CL moves the task management from the DefaultPlatform to the
      > TaskRunners.  The DefaultForegroundTaskRunner owns and manages the the
      > task queue, the delayed task  queue, and the idle task queue. The
      > DefaultBackgroundTaskRunner owns the WorkerThread pool and the
      > background task queue.
      >
      > In addition changed many Task* to std::unique_ptr<Task> to document task
      > ownership.
      >
      > R=rmcilroy@chromium.org
      >
      > Change-Id: Ib9a01f1f45e5b48844a37d801f884210ec3f6c27
      > Reviewed-on: https://chromium-review.googlesource.com/753583
      > Commit-Queue: Andreas Haas <ahaas@chromium.org>
      > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49354}
      
      Change-Id: Iddccdb07bde1a799815ec6ed6af37082df4987c7
      Reviewed-on: https://chromium-review.googlesource.com/770970
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49379}
      8a1bafaf
  7. 14 Nov, 2017 3 commits
    • Michael Achenbach's avatar
      Revert "[platform] Implement TaskRunners in the DefaultPlatform" · c56cff23
      Michael Achenbach authored
      This reverts commit 8de2e6db.
      
      Reason for revert: Suspect for:
      https://build.chromium.org/p/client.v8/builders/V8%20Win32%20-%20nosnap%20-%20shared/builds/24237
      https://build.chromium.org/p/client.v8/builders/V8%20Win64/builds/20896
      
      Original change's description:
      > [platform] Implement TaskRunners in the DefaultPlatform
      > 
      > This CL implements the TaskRunners in the DefaultPlatform which has been
      > added recently to the platform API. In addition I changed how task
      > posting works on the DefaultPlatform.
      > 
      > With this implementation the DefaultPlatform keeps one
      > DefaultForegroundTaskRunner per isolate, plus one
      > DefaultBackgroundTaskRunner. The DefaultPlatform owns these TaskRunners
      > with a shared_ptr, which is also shared with any caller of
      > GetForegroundTaskRunner or GetBackgroundTaskrunner.
      > 
      > This CL moves the task management from the DefaultPlatform to the
      > TaskRunners.  The DefaultForegroundTaskRunner owns and manages the the
      > task queue, the delayed task  queue, and the idle task queue. The
      > DefaultBackgroundTaskRunner owns the WorkerThread pool and the
      > background task queue.
      > 
      > In addition changed many Task* to std::unique_ptr<Task> to document task
      > ownership.
      > 
      > R=​rmcilroy@chromium.org
      > 
      > Change-Id: Ib9a01f1f45e5b48844a37d801f884210ec3f6c27
      > Reviewed-on: https://chromium-review.googlesource.com/753583
      > Commit-Queue: Andreas Haas <ahaas@chromium.org>
      > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49354}
      
      TBR=rmcilroy@chromium.org,ahaas@chromium.org
      
      Change-Id: I6c381915a2cae8ea1a0d21d6cfa6e797ccd2d947
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Reviewed-on: https://chromium-review.googlesource.com/768748Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49357}
      c56cff23
    • Andreas Haas's avatar
      [platform] Implement TaskRunners in the DefaultPlatform · 8de2e6db
      Andreas Haas authored
      This CL implements the TaskRunners in the DefaultPlatform which has been
      added recently to the platform API. In addition I changed how task
      posting works on the DefaultPlatform.
      
      With this implementation the DefaultPlatform keeps one
      DefaultForegroundTaskRunner per isolate, plus one
      DefaultBackgroundTaskRunner. The DefaultPlatform owns these TaskRunners
      with a shared_ptr, which is also shared with any caller of
      GetForegroundTaskRunner or GetBackgroundTaskrunner.
      
      This CL moves the task management from the DefaultPlatform to the
      TaskRunners.  The DefaultForegroundTaskRunner owns and manages the the
      task queue, the delayed task  queue, and the idle task queue. The
      DefaultBackgroundTaskRunner owns the WorkerThread pool and the
      background task queue.
      
      In addition changed many Task* to std::unique_ptr<Task> to document task
      ownership.
      
      R=rmcilroy@chromium.org
      
      Change-Id: Ib9a01f1f45e5b48844a37d801f884210ec3f6c27
      Reviewed-on: https://chromium-review.googlesource.com/753583
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49354}
      8de2e6db
    • Andreas Haas's avatar
      [cleanup] use unique_ptr for the DefaultPlatform · ffee558e
      Andreas Haas authored
      With this CL, {CreateDefaultPlatform} returns a unique_ptr to indicate
      that the caller owns the returned memory. We had several memory leaks
      where the memory of the DefaultPlatform did not get deallocated.
      
      In addition, the {TracingController} of the {DefaultPlatform} also gets
      received as a unique_ptr. Thereby we document that the {DefaultPlatform}
      takes ownership of the {TracingController}. Note that the memory of the
      {TracingController} was already owned by the {DefaultPlatform}, but it
      was not documented in the interface, and it was used incorrectly in
      tests.
      
      This CL fixes the asan issues in 
      https://chromium-review.googlesource.com/c/v8/v8/+/753583	
      ([platform] Implement TaskRunners in the DefaultPlatform)
      
      R=rmcilroy@chromium.org
      
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I0d1a6d3b22bb8289dc050b1977e4f58381cec675
      Reviewed-on: https://chromium-review.googlesource.com/755033Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49349}
      ffee558e
  8. 30 Aug, 2017 1 commit
  9. 03 Jul, 2017 1 commit
    • Jochen Eisinger's avatar
      Reland "Switch tracing to use v8::TracingController" · cc59f8b1
      Jochen Eisinger authored
      Original change's description:
      > Switch tracing to use v8::TracingController
      >
      > BUG=v8:6511
      > R=fmeawad@chromium.org
      >
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Change-Id: I4961e4b61a9ddc98385ed97c3ffcbcaef2d9cba7
      > Reviewed-on: https://chromium-review.googlesource.com/543144
      > Commit-Queue: Jochen Eisinger <jochen@chromium.org>
      > Reviewed-by: Fadi Meawad <fmeawad@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#46307}
      
      BUG=v8:6511
      TBR=fmeawad@chromium.org
      
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux64_tsan_rel
      Change-Id: Ide32b409248dfd466e7c0bae1d8ae61d6a955d98
      Reviewed-on: https://chromium-review.googlesource.com/558865
      Commit-Queue: Jochen Eisinger <jochen@chromium.org>
      Reviewed-by: 's avatarJochen Eisinger <jochen@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#46381}
      cc59f8b1
  10. 29 Jun, 2017 2 commits
  11. 26 Jun, 2017 1 commit
  12. 22 Jun, 2017 1 commit
  13. 10 May, 2017 3 commits
  14. 09 May, 2017 1 commit
    • Michael Achenbach's avatar
      Revert "Revert "Revert "Introducing an event loop mechanism for d8.""" · 02595c60
      Michael Achenbach authored
      This reverts commit 7dcc8eff.
      
      Reason for revert: Some flakes still (see comments) and breaks predictable testing:
      https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20predictable/builds/11452
      
      Original change's description:
      > Revert "Revert "Introducing an event loop mechanism for d8.""
      > 
      > This reverts commit f7c25da6.
      > 
      > Reason for revert: Fixed
      > 
      > Original change's description:
      > > Revert "Introducing an event loop mechanism for d8."
      > > 
      > > This reverts commit de964dbe.
      > > 
      > > Reason for revert:
      > > https://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/17958
      > > 
      > > Original change's description:
      > > > Introducing an event loop mechanism for d8.
      > > > 
      > > > This mechanism ensures APIs like wasm async complete their work, 
      > > > without requiring use of natives (%APIs).
      > > > 
      > > > The mechanism is similar to the one used in content_shell,
      > > > which should allow us to easily port tests in that environment.
      > > > 
      > > > Review-Url: https://codereview.chromium.org/2842843005
      > > > Cr-Original-Commit-Position: refs/heads/master@{#44908}
      > > > Bug: 
      > > > Change-Id: I9deee0d256a600c60b42902fc8ef8478e5546344
      > > > Reviewed-on: https://chromium-review.googlesource.com/494968
      > > > Commit-Queue: Mircea Trofin <mtrofin@google.com>
      > > > Reviewed-by: Jochen Eisinger <jochen@chromium.org>
      > > > Cr-Commit-Position: refs/heads/master@{#45165}
      > > 
      > > TBR=bradnelson@chromium.org,mtrofin@chromium.org,mtrofin@google.com,jochen@chromium.org
      > > NOPRESUBMIT=true
      > > NOTREECHECKS=true
      > > NOTRY=true
      > > 
      > > Change-Id: Iafec2615d705d1990c57229cab3a988c00b5e12f
      > > Reviewed-on: https://chromium-review.googlesource.com/498630
      > > Reviewed-by: Michael Achenbach <machenbach@chromium.org>
      > > Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#45166}
      > 
      > TBR=bradnelson@chromium.org,machenbach@chromium.org,mtrofin@chromium.org,mtrofin@google.com,jochen@chromium.org,v8-reviews@googlegroups.com
      > NOPRESUBMIT=true
      > NOTREECHECKS=true
      > NOTRY=true
      > 
      > Change-Id: Ic3c782e918326e291a6cb9bb349c609e9a340b09
      > Reviewed-on: https://chromium-review.googlesource.com/498430
      > Reviewed-by: Mircea Trofin <mtrofin@chromium.org>
      > Commit-Queue: Mircea Trofin <mtrofin@google.com>
      > Cr-Commit-Position: refs/heads/master@{#45172}
      
      TBR=bradnelson@chromium.org,machenbach@chromium.org,mtrofin@chromium.org,mtrofin@google.com,jochen@chromium.org,v8-reviews@googlegroups.com
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      
      Change-Id: I21ffba7141db0bfb4a3275b6e1bf4fb399800ed2
      Reviewed-on: https://chromium-review.googlesource.com/500128Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#45177}
      02595c60
  15. 08 May, 2017 3 commits
  16. 17 Mar, 2017 1 commit
  17. 07 Mar, 2017 1 commit
  18. 03 Jan, 2017 1 commit
  19. 10 Oct, 2016 1 commit
  20. 28 Sep, 2016 1 commit
    • zhengxing.li's avatar
      [tracing] Avoid Gcc compilation fail by declaring AddTraceEvent function in... · 990a8e39
      zhengxing.li authored
      [tracing] Avoid Gcc compilation fail by declaring AddTraceEvent function in Class derived from Platform Class.
      
        The CL #39789 (https://codereview.chromium.org/2367603002 ) caused the Gcc compilation fail for v8 debug mode.
        The error message was:
        In file included from .././include/libplatform/v8-tracing.h:13:0,
                         from .././src/libplatform/default-platform.h:14,
                         from ../src/libplatform/default-platform.cc:5:
        .././include/v8-platform.h:169:20: error: ‘virtual uint64_t v8::Platform::AddTraceEvent(char, const uint8_t*, const char*, const char*, uint64_t, uint64_t, int32_t, const char**, const uint8_t*, const uint64_t*, unsigned int)’ was hidden [-Werror=overloaded-virtual]
           virtual uint64_t AddTraceEvent(
                            ^
        In file included from ../src/libplatform/default-platform.cc:5:0:
        .././src/libplatform/default-platform.h:55:12: error:   by ‘virtual uint64_t v8::platform::DefaultPlatform::AddTraceEvent(char, const uint8_t*, const char*, const char*, uint64_t, uint64_t, int32_t, const char**, const uint8_t*, const uint64_t*, std::unique_ptr<v8::ConvertableToTraceFormat>*, unsigned int)’ [-Werror=overloaded-virtual]
           uint64_t AddTraceEvent(
                    ^
      
        This CL fixed this issue by adding "using Platform::AddTraceEvent;" before all declarations of AddTraceEvent functions in Classes derived from Platform Class.
      
      BUG=
      
      Review-Url: https://codereview.chromium.org/2380583002
      Cr-Commit-Position: refs/heads/master@{#39810}
      990a8e39
  21. 27 Sep, 2016 3 commits
  22. 26 Sep, 2016 1 commit
  23. 27 Jul, 2016 1 commit
  24. 26 Jul, 2016 2 commits
  25. 01 Mar, 2016 1 commit
  26. 26 Feb, 2016 1 commit
    • fmeawad's avatar
      Reland: Add Scoped Context Info (Isolate) to V8 Traces · 567e5839
      fmeawad authored
      This patch adds the newly added support for contexts in V8 Tracing, as well
      as use it to mark all the entry points for a V8 Isolate.
      
      Update for reland: The current tracing interface needs to be updated (AddTraceEvent),
      but the embedders need to migrate to the new version before removing the old version.
      (Reland of: https://codereview.chromium.org/1686233002)
      
      The revert happened because the 2 signatures of the old and new AddTraceEvent where different
      so it threw an overload-virtual error on cross arm debug. This issue is temporary, and to solve
      it, I added an implementation of the old and new everywhere until the embedder implements the new.
      
      BUG=v8:4565
      LOG=N
      
      R=jochen@chromium.org
      
      Review URL: https://codereview.chromium.org/1704253002
      
      Cr-Commit-Position: refs/heads/master@{#34332}
      567e5839
  27. 17 Feb, 2016 2 commits