Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update handler 2023-02-08 #34

Merged
merged 27 commits into from
Feb 8, 2023

Commits on Dec 14, 2022

  1. Remove tools/mac/crash_report

    This is pretty rotted and unmaintained, and nobody seems to be using it.
    
    Bug: None
    Change-Id: I965393dd75d995d5c7d55bea6d9b256e89a7421b
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4107469
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    speednoisemovement committed Dec 14, 2022
    Configuration menu
    Copy the full SHA
    33b8438 View commit details
    Browse the repository at this point in the history
  2. Add option to use API key in upload_system_symbols

    Adds a new option, `-api-key`. If passed, `symupload` is invoked with
    the `sym-upload-v2` protocol, the key is passed through, and the V2 API
    upload servers are used.
    
    Bug: 1400770
    Change-Id: I81255dccc54038a57900058a050603b89e37d716
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4103749
    Reviewed-by: Robert Sesek <rsesek@chromium.org>
    speednoisemovement committed Dec 14, 2022
    Configuration menu
    Copy the full SHA
    387a002 View commit details
    Browse the repository at this point in the history
  3. Mac dump_syms: delete unused WriteSymbolFile

    Bug: None
    Change-Id: I5aec8c07a01ee180c817fa79db39f9c2eb933e37
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4004598
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    speednoisemovement committed Dec 14, 2022
    Configuration menu
    Copy the full SHA
    6b7e8a8 View commit details
    Browse the repository at this point in the history

Commits on Dec 15, 2022

  1. Cleanup strncmp and use string_view in elf_reader.cc.

    Change-Id: I74c755f1ade80bb4313e4fd14e5dc6bab419a0a6
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4099505
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    ZequanWu authored and markmentovai committed Dec 15, 2022
    Configuration menu
    Copy the full SHA
    63af0cd View commit details
    Browse the repository at this point in the history
  2. upload_system_symbols: Fix sym-upload-v2 when uploading dumped symbols

    This was previously setting the right upload servers too late to
    use them when uploading previously dumped symbols (the
    `--upload-from` use case)
    
    Bug: 1400770
    Change-Id: If5bb749707b9f0a181585619f30ec9cb011db5ed
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4111102
    Reviewed-by: Robert Sesek <rsesek@chromium.org>
    speednoisemovement committed Dec 15, 2022
    Configuration menu
    Copy the full SHA
    80430d7 View commit details
    Browse the repository at this point in the history

Commits on Dec 21, 2022

  1. Handle compressed DWARF data in LoadDwarfCFI

    Emit STACK CFI records even in the presence of clang's "-gz" linker
    option. Needed for ChromeOS ARM boards' chrome binary.
    
    BUG=b:263148951,google-breakpad:874
    Fixed: google-breakpad:874
    
    Change-Id: I2fe697a56d3421609128d4e291ab1adc73314864
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4117692
    Reviewed-by: Ivan Penkov <ivanpe@chromium.org>
    Reviewed-by: Joshua Peraza <jperaza@chromium.org>
    ianby committed Dec 21, 2022
    Configuration menu
    Copy the full SHA
    b14bb95 View commit details
    Browse the repository at this point in the history

Commits on Dec 27, 2022

  1. Fix test breakage from 9aa786f

    After
    https://chromium.googlesource.com/breakpad/breakpad/+/9aa786f03dbd1fca98eeae42c35c54d61b2a83b9,
    attempts to roll breakpad into ChromeOS fail with:
    
    make[1]: *** No rule to make target 'src/testing/googletest/src/gtest-all.cc', needed by 'src/testing/googletest/src/client_linux_linux_client_unittest_shlib-gtest-all.o'.  Stop.
    
    (see
    https://logs.chromium.org/logs/chromeos/buildbucket/cr-buildbucket/8794115289064657457/+/u/run_SDK_package_unit_tests/call_chromite.api.TestService_BuildTargetUnitTest/stdout,
    the result of dry-running
    https://chrome-internal-review.googlesource.com/c/chromeos/manifest-internal/+/5238479,
    which just updates the breakpad revision to
    b14bb95.)
    
    Change-Id: Ia6e47c044e74499a849f8b615594f403893d7653
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4120547
    Reviewed-by: Mike Frysinger <vapier@chromium.org>
    ianby committed Dec 27, 2022
    Configuration menu
    Copy the full SHA
    6e03dc0 View commit details
    Browse the repository at this point in the history

