1. 31 Jul, 2019 1 commit
    • Seth Brenith's avatar
      Reland "Add postmortem debugging helper library" · 0921e8f2
      Seth Brenith authored
      This is a reland of 517ab73f
      
      Updates since original: now compressed pointers passed to the function
      GetObjectProperties are required to be sign-extended. Previously, the
      function allowed zero-extended values, but that led to ambiguity on
      pointers like 0x88044919: is it compressed or is the heap range actually
      centered on 0x100000000?
      
      Original change's description:
      > Add postmortem debugging helper library
      >
      > This change begins to implement the functionality described in
      > https://docs.google.com/document/d/1evHnb1uLlSbvHAAsmOXyc25x3uh1DjgNa8u1RHvwVhk/edit#
      > for investigating V8 state in crash dumps.
      >
      > This change adds a new library, v8_debug_helper, for providing platform-
      > agnostic assistance with postmortem debugging. This library can be used
      > by extensions built for debuggers such as WinDbg or lldb. Its public API
      > is described by debug-helper.h; currently the only method it exposes is
      > GetObjectProperties, but we'd like to add more functionality over time.
      > The API surface is restricted to plain C-style structs and pointers, so
      > that it's easy to link from a debugger extension built with a different
      > toolchain.
      >
      > This change also adds a new cctest file to exercise some basic
      > interaction with the new library.
      >
      > The API function GetObjectProperties takes an object pointer (which
      > could be compressed, or weak, or a SMI), and returns a string
      > description of the object and a list of properties the object contains.
      > For now, the list of properties is entirely based on Torque object
      > definitions, but we expect to add custom properties in future updates so
      > that it can be easier to make sense of complex data structures such as
      > dictionaries.
      >
      > GetObjectProperties does several things that are intended to generate
      > somewhat useful results even in cases where memory may be corrupt or
      > unavailable:
      > - The caller may optionally provide a type string which will be used if
      >   the memory for the object's Map is inaccessible.
      > - All object pointers are compared against the list of known objects
      >   generated by mkgrokdump. The caller may optionally provide the
      >   pointers for the first pages of various heap spaces, to avoid spurious
      >   matches. If those pointers are not provided, then any matches are
      >   prefixed with "maybe" in the resulting description string, such as
      >   "maybe UndefinedValue (0x4288000341 <Oddball>)".
      >
      > Bug: v8:9376
      >
      > Change-Id: Iebf3cc2dea3133c7811bcefcdf38d9458b02fded
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1628012
      > Commit-Queue: Seth Brenith <seth.brenith@microsoft.com>
      > Reviewed-by: Yang Guo <yangguo@chromium.org>
      > Reviewed-by: Michael Stanton <mvstanton@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#62882}
      
      Bug: v8:9376
      Change-Id: I866a1cc9d4c34bfe10c7b98462451fe69763cf3f
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1717090Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Reviewed-by: 's avatarMichael Stanton <mvstanton@chromium.org>
      Commit-Queue: Seth Brenith <seth.brenith@microsoft.com>
      Cr-Commit-Position: refs/heads/master@{#63008}
      0921e8f2
  2. 24 Jul, 2019 1 commit
    • Zhi An Ng's avatar
      Revert "Add postmortem debugging helper library" · 6747e3a1
      Zhi An Ng authored
      This reverts commit 517ab73f.
      
      Reason for revert: Test failures https://bugs.chromium.org/p/v8/issues/detail?id=9538
      
      Original change's description:
      > Add postmortem debugging helper library
      > 
      > This change begins to implement the functionality described in
      > https://docs.google.com/document/d/1evHnb1uLlSbvHAAsmOXyc25x3uh1DjgNa8u1RHvwVhk/edit#
      > for investigating V8 state in crash dumps.
      > 
      > This change adds a new library, v8_debug_helper, for providing platform-
      > agnostic assistance with postmortem debugging. This library can be used
      > by extensions built for debuggers such as WinDbg or lldb. Its public API
      > is described by debug-helper.h; currently the only method it exposes is
      > GetObjectProperties, but we'd like to add more functionality over time.
      > The API surface is restricted to plain C-style structs and pointers, so
      > that it's easy to link from a debugger extension built with a different
      > toolchain.
      > 
      > This change also adds a new cctest file to exercise some basic
      > interaction with the new library.
      > 
      > The API function GetObjectProperties takes an object pointer (which
      > could be compressed, or weak, or a SMI), and returns a string
      > description of the object and a list of properties the object contains.
      > For now, the list of properties is entirely based on Torque object
      > definitions, but we expect to add custom properties in future updates so
      > that it can be easier to make sense of complex data structures such as
      > dictionaries.
      > 
      > GetObjectProperties does several things that are intended to generate
      > somewhat useful results even in cases where memory may be corrupt or
      > unavailable:
      > - The caller may optionally provide a type string which will be used if
      >   the memory for the object's Map is inaccessible.
      > - All object pointers are compared against the list of known objects
      >   generated by mkgrokdump. The caller may optionally provide the
      >   pointers for the first pages of various heap spaces, to avoid spurious
      >   matches. If those pointers are not provided, then any matches are
      >   prefixed with "maybe" in the resulting description string, such as
      >   "maybe UndefinedValue (0x4288000341 <Oddball>)".
      > 
      > Bug: v8:9376
      > 
      > Change-Id: Iebf3cc2dea3133c7811bcefcdf38d9458b02fded
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1628012
      > Commit-Queue: Seth Brenith <seth.brenith@microsoft.com>
      > Reviewed-by: Yang Guo <yangguo@chromium.org>
      > Reviewed-by: Michael Stanton <mvstanton@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#62882}
      
      TBR=yangguo@chromium.org,mvstanton@chromium.org,jgruber@chromium.org,tebbi@chromium.org,seth.brenith@microsoft.com
      
      Change-Id: Ia078f2e8d101d2375b5db88021b2d65d28f1b075
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:9376
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1716033Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Commit-Queue: Zhi An Ng <zhin@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62899}
      6747e3a1
  3. 23 Jul, 2019 1 commit
    • Seth Brenith's avatar
      Add postmortem debugging helper library · 517ab73f
      Seth Brenith authored
      This change begins to implement the functionality described in
      https://docs.google.com/document/d/1evHnb1uLlSbvHAAsmOXyc25x3uh1DjgNa8u1RHvwVhk/edit#
      for investigating V8 state in crash dumps.
      
      This change adds a new library, v8_debug_helper, for providing platform-
      agnostic assistance with postmortem debugging. This library can be used
      by extensions built for debuggers such as WinDbg or lldb. Its public API
      is described by debug-helper.h; currently the only method it exposes is
      GetObjectProperties, but we'd like to add more functionality over time.
      The API surface is restricted to plain C-style structs and pointers, so
      that it's easy to link from a debugger extension built with a different
      toolchain.
      
      This change also adds a new cctest file to exercise some basic
      interaction with the new library.
      
      The API function GetObjectProperties takes an object pointer (which
      could be compressed, or weak, or a SMI), and returns a string
      description of the object and a list of properties the object contains.
      For now, the list of properties is entirely based on Torque object
      definitions, but we expect to add custom properties in future updates so
      that it can be easier to make sense of complex data structures such as
      dictionaries.
      
      GetObjectProperties does several things that are intended to generate
      somewhat useful results even in cases where memory may be corrupt or
      unavailable:
      - The caller may optionally provide a type string which will be used if
        the memory for the object's Map is inaccessible.
      - All object pointers are compared against the list of known objects
        generated by mkgrokdump. The caller may optionally provide the
        pointers for the first pages of various heap spaces, to avoid spurious
        matches. If those pointers are not provided, then any matches are
        prefixed with "maybe" in the resulting description string, such as
        "maybe UndefinedValue (0x4288000341 <Oddball>)".
      
      Bug: v8:9376
      
      Change-Id: Iebf3cc2dea3133c7811bcefcdf38d9458b02fded
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1628012
      Commit-Queue: Seth Brenith <seth.brenith@microsoft.com>
      Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Reviewed-by: 's avatarMichael Stanton <mvstanton@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62882}
      517ab73f
  4. 09 May, 2019 1 commit
  5. 23 Oct, 2018 1 commit
  6. 28 Aug, 2018 1 commit
  7. 10 Aug, 2018 3 commits
    • Michael Achenbach's avatar
      Reland "[test] Add logic to run tests on Android" · b2537f21
      Michael Achenbach authored
      This is a reland of 4c094342
      
      Original change's description:
      > [test] Add logic to run tests on Android
      > 
      > This adds a new command abstraction for running commands on Android
      > using dockered devices on swarming.
      > 
      > The new abstraction handles pushing all required files to the device.
      > The logic used for pushing and running is reused from the perf runner.
      > 
      > This adds only the mjsunit test suite. Others will be handled in
      > follow up CLs. The suite logic is enhanced with auto-detection of files
      > to be pushed to devices, for e.g. load or import statements.
      > 
      > Some test cases need an extra resource section for specifying required
      > files.
      > 
      > Remaining failing tests are marked in the status files for later
      > triage.
      > 
      > Bug: chromium:866862
      > Change-Id: I2b957559f07fdcd8c1bd2f7034f5ba7754a31fb7
      > Reviewed-on: https://chromium-review.googlesource.com/1150153
      > Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
      > Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#55041}
      
      Bug: chromium:866862
      Change-Id: Icf7e04c75d4abeab7254d10ba21240e46b0022ae
      Reviewed-on: https://chromium-review.googlesource.com/1170643Reviewed-by: 's avatarSergiy Byelozyorov <sergiyb@chromium.org>
      Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#55059}
      b2537f21
    • Sergiy Byelozyorov's avatar
      Revert "[test] Add logic to run tests on Android" · 2071051e
      Sergiy Byelozyorov authored
      This reverts commit 4c094342.
      
      Reason for revert: Unfortunately this broke all perf builders.
      
      Original change's description:
      > [test] Add logic to run tests on Android
      > 
      > This adds a new command abstraction for running commands on Android
      > using dockered devices on swarming.
      > 
      > The new abstraction handles pushing all required files to the device.
      > The logic used for pushing and running is reused from the perf runner.
      > 
      > This adds only the mjsunit test suite. Others will be handled in
      > follow up CLs. The suite logic is enhanced with auto-detection of files
      > to be pushed to devices, for e.g. load or import statements.
      > 
      > Some test cases need an extra resource section for specifying required
      > files.
      > 
      > Remaining failing tests are marked in the status files for later
      > triage.
      > 
      > Bug: chromium:866862
      > Change-Id: I2b957559f07fdcd8c1bd2f7034f5ba7754a31fb7
      > Reviewed-on: https://chromium-review.googlesource.com/1150153
      > Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
      > Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#55041}
      
      TBR=machenbach@chromium.org,yangguo@chromium.org,sergiyb@chromium.org
      
      Change-Id: If80129810586b709dab762c9b5724888e15daec2
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: chromium:866862
      Reviewed-on: https://chromium-review.googlesource.com/1170962Reviewed-by: 's avatarSergiy Byelozyorov <sergiyb@chromium.org>
      Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#55058}
      2071051e
    • Michael Achenbach's avatar
      [test] Add logic to run tests on Android · 4c094342
      Michael Achenbach authored
      This adds a new command abstraction for running commands on Android
      using dockered devices on swarming.
      
      The new abstraction handles pushing all required files to the device.
      The logic used for pushing and running is reused from the perf runner.
      
      This adds only the mjsunit test suite. Others will be handled in
      follow up CLs. The suite logic is enhanced with auto-detection of files
      to be pushed to devices, for e.g. load or import statements.
      
      Some test cases need an extra resource section for specifying required
      files.
      
      Remaining failing tests are marked in the status files for later
      triage.
      
      Bug: chromium:866862
      Change-Id: I2b957559f07fdcd8c1bd2f7034f5ba7754a31fb7
      Reviewed-on: https://chromium-review.googlesource.com/1150153Reviewed-by: 's avatarSergiy Byelozyorov <sergiyb@chromium.org>
      Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#55041}
      4c094342
  8. 28 Mar, 2018 3 commits
  9. 26 Mar, 2018 2 commits
  10. 19 Jan, 2018 1 commit
  11. 17 Jan, 2018 1 commit
  12. 10 Nov, 2017 1 commit
  13. 11 Oct, 2017 1 commit
  14. 06 Jun, 2016 1 commit
  15. 03 Jun, 2016 1 commit