Commits on Dec 29, 2022

  1. Fix memory leak in Module::AddExtern

    If adding a duplicate extern, we need to `delete` the extra `Extern`
    object regardless of the value of enable_multiple_field_.
    
    Fixes ASAN build of ChromeOS:
    https://logs.chromium.org/logs/chromeos/buildbucket/cr-buildbucket/8793433395207218433/+/u/run_ebuild_tests/chromeos-base_google-breakpad_log
    
    BUG=b:263148951
    
    Change-Id: Ib6c20e9c7aa38b1530e4bac8acbf481cc9136c36
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4129701
    Reviewed-by: Joshua Peraza <jperaza@chromium.org>
    ianby committed Dec 29, 2022
    Configuration menu
    Copy the full SHA
    79326eb View commit details
    Browse the repository at this point in the history

Commits on Jan 4, 2023

  1. upload_system_symbols: Don't retry if file already exists on the server

    Bug: 1400770
    Change-Id: I4c9c683c91848f7eb404ff3c86187dfa63d06e37
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4117730
    Reviewed-by: Robert Sesek <rsesek@chromium.org>
    speednoisemovement committed Jan 4, 2023
    Configuration menu
    Copy the full SHA
    d91b6cb View commit details
    Browse the repository at this point in the history

Commits on Jan 10, 2023

  1. Fix more memory leaks with proper smart pointer usage

    Fix more memory leaks, specifically for Module::Extern and
    Module::StackFrameEntry that were outside the Module's AddressRange.
    
    To fix this, and to prevent issues like the one fixed by
    https://chromium.googlesource.com/breakpad/breakpad/+/79326ebe9446add03e76b4422ff8036e812224d2
    in the future, switched to proper use of std::unique_ptr for Module's
    Extern and StackFrameEntry functions. These should enforce ownership
    correctly and make the ownership flow much more visible and clear.
    
    Change-Id: I7c943dff3501836a5e303febedc1b312e6f0a1fe
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4129821
    Reviewed-by: Joshua Peraza <jperaza@chromium.org>
    ianby committed Jan 10, 2023
    Configuration menu
    Copy the full SHA
    1eafed6 View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2023

  1. Decode Mach EXC_RESOURCE and EXC_GUARD exception reasons

    Change-Id: Iafe85ae2149961f13ba44664c99e18d92d1ec654
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4172753
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    rsesek committed Jan 17, 2023
    Configuration menu
    Copy the full SHA
    bae7147 View commit details
    Browse the repository at this point in the history

Commits on Jan 18, 2023

  1. upload_system_symbols: Make /System/Library/Components optional

    Bug: 1400770
    Change-Id: I81cb981bb9ca208ac2af9e27c00e75cab1c14717
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4178413
    Reviewed-by: Robert Sesek <rsesek@chromium.org>
    speednoisemovement committed Jan 18, 2023
    Configuration menu
    Copy the full SHA
    934d6b2 View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2023

  1. Mac dump_syms: work around NXFindBestFatArch bug

    On macOS 13 x86_64 machines, NXFindBestFatArch does not correctly find
    arm64e slices. This is filed as FB11955188.
    
    I was hoping manually masking the subtype with CPU_SUBTYPE_MASK would
    be sufficient to work around but no luck. So let's just fall through
    to doing an exact* match if NXFindBestFatArch fails.
    
    * "Exact" meaning with CPU_SUBTYPE_MASK now masked off. But
    libmacho/arch.c calls that exact too, so I'm just going to go with it.
    
    Bug: 1400770
    Change-Id: Id497946d3c719285c5d7508e589e4a466da1ceca
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4178621
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    speednoisemovement committed Jan 19, 2023
    Configuration menu
    Copy the full SHA
    dd0ca9d View commit details
    Browse the repository at this point in the history
  2. Fix Cygwin builds after enabling c++17 mode.

    Remove the "noext" argument to AX_CXX_COMPILE_STDCXX(), so the configure
    script can figure out what works, instead of only allowing strict
    conformance mode.
    
    See discussion on https://crrev.com/c/3954471, which lead to this CL.
    
    Change-Id: I7688db2e267485003ae8f776fa3ca0dd63205b47
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4072453
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    leizleiz committed Jan 19, 2023
    Configuration menu
    Copy the full SHA
    b024566 View commit details
    Browse the repository at this point in the history

Commits on Jan 20, 2023

  1. Add address mask to MinidumpCrashpadInfo.

    Support reading both old and new crashpad_info structs.
    
    Change-Id: I780792988671683fedfbb5122fe8a14bf0a8b793
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/3982824
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    Justin Cohen authored and Justin Cohen committed Jan 20, 2023
    Configuration menu
    Copy the full SHA
    fc1a202 View commit details
    Browse the repository at this point in the history
  2. Use portable PRIu64 for printing uint64_t address_mask.

    Change-Id: I12b3970adc06cb48e9112726b423ab61271d0044
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4184479
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    Justin Cohen authored and Justin Cohen committed Jan 20, 2023
    Configuration menu
    Copy the full SHA
    2c86c99 View commit details
    Browse the repository at this point in the history

Commits on Jan 26, 2023

  1. Add support for reading annotation objects in Crashpad modules

    At the moment, the Minidump class only supports reading simple and
    list annotations from Crashpad minidumps. This change adds support
    for reading annotation objects stored in Crashpad modules
    (MDRawModuleCrashpadInfo) and exposes them via a new getter in
    MinidumpCrashpadInfo.
    
    Change-Id: I033fc4a4fdff5901babc2472e0150f79af56b830
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4195756
    Reviewed-by: Joshua Peraza <jperaza@chromium.org>
    Zaid Elkurdi authored and Joshua Peraza committed Jan 26, 2023
    Configuration menu
    Copy the full SHA
    a4f148b View commit details
    Browse the repository at this point in the history

Commits on Jan 27, 2023

  1. Update LICENSE file.

    Change-Id: I36d77f3efb30bf83911e25b7f9de6cfe1cdb2e7e
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4199755
    Reviewed-by: Joshua Peraza <jperaza@chromium.org>
    Justin Cohen authored and Joshua Peraza committed Jan 27, 2023
    Configuration menu
    Copy the full SHA
    236743e View commit details
    Browse the repository at this point in the history
  2. LibcurlWrapper uses curl_global_cleanup

    LibcurlWrapper is missing a curl_global_cleanup causing a memory
    leak. The curl_global_init is called automatically when calling
    curl_easy_init without first doing curl_global_init.
    
    BUG=chromium:1405410
    TEST=units with asan
    
    Change-Id: I4982fd5265b0df91076ed428f1134a681a7f28c6
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4189295
    Reviewed-by: Joshua Peraza <jperaza@chromium.org>
    Jason Jeremy Iman authored and Joshua Peraza committed Jan 27, 2023
    Configuration menu
    Copy the full SHA
    bae713b View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2023

  1. Mac: add shell script to coordinate dumping and uploading macOS syste…

    …m symbols.
    
    This checks in an edited version of a script that has been used by the
    Chrome Mac team for this purpose. It expects to reside in the same
    place as `dump_syms`, `dsc_extractor`[0], `symupload` and `upload_system_symbols` binaries.
    
    When called, it will:
    - Locate and extract any dyld_shared_caches found on the system
    - Dump the above
    - Dump any remaining uncached system libraries
    - Write the results to a directory passed as an argument
    - Provide (but not call) an `upload_system_symbols` invocation
    to upload the results
    
    [0] Not yet checked in
    
    Bug: 1400770
    
    Change-Id: I30610c23d0c979e34dd3830eeedb5ceeae8ce66b
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4111109
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    speednoisemovement committed Jan 30, 2023
    Configuration menu
    Copy the full SHA
    95857a1 View commit details
    Browse the repository at this point in the history

Commits on Jan 31, 2023

  1. Remove disassembler_objdump from the build on non-linux platforms.

    Change-Id: I29d628ac7cf79bfca1794ba325c945a0f122b360
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/3964364
    Reviewed-by: Ivan Penkov <ivanpe@chromium.org>
    c01db33f authored and Ivan Penkov committed Jan 31, 2023
    Configuration menu
    Copy the full SHA
    f617814 View commit details
    Browse the repository at this point in the history
  2. Add ScopedTmpFile.

    This replaces the existing AutoTestFile implementation with a simpler
    implementation that uses O_TMPFILE to avoid having the temporary files
    linked in the filesystem.
    
    Refactor the existing tests to use the new ScopedTmpFile instead of
    duplicating the same ScopedTestFile wrapper into each test.
    
    Change-Id: Iee9416e52269eff271f748ec9d822aee6e28f59a
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/3971917
    Reviewed-by: Lei Zhang <thestig@chromium.org>
    c01db33f authored and Ivan Penkov committed Jan 31, 2023
    Configuration menu
    Copy the full SHA
    9a87ff6 View commit details
    Browse the repository at this point in the history
  3. Add ScopedPipe.

    This provides a similar wrapper to ScopedTmpFile for linux pipes.
    
    Change-Id: I53b377085322f61d87525d215ecd703f13ae9ae7
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/3971918
    Reviewed-by: Lei Zhang <thestig@chromium.org>
    c01db33f authored and Ivan Penkov committed Jan 31, 2023
    Configuration menu
    Copy the full SHA
    5daa419 View commit details
    Browse the repository at this point in the history
  4. Refactor DisassemblerObjdump.

    This change removes ScopedTmpFile from DisassemblerObjdump, and
    replaces it with the use of the implementation in linux/common.
    
    It also switches to using ScopedPipe to read the output from objdump,
    and directly execing objdump instead of using system.
    
    Change-Id: I6d425190fb4a20d6b265c72aa7315026687cb86a
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/3971919
    Reviewed-by: Ivan Penkov <ivanpe@chromium.org>
    c01db33f authored and Ivan Penkov committed Jan 31, 2023
    Configuration menu
    Copy the full SHA
    38115b0 View commit details
    Browse the repository at this point in the history

Commits on Feb 6, 2023

  1. Change CLANG_CXX_LANGUAGE_STANDARD from "c++0x" to "c++17".

    * This fixes build errors with `xcodebuild`.
    * CLANG_CXX_LANGUAGE_STANDARD represents "-std" (e.g. "=std=c++17").
    
    Change-Id: Ibeeccb2d77518d2e767a6cf4840ff673427d98ba
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4218220
    Reviewed-by: Mike Frysinger <vapier@chromium.org>
    Reviewed-by: Nelson Billing <nbilling@google.com>
    hiroyuki-komatsu authored and Joshua Peraza committed Feb 6, 2023
    Configuration menu
    Copy the full SHA
    bc25ffb View commit details
    Browse the repository at this point in the history

Commits on Feb 7, 2023

  1. Fix Mac build

    https://chromium.googlesource.com/breakpad/breakpad/+/f6178140175800cc6385a151e7f23d6e5c4968ca
    missed marking `IsCanonicalAddress` Linux-only.
    
    Bug: None
    Change-Id: Ia936db4b5541f22abcc884d410e7eae3818b4c0f
    Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/4227418
    Reviewed-by: Mark Mentovai <mark@chromium.org>
    speednoisemovement committed Feb 7, 2023
    Configuration menu
    Copy the full SHA
    5687ac5 View commit details
    Browse the repository at this point in the history

Commits on Feb 8, 2023

  1. Configuration menu
    Copy the full SHA
    78cdc72 View commit details
    Browse the repository at this point in the history