)]}'
{
  "log": [
    {
      "commit": "7827991d7fbef20037e555a04dab269f0a20c132",
      "tree": "428726edb3eed64180b311552a98a9f9e1d53f65",
      "parents": [
        "2ba3ae310ecd67ea78717cbcf6cd9e80548a78e7"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Thu Jun 30 18:39:54 2022 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Thu Jun 30 18:54:19 2022 -0700"
      },
      "message": "Fix scudo MTE tests.\n\nr.android.com/2108505 was intended to fix a crash in Scudo in\nthe case where the stack depot, region info or ring buffer were\nunreadable. However, it also ended up introducing a number of bugs into\nthe code. It failed to call __scudo_get_error_info if the page at the\nfault address was unreadable. This can happen in legitimate crash cases\nif a primary allocation was close to the boundary of a mapped region,\nor if the allocation was a secondary allocation with guard pages. It\nalso used long as the type for tags, whereas Scudo expects it to be\nchar. In combination this ended up causing most of the MTE tests to\nfail. Therefore, mostly revert that change.\n\nFix the original crash by null checking the pointers returned by\nAllocAndReadFully before proceeding with the rest of the function.\n\nBug: 233720136\nChange-Id: I04d70d2abffaa35fe315d15d9224f9b412a9825d\n"
    },
    {
      "commit": "381b89c8db97346e2276dd56b458d4531ef54c94",
      "tree": "6970cbd013c6e9ef0ad72f7980d4766254fcfd65",
      "parents": [
        "a09cace1d134e6d585d5c710f17ce971fd6909ab"
      ],
      "author": {
        "name": "liyong",
        "email": "liyong@allwinnertech.com",
        "time": "Tue May 24 16:37:10 2022 +0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu May 26 18:50:52 2022 -0700"
      },
      "message": "Fix scudo fault address processing.\n\nThe code doesn\u0027t properly check if data is not read properly, so\nmake it fail if reads fail. Also, change the algorithm so that\nfirst try and read the faulting page then 16 pages before and 16\npages after. Rather than trying to read every one of these pages,\nstop as soon as one is unreadable. This means that the total memory\npassed to the scudo error function is all valid data, rather than\npotentially being some uninitialized memory.\n\nAdded new unit tests to cover scudo address processing.\n\nBug: 233720136\n\nTest: All unit tests pass.\nTest: atest CtsIncidentHostTestCases\nChange-Id: I18a97bdee9a0c44075c1c31ccd1b546d10895be9\n"
    },
    {
      "commit": "757f299842657d994360d53fc9e5150dd96e2899",
      "tree": "579833ab909e3bc7d3290ec2c41a923c26f6ab24",
      "parents": [
        "fad82b6c15f0e8b6f6d5fc89ff6e632e6bea566c"
      ],
      "author": {
        "name": "Shikha Panwar",
        "email": "shikhapanwar@google.com",
        "time": "Fri Mar 25 19:43:14 2022 +0000"
      },
      "committer": {
        "name": "Shikha Panwar",
        "email": "shikhapanwar@google.com",
        "time": "Tue Apr 05 15:55:16 2022 +0000"
      },
      "message": "Make some debuggerd libraries available in apex com.android.virt\n\nTest: Build passed \u0026 tested the whole topic\nBug:227443903\n\nChange-Id: I113cd1e559307e191fec405206f23e1b4ce1a5fc\n"
    },
    {
      "commit": "a6fac881b208079c71a9cd55faa798348f06e3ca",
      "tree": "a54099e8cb620f0fd9f973c25608cfe0e183fb08",
      "parents": [
        "0326984c426f5ffc5c3af0a6241f9edb468e8482"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Mar 07 17:01:17 2022 -0800"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Mar 07 17:03:18 2022 -0800"
      },
      "message": "Remove dead non-proto tombstone reporting code.\n\nBug: 197981919\nChange-Id: I58a98070198ef0b686229bd54f87b9073df12d66\n"
    },
    {
      "commit": "a2739dae4e889986d522eaa6d28db08315fefb49",
      "tree": "99099abd708182482223a2df51505aabc9b77530",
      "parents": [
        "2e7bc19fc252c7581e8ff3fb3bd904ece97d3873"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Feb 02 17:00:42 2022 -0800"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Feb 02 17:02:50 2022 -0800"
      },
      "message": "Make crash_dump.policy a dependency of crash_dump.\n\ndebuggerd_test depends on it, and the easiest way to\nensure that the file is available when running the tests\nis to make it a dependency of crash_dump.\n\nChange-Id: Iebea8e0c49d8d49d52a434e4194e870793758988\n"
    },
    {
      "commit": "57e19ac46edd035d9b76c8e1cad0e77c75328400",
      "tree": "22cd6322c08f6f275e153e6c93b670a6f9545543",
      "parents": [
        "8e9beea947145e56cfcd57d43da6c5cd407eeb11",
        "47d784e9f2ffe128a5564b111698c0103e88d62b"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Nov 10 18:56:59 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 10 18:56:59 2021 +0000"
      },
      "message": "Merge \"Add a human readable description of the tagged_addr_ctrl value to tombstones.\""
    },
    {
      "commit": "47d784e9f2ffe128a5564b111698c0103e88d62b",
      "tree": "0736c074c014637e0603c633419face7050944bf",
      "parents": [
        "80fccb3c9a532ee9d16389de0d54dae88b091665"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Fri Nov 05 18:40:52 2021 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Fri Nov 05 18:59:26 2021 -0700"
      },
      "message": "Add a human readable description of the tagged_addr_ctrl value to tombstones.\n\nChange-Id: Ib9860b282cf749891e0f6ef7697669b94235c236\n"
    },
    {
      "commit": "7aad2567ee842ac046607b781da626893bb68c64",
      "tree": "0ed97ce8994412c8399d0de34410fc5eb866285d",
      "parents": [
        "e0e160c54bfe3fb040108d7d3de50549a649deb8"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Sep 24 00:06:38 2021 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Sep 24 11:55:36 2021 -0700"
      },
      "message": "Disable scudo when using svelte config.\n\nThis code was added, but a svelte config still tries to use scudo\nrelated code that doesn\u0027t exist.\n\nBug: 201007100\n\nTest: Ran unit tests on normal config.\nTest: Ran unit tests on svelte config.\nChange-Id: Ic84bae37717d213121aef182bac2f82dbee25213\n"
    },
    {
      "commit": "3784b9de463181f7fcadb5cd836423357095d42e",
      "tree": "da578e9873339262293cfe278bc18adc724ad605",
      "parents": [
        "2eaa82ea5ca780c63e85688ea5e79bf6211c0651"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Aug 26 21:18:43 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 01 13:27:48 2021 +0100"
      },
      "message": "Add libdexfile runtime dependency of libdexfile_support (reland).\n\nNecessary since static_libs doesn\u0027t propagate transitive dependencies\nin Soong.\n\nTest: m droid\nBug: 197856821\nBug: 169779783\nChange-Id: Ia70f8596228770451c95610be0e97783dabf3af3\n"
    },
    {
      "commit": "dc14d16f80cc813c89a5f0ee1e0d2b54458ce164",
      "tree": "8754817b6403a55f2bfe8be1a277be6c319497e2",
      "parents": [
        "832f1ebeec460645cc77d8817f2f062887ccac03"
      ],
      "author": {
        "name": "Rex Lin",
        "email": "rexcylin@google.com",
        "time": "Wed Sep 01 01:57:17 2021 +0000"
      },
      "committer": {
        "name": "Rex Lin",
        "email": "rexcylin@google.com",
        "time": "Wed Sep 01 01:57:17 2021 +0000"
      },
      "message": "Revert \"Add libdexfile runtime dependency of libdexfile_support.\"\n\nRevert \"Allow visibility on libdexfile for all libdexfile_suppor...\"\n\nRevert \"Add libdexfile runtime dependency of libdexfile_support.\"\n\nRevert \"Add libdexfile runtime dependency of libdexfile_support.\"\n\nRevert submission 1810760-libdexfile-runtime-2\n\nReason for revert: DroidMonitor: Potential culprit for Bug 198352910 - verifying through Forrest before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.\nReverted Changes:\nIf4da968e4:Add libdexfile runtime dependency of libdexfile_su...\nI80162942a:Allow visibility on libdexfile for all libdexfile_...\nIab18abc8e:Add libdexfile runtime dependency of libdexfile_su...\nI473d146d8:Add libdexfile runtime dependency of libdexfile_su...\n\nChange-Id: Iacab8e0a5c74e0c3185a155e35c28903aa9acb4a\n"
    },
    {
      "commit": "832f1ebeec460645cc77d8817f2f062887ccac03",
      "tree": "859870e5a0a179deda6023598eab1cc18a4f4348",
      "parents": [
        "f98bcdbac0bd8a30c184f0289799cdcbadd1db12"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Aug 26 21:18:43 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Aug 31 17:20:22 2021 +0100"
      },
      "message": "Add libdexfile runtime dependency of libdexfile_support.\n\nNecessary since static_libs doesn\u0027t propagate transitive dependencies\nin Soong.\n\nTest: m droid\nBug: 197856821\nBug: 169779783\nChange-Id: If4da968e4e2f7ab0aaedd097c914242d0e9eb73e\n"
    },
    {
      "commit": "e90a944c8a3863076206fedf20fbb6672e336c5e",
      "tree": "333429de8b121a4a626738233f5900f61ed93abd",
      "parents": [
        "4a9a79e3ff7fbd65ce00b36a51af6fc3e548511d"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Wed Aug 11 13:21:11 2021 -0700"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Wed Aug 11 13:21:11 2021 -0700"
      },
      "message": "debuggerd: add -fno-finite-loop to fix test.\n\nAfter compiler update, infinite side effect free loops are replaced with trap\ninstructions. So use -fno-finite-loop to disable this behavior.\n\nBug: 196162833\nTest: run debuggerd_test.\nChange-Id: I057263360a5df64af18c17a025fab48887d0b470\n"
    },
    {
      "commit": "a9ea7e5b8edfc6a497cd1d6316caeff943e068a9",
      "tree": "755ff54c706418fb7c67e0137565bae170277ef4",
      "parents": [
        "5e2363e14dc8d0b9e7bdaa95c91268de407d5752"
      ],
      "author": {
        "name": "Kalesh Singh",
        "email": "kaleshsingh@google.com",
        "time": "Thu Jun 17 15:49:50 2021 -0400"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 29 11:59:14 2021 -0700"
      },
      "message": "debuggerd_client: also log errors to the dump file.\n\nDumping stack in ANR can fail, but error message is only printed\nto logcat. To allow easier debugging of such cases we add the\nerror messages in the ANR file as well.\n\nAlso factor out some duplication, inline single-call functions to\ntheir call sites, and make some of the lambdas clearer by only having\nimplicit state unrelated to their primary purpose in captures but\npassing as arguments things they fundamentally need to do their job\n(and actually adding some duplication for time_left() which was subtle\nenough to fool me into thinking that we only needed one call of\nset_timeout(), which I\u0027ve renamed to update_timeout()).\n\nBug: 191172191\nTest: Manual\nChange-Id: I39a50ca5b72059bfeff48b010d3be44f19eb32fa\n"
    },
    {
      "commit": "813fd6d1fd826276ffbe6b18d8aab10968d2ee6d",
      "tree": "e63bf452a9fd38087b019abb0cdf49369e5dbf97",
      "parents": [
        "bd5d08c135adfa76cfed3a0687d7d4bb776b70df"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 25 14:42:51 2021 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 25 14:42:51 2021 -0700"
      },
      "message": "License boilerplate.\n\nBug: http://b/191499510\nTest: treehugger\nChange-Id: Ie0c34ec4713e04511a31ec033a097cb1c033fe79\n"
    },
    {
      "commit": "fe751c5a61c4501a187ae82a9cacffab1cba9d7e",
      "tree": "a1d6892f502e9e02b1b0a9e937e4d09e01011c6d",
      "parents": [
        "4f8a56f15de51ea3ecc08cd84748cdc56d640aaf"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Apr 16 09:40:40 2021 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon May 03 15:21:11 2021 -0700"
      },
      "message": "Re-add backtrace note about unreadable elf.\n\nWhen moving to the proto-ized tombstones, the note about unreadable\nelf files in a backtrace got lost. This re-adds it and adds a test\nto verify that the note properly shows up.\n\nBug: 185428454\n\nTest: Ran unit tests.\nChange-Id: I1150cc737772e1b79fd73ec5c782caadc4629421\n"
    },
    {
      "commit": "dbb83de0d509fa1e8209f70c3f04d9da0476da41",
      "tree": "ab4f54db7c8ae675058fecb0dece32f47695ad81",
      "parents": [
        "8b0a9e06bad4eea89f8f15d5381a5d702dfe2b0c"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Mar 01 23:13:13 2021 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Mar 01 23:45:29 2021 -0800"
      },
      "message": "libdebuggerd: store process uptime.\n\nApplication developers would like to know how long their process has\nbeen alive for to distinguish between crashes that happen immediately\nupon startup and crashes in regular operation.\n\nTest: manual\nChange-Id: Ia31eeadfcced358b478c7a7c7bb2e8a0252e30f4\n"
    },
    {
      "commit": "d69ad69a938a27021adfcc2435dc1fd2ad0c8e1a",
      "tree": "184b620c9b0cddc4b15efa718ddc3961d2ce3d64",
      "parents": [
        "d57652f15b078d06d9258094f8a951374a677f2c"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Tue Feb 16 19:02:14 2021 -0800"
      },
      "committer": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Fri Feb 19 12:59:05 2021 -0800"
      },
      "message": "[LSC] Add LOCAL_LICENSE_KINDS to system/core\n\nAdded SPDX-license-identifier-Apache-2.0 to:\n  bootstat/Android.bp\n  cli-test/Android.bp\n  code_coverage/Android.bp\n  cpio/Android.bp\n  debuggerd/crasher/Android.bp\n  debuggerd/proto/Android.bp\n  diagnose_usb/Android.bp\n  fs_mgr/libdm/Android.bp\n  fs_mgr/libfiemap/Android.bp\n  fs_mgr/liblp/Android.bp\n  fs_mgr/libsnapshot/Android.bp\n  fs_mgr/libstorage_literals/Android.bp\n  fs_mgr/libvbmeta/Android.bp\n  fs_mgr/tests/Android.bp\n  fs_mgr/tools/Android.bp\n  gatekeeperd/Android.bp\n  healthd/Android.bp\n  healthd/testdata/Android.bp\n  init/Android.bp\n  init/Android.mk\n  init/sysprop/Android.bp\n  init/test_kill_services/Android.bp\n  init/test_service/Android.bp\n  libappfuse/Android.bp\n  libasyncio/Android.bp\n  libbinderwrapper/Android.bp\n  libcrypto_utils/Android.bp\n  libcrypto_utils/tests/Android.bp\n  libdiskconfig/Android.bp\n  libgrallocusage/Android.bp\n  libkeyutils/mini_keyctl/Android.bp\n  libmodprobe/Android.bp\n  libnetutils/Android.bp\n  libpackagelistparser/Android.bp\n  libprocessgroup/Android.bp\n  libprocessgroup/cgrouprc/Android.bp\n  libprocessgroup/cgrouprc_format/Android.bp\n  libprocessgroup/profiles/Android.bp\n  libprocessgroup/setup/Android.bp\n  libqtaguid/Android.bp\n  libsparse/Android.bp\n  libstats/push_compat/Android.bp\n  libsuspend/Android.bp\n  libsync/Android.bp\n  libsystem/Android.bp\n  libsysutils/Android.bp\n  libusbhost/Android.bp\n  libutils/Android.bp\n  libvndksupport/Android.bp\n  libvndksupport/tests/Android.bp\n  llkd/Android.bp\n  llkd/tests/Android.bp\n  property_service/libpropertyinfoparser/Android.bp\n  property_service/libpropertyinfoserializer/Android.bp\n  property_service/property_info_checker/Android.bp\n  qemu_pipe/Android.bp\n  reboot/Android.bp\n  rootdir/Android.bp\n  rootdir/Android.mk\n  rootdir/avb/Android.bp\n  rootdir/avb/Android.mk\n  run-as/Android.bp\n  sdcard/Android.bp\n  set-verity-state/Android.bp\n  shell_and_utilities/Android.bp\n  storaged/Android.bp\n  toolbox/Android.bp\n  trusty/apploader/Android.bp\n  trusty/confirmationui/Android.bp\n  trusty/confirmationui/fuzz/Android.bp\n  trusty/coverage/Android.bp\n  trusty/fuzz/Android.bp\n  trusty/fuzz/test/Android.bp\n  trusty/gatekeeper/Android.bp\n  trusty/gatekeeper/fuzz/Android.bp\n  trusty/keymaster/Android.bp\n  trusty/keymaster/fuzz/Android.bp\n  trusty/libtrusty/Android.bp\n  trusty/libtrusty/tipc-test/Android.bp\n  trusty/secure_dpu/Android.bp\n  trusty/storage/interface/Android.bp\n  trusty/storage/lib/Android.bp\n  trusty/storage/proxy/Android.bp\n  trusty/storage/tests/Android.bp\n  trusty/utils/spiproxyd/Android.bp\n  trusty/utils/trusty-ut-ctrl/Android.bp\n  usbd/Android.bp\n  watchdogd/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD to:\n  debuggerd/Android.bp\n  fastboot/Android.bp\n  libkeyutils/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD\n    SPDX-license-identifier-MIT\nto:\n  libcutils/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT\nto:\n  fs_mgr/Android.bp\n  fs_mgr/libfs_avb/Android.bp\n  trusty/Android.bp\n  trusty/utils/rpmb_dev/Android.bp\n\nAdded SPDX-license-identifier-BSD\nto:\n  fastboot/fuzzy_fastboot/Android.bp\n\nBug: 68860345\nBug: 151177513\nBug: 151953481\n\nTest: m all\n\nExempt-From-Owner-Approval: janitorial work\nChange-Id: Id740a7d2884556081fdb68876584b25eb95e1bef\n"
    },
    {
      "commit": "c3a206ccda9a78dd45d06b7d68dbe83e1fba779e",
      "tree": "cd137e76557bf1aadffe3cb43e02ab642bc81c71",
      "parents": [
        "187b7d19504ca8bdcbc6217c06a117017b4c6287"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 16 20:01:20 2021 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 16 20:01:20 2021 +0000"
      },
      "message": "Revert \"[LSC] Add LOCAL_LICENSE_KINDS to system/core\"\n\nThis reverts commit 187b7d19504ca8bdcbc6217c06a117017b4c6287.\n\nReason for revert: system/core is multiple projects, not one.\n\nChange-Id: I790ea41741f8cd9b8b6db2f59a49e71fb0958fd6\n"
    },
    {
      "commit": "187b7d19504ca8bdcbc6217c06a117017b4c6287",
      "tree": "0656ad03ff6e56b17ab0d4a8677955cab2c16cba",
      "parents": [
        "83eae36647eef27b75b128c5bce4732229d2ca0d"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Fri Feb 12 17:48:16 2021 -0800"
      },
      "committer": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Tue Feb 16 04:10:03 2021 -0800"
      },
      "message": "[LSC] Add LOCAL_LICENSE_KINDS to system/core\n\nAdded SPDX-license-identifier-Apache-2.0 to:\n  bootstat/Android.bp\n  cli-test/Android.bp\n  code_coverage/Android.bp\n  cpio/Android.bp\n  debuggerd/crasher/Android.bp\n  debuggerd/proto/Android.bp\n  diagnose_usb/Android.bp\n  fs_mgr/libdm/Android.bp\n  fs_mgr/libfiemap/Android.bp\n  fs_mgr/liblp/Android.bp\n  fs_mgr/libsnapshot/Android.bp\n  fs_mgr/libstorage_literals/Android.bp\n  fs_mgr/libvbmeta/Android.bp\n  fs_mgr/tests/Android.bp\n  fs_mgr/tools/Android.bp\n  gatekeeperd/Android.bp\n  healthd/Android.bp\n  healthd/testdata/Android.bp\n  init/Android.bp\n  init/Android.mk\n  init/sysprop/Android.bp\n  init/test_kill_services/Android.bp\n  init/test_service/Android.bp\n  libappfuse/Android.bp\n  libasyncio/Android.bp\n  libbinderwrapper/Android.bp\n  libcrypto_utils/Android.bp\n  libcrypto_utils/tests/Android.bp\n  libdiskconfig/Android.bp\n  libgrallocusage/Android.bp\n  libkeyutils/mini_keyctl/Android.bp\n  libmodprobe/Android.bp\n  libnetutils/Android.bp\n  libpackagelistparser/Android.bp\n  libprocessgroup/Android.bp\n  libprocessgroup/cgrouprc/Android.bp\n  libprocessgroup/cgrouprc_format/Android.bp\n  libprocessgroup/profiles/Android.bp\n  libprocessgroup/setup/Android.bp\n  libqtaguid/Android.bp\n  libsparse/Android.bp\n  libstats/push_compat/Android.bp\n  libsuspend/Android.bp\n  libsync/Android.bp\n  libsystem/Android.bp\n  libsysutils/Android.bp\n  libusbhost/Android.bp\n  libutils/Android.bp\n  libvndksupport/Android.bp\n  libvndksupport/tests/Android.bp\n  llkd/Android.bp\n  llkd/tests/Android.bp\n  property_service/libpropertyinfoparser/Android.bp\n  property_service/libpropertyinfoserializer/Android.bp\n  property_service/property_info_checker/Android.bp\n  qemu_pipe/Android.bp\n  reboot/Android.bp\n  rootdir/Android.bp\n  rootdir/Android.mk\n  rootdir/avb/Android.bp\n  rootdir/avb/Android.mk\n  run-as/Android.bp\n  sdcard/Android.bp\n  set-verity-state/Android.bp\n  shell_and_utilities/Android.bp\n  storaged/Android.bp\n  toolbox/Android.bp\n  trusty/apploader/Android.bp\n  trusty/confirmationui/Android.bp\n  trusty/confirmationui/fuzz/Android.bp\n  trusty/coverage/Android.bp\n  trusty/fuzz/Android.bp\n  trusty/fuzz/test/Android.bp\n  trusty/gatekeeper/Android.bp\n  trusty/gatekeeper/fuzz/Android.bp\n  trusty/keymaster/Android.bp\n  trusty/keymaster/fuzz/Android.bp\n  trusty/libtrusty/Android.bp\n  trusty/libtrusty/tipc-test/Android.bp\n  trusty/secure_dpu/Android.bp\n  trusty/storage/interface/Android.bp\n  trusty/storage/lib/Android.bp\n  trusty/storage/proxy/Android.bp\n  trusty/storage/tests/Android.bp\n  trusty/utils/spiproxyd/Android.bp\n  trusty/utils/trusty-ut-ctrl/Android.bp\n  usbd/Android.bp\n  watchdogd/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD to:\n  debuggerd/Android.bp\n  fastboot/Android.bp\n  libkeyutils/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD\n    SPDX-license-identifier-MIT\nto:\n  Android.bp\n  libcutils/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT\nto:\n  fs_mgr/Android.bp\n  fs_mgr/libfs_avb/Android.bp\n  trusty/utils/rpmb_dev/Android.bp\n\nAdded SPDX-license-identifier-BSD\nto:\n  fastboot/fuzzy_fastboot/Android.bp\n\nBug: 68860345\nBug: 151177513\nBug: 151953481\n\nTest: m all\n\nExempt-From-Owner-Approval: janitorial work\nChange-Id: I5bd81adb5cdcf2b4dd4141b204eb430ff526af8f\n"
    },
    {
      "commit": "618cea3ebda342b39db103ac85e96a541d67b1f7",
      "tree": "b235edbe96d90d6541fbfed760e4398962e0b651",
      "parents": [
        "76e1e30f16d8de3e0de2dabcef3c774973b9dd9c"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jan 26 17:45:43 2021 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Jan 27 15:52:43 2021 -0800"
      },
      "message": "Remove use of libbase logging in libdebuggerd.\n\nlibbase logging uses getprogname() to get the default tag, which breaks\nfor the fallback handler which is statically linked into the dynamic\nlinker. Switch to libasync_safe for logging.\n\nTest: atest -c CtsSeccompHostTestCases:android.seccomp.cts.SeccompHostJUnit4DeviceTest#testAppZygoteSyscalls\nChange-Id: Ieeaf33fb26cff4ba7e1589d1d883ac2fcc74cf47\n"
    },
    {
      "commit": "76e1e30f16d8de3e0de2dabcef3c774973b9dd9c",
      "tree": "8e5d85f5ea79413c208c6b2dbac0961d31c6c586",
      "parents": [
        "e8cc75f059d9758fd255e46bd6f13b8a040820e0"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jan 26 15:53:11 2021 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jan 26 17:55:17 2021 -0800"
      },
      "message": "Reland protobuf tombstones.\n\nThis reverts the following commits:\n    e156ede145a7fc671c705d045d89b49922a758b5.\n    eda96eddcbdda9632166232b2363c7b84da0994d.\n    5ec54d1e843729cd1e38a2f791f001226a653e95.\n    1e45d3f2239333217d3252f78151f4294fda4e80.\n    a50f61f8fa903117a6df82d164628de310f16ae9.\n\nTest: treehugger\nTest: atest -c CtsSeccompHostTestCases:android.seccomp.cts.SeccompHostJUnit4DeviceTest#testAppZygoteSyscalls\nChange-Id: Ic2b1f489ac9f1fec7d7a33c845c29891f4306bbd\n"
    },
    {
      "commit": "1e45d3f2239333217d3252f78151f4294fda4e80",
      "tree": "efca6c6cb194e0693e74852e898e0d80b4cdd0f6",
      "parents": [
        "a50f61f8fa903117a6df82d164628de310f16ae9"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Tue Jan 26 12:36:12 2021 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Tue Jan 26 12:41:20 2021 +0000"
      },
      "message": "Revert \"libdebuggerd: add protobuf implementation.\"\n\nRevert \"Let crash_dump read /proc/$PID.\"\n\nRevert submission 1556807-tombstone_proto\n\nReason for revert: b/178455196, Broken test: android.seccomp.cts.SeccompHostJUnit4DeviceTest#testAppZygoteSyscalls on git_master on cf_x86_64_phone-userdebug\n\nReverted Changes:\nIde6811297:tombstoned: switch from goto to RAII.\nI8d285c4b4:tombstoned: make it easier to add more types of ou...\nId0f0fa285:tombstoned: support for protobuf fds.\nI6be6082ab:Let crash_dump read /proc/$PID.\nId812ca390:Make protobuf vendor_ramdisk_available.\nIeeece6e6d:libdebuggerd: add protobuf implementation.\n\nChange-Id: Ia0a1ee57e7630e01c495dc166218f665340aad7f\n"
    },
    {
      "commit": "92317d82c970cea68884c3e9efbb5d6441dd6fa2",
      "tree": "645cf2815080af43bcb156fc7a9dda5258084ec2",
      "parents": [
        "1091d24c162572c31e716d97b01a306ebce4d377"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Nov 09 14:42:01 2020 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Jan 21 15:40:23 2021 -0800"
      },
      "message": "libdebuggerd: add protobuf implementation.\n\nThis commit implements protobuf output for tombstones, along with a\ntranslator that should emit bytewise identical output to the existing\ntombstone dumping code, except for ancillary data from GWP-ASan and\nScudo, which haven\u0027t been implemented yet.\n\nTest: setprop debug.debuggerd.translate.translate_proto_to_text 1 \u0026\u0026\n        /data/nativetest64/debuggerd_test/debuggerd_test\nTest: for TOMBSTONE in /data/tombstones/tombstone_??; do\n        pbtombstone $TOMBSTONE.pb | diff $TOMBSTONE -\n      done\nChange-Id: Ieeece6e6d1c26eb608b00ec24e2e725e161c8c92\n"
    },
    {
      "commit": "cd27807bfe9264d17dab7add61f0ea245e17e26f",
      "tree": "5d8c33d9f323a94d2e76a6763586acc73606bbe6",
      "parents": [
        "e3e5ae9eae5f898c7fd2b382240564cc5c7147d7"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Dec 21 14:08:38 2020 -0800"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Jan 11 10:55:51 2021 -0800"
      },
      "message": "Remove ANDROID_EXPERIMENTAL_MTE.\n\nNow that the feature guarded by this flag has landed in Linux 5.10\nwe no longer need the flag, so we can remove it.\n\nBug: 135772972\nChange-Id: I02fa50848cbd0486c23c8a229bb8f1ab5dd5a56f\n"
    },
    {
      "commit": "2ec92cfc280c20c5526782c6e4b2e82fa00f8cbb",
      "tree": "258c85b03cf8033e795525dfd023bbddaf39533c",
      "parents": [
        "55015ffb820687d642f74ceca4a5642932f6b6c7"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Oct 27 16:25:45 2020 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Oct 28 10:57:51 2020 -0700"
      },
      "message": "libdebuggerd_handler_fallback: make vendor_ramdisk_available.\n\nTest: builds\nBug: 156098440\nChange-Id: I11466de73bbb3a30c10a7a9088954e37772b7a00\n"
    },
    {
      "commit": "864f15dd6d05abe77670e2e20fe7aa1819600e7c",
      "tree": "dd37358a2568729acacd33b6d279eb9466207e74",
      "parents": [
        "278f11b57425d3a14369049e866c597980677988"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Sep 14 20:27:36 2020 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Tue Sep 15 21:32:36 2020 -0700"
      },
      "message": "Dump the per-thread TAGGED_ADDR_CTRL value if available.\n\nThis value indicates whether memory tagging is enabled on a thread,\nthe mode (sync or async) and the set of excluded tags. This information\ncan sometimes be important for understanding an MTE related crash,\nso include it in the per-thread tombstone output.\n\nBug: 135772972\nChange-Id: I25a16e10ac7fbb2b1ab2a961a5279f787039000b\n"
    },
    {
      "commit": "d00a577c97f68725dc2488f9ee1e44a96f639c5d",
      "tree": "8f069edc434ef7cfa4726d590004151269e493c4",
      "parents": [
        "10e428dd77181003942542d8de5c4615b693c610"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Jul 20 23:11:16 2020 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Tue Jul 21 16:59:24 2020 -0700"
      },
      "message": "Statically link libminijail to debuggerd_test.\n\nWe do not install a 32-bit version of libminijail to 64/32 devices,\nwhich means that \"atest -a debuggerd_test\" always fails on 32-bit.\nFix it by statically linking libminijail.\n\nChange-Id: I1e5610d1353b4f5b718c1259825421c0c07d7c24\n"
    },
    {
      "commit": "f86225206df162b43b5a0518a9eaf747d60303c5",
      "tree": "7bf781dd784e55d63b5275f089e300d77e6a0877",
      "parents": [
        "e0edc7ec328e6775e081c30b42837eb84ff282a4"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Tue Apr 07 14:07:32 2020 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Apr 27 13:15:49 2020 -0700"
      },
      "message": "Add support for MTE error reports in tombstones.\n\nTeach debuggerd to use the new scudo APIs proposed in\nhttps://reviews.llvm.org/D77283 for extracing MTE error reports from crashed\nprocesses, and include those reports in tombstones if possible.\n\nBug: 135772972\nChange-Id: I082dfd0ac9d781cfed2b8c34cc73562614bb0dbb\n"
    },
    {
      "commit": "e2b76c5b001fab12df24d206894d17b3f5fd6d9b",
      "tree": "9ac8a4a1dae6216e4f51a177217d5cfd26fc8504",
      "parents": [
        "3de710f84f32d3dbfdaaea7f3d6f5dab63101f9f",
        "b72e74810ce1f5815b0a01b661b3da6ee1b14ef2"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Mar 30 19:03:41 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 30 19:03:41 2020 +0000"
      },
      "message": "Merge \"Move crash_dump into the runtime APEX.\""
    },
    {
      "commit": "a2cc8930440baa3295c30a2fdf3f27239ba34af5",
      "tree": "9cfec7eef9439f3bc34d5fe778320474031bc582",
      "parents": [
        "b33afa9d8da88cbda0df1a82358915aa7393899b"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Oct 23 21:32:43 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Mar 19 22:23:54 2020 +0000"
      },
      "message": "Remove use of static libdexfile to avoid linking in ART internal code.\n\n- Create a static library libunwindstack_no_dex without DEX support.\n- Use it in libdebuggerd_handler_fallback, whose only use is in the\n  linker, which shouldn\u0027t need that support.\n- Use it in init_first_stage, which doesn\u0027t need DEX support either.\n- Also need a libbacktrace_no_dex since it\u0027s in the dependency chain\n  from init_first_stage to libunwindstack_no_dex.\n\nAlso restrict the *_no_dex libs and libdebuggerd_handler_fallback as\nmuch as possible to avoid inadvertent use of these reduced\nfunctionality libs.\n\nTest: m init_first_stage on Cuttlefish\n  where BOARD_BUILD_SYSTEM_ROOT_IMAGE\u003dfalse\nTest: m system_image com.android.runtime\nTest: Build \u0026 boot\nTest: atest linker-unit-tests libunwindstack_unit_test debuggerd_test\nBug: 142944931\nBug: 151466650\nChange-Id: Iaacb29bfe602f3ca12a00a712e2a64c45ff0118b\n"
    },
    {
      "commit": "b72e74810ce1f5815b0a01b661b3da6ee1b14ef2",
      "tree": "2ae23dc93140861aa964c8ca7c2203979b785f18",
      "parents": [
        "780528e86bc0dfc62b462b07d8b8b69a21164b95"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Mar 16 18:14:13 2020 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Mar 18 10:38:04 2020 -0700"
      },
      "message": "Move crash_dump into the runtime APEX.\n\nA future change will introduce a version lock between linker and\ncrash_dump. Move crash_dump into the runtime APEX alongside linker in order to\nensure that they will be the same version even if the runtime APEX is updated.\n\nBug: 135772972\nChange-Id: Ic2eae31b6927eb0e8a62315ac141f50933c00bcc\nMerged-In: Ic2eae31b6927eb0e8a62315ac141f50933c00bcc\n"
    },
    {
      "commit": "e0b4bb1b2e239f3ea694d6d33f577ff5257723e7",
      "tree": "a8afee216256cfab73c2cd7306db355a45d5b2be",
      "parents": [
        "5ed0698b4194ac834f823d7aaa2d016c4029a890"
      ],
      "author": {
        "name": "Mitch Phillips",
        "email": "mitchp@google.com",
        "time": "Fri Feb 14 14:54:31 2020 -0800"
      },
      "committer": {
        "name": "Mitch Phillips",
        "email": "mitchp@google.com",
        "time": "Tue Feb 18 16:49:50 2020 -0800"
      },
      "message": "[GWP-ASan] Add GWP-ASan information to tombstones.\n\nGWP-ASan can provide information about a crash that it caused. Grab the\nGWP-ASan regions from the globals shared by the linker for crash-handler\npurpopses, pull the information from GWP-ASan, and display it.\n\nThis adds two regions:\n 1. Causality tracking by GWP-ASan. We now print a cause header about\n the crash, like `Cause: [GWP-ASan]: Use After Free on a 1-byte\n allocation at 0x7365bb3ff8`\n 2. Allocation and deallocation stack traces.\n\nBug: 135634846\nTest: atest debuggerd_test\n\nChange-Id: Id28d5400c9a9a053fcde83a4788f971e677d4643\n"
    },
    {
      "commit": "bd3ba782f25dbc357cf8ac75be340043a7fc03d6",
      "tree": "270ee86cafd1c0fe9d4c4ecbec34df0f1bace11c",
      "parents": [
        "60a55d91dcd4627991490141b9159a21924256fb"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Jan 21 15:21:08 2020 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Feb 03 08:57:46 2020 -0800"
      },
      "message": "build crash_dump.policy files using Android.bp\n\nuse Android.bp instead of Android.mk to build and install the\ncrash_dump.policy files. This also allows mainline modules to pull\nthe files into their apex (dependency wasn\u0027t handled for Android.mk)\n\nBug: 147914640\nTest: build, examine generated filesystem\nChange-Id: Iae92d4f9d683ccfddf1716e7eb2877b7bff0c737\n"
    },
    {
      "commit": "e40e4270e8fc539abfb11ba238ca6b3f308f0ab7",
      "tree": "e1ee46d104010b44a8fd75ca748601fcf04598e3",
      "parents": [
        "07892ea610a77bb67d33d3feed1cc79ad3cc8df5"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Jan 14 12:18:40 2020 -0800"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Jan 14 12:18:40 2020 -0800"
      },
      "message": "remove deprecated bp \u0027subdirs\u0027\n\nnoticed some, so thought I would remove them everywhere here\n\nBug: N/A\nTest: N/A\nChange-Id: I2978673b158d6c253914ea22f7f0129e446a5f91\n"
    },
    {
      "commit": "a48b41bcb8629c14210aa3102669e03267353274",
      "tree": "2a4a21987109d0e044b7fd3287eb3ef2be066798",
      "parents": [
        "cd652ea3dc78c8e9e18490b3883c287e0c5c2d45"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Dec 13 14:11:04 2019 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Dec 17 16:36:05 2019 -0800"
      },
      "message": "debuggerd: switch to using platform headers for DEBUGGER_SIGNAL.\n\nTest: treehugger\nChange-Id: Ie9736c4a077dba1029d2352bd94d47ce07323aec\n"
    },
    {
      "commit": "6cad139bccfdd82418a87ac5b71e5667b0e48dfa",
      "tree": "47526f64243b20bb1a17f3981c6622e0ac4335dd",
      "parents": [
        "30cda267c0215c8023dfbdff606d9bb87ace751b"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Aug 27 16:02:38 2019 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Aug 27 16:09:32 2019 -0700"
      },
      "message": "Mark some tests as requiring root.\n\nBug: http://b/140123924\nTest: mma\nChange-Id: I3ad277179018631c50d9295cdb173dd9dfa7ac59\n"
    },
    {
      "commit": "4ae266ccbddbd0a6529248ecd1b324feab261c0d",
      "tree": "8bff2bcc0625cd0ee8f3667f170ac6a8779842f3",
      "parents": [
        "5c421695f0d6139632692645f755c79d9f163fc1"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Apr 03 09:27:12 2019 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Apr 18 15:37:52 2019 -0700"
      },
      "message": "Add indicator that an elf is memory backed.\n\nModify the unwinder library to indicate that at least one of the stack\nframes contains an elf file that is unreadable.\n\nModify debuggerd to display a note about the unreadable frame and a possible\nway to fix it.\n\nBug: 129769339\n\nTest: New unit tests pass.\nTest: Ran an app that crashes and has an unreadable file and verified the\nTest: message is displayed. Then setenforce 0 and verify the message is\nTest: not displayed.\nChange-Id: Ibc4fe1d117e9b5840290454e90914ddc698d3cc2\n"
    },
    {
      "commit": "852b64e5493c0c170ed17b0a4594b9f9f0de5cb2",
      "tree": "78a97bc7e42c39da29e9be5bc010b3acaaff8604",
      "parents": [
        "d39f262aade690b799d3b40472bdc9e66c35e685"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Feb 20 17:01:24 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Sun Feb 24 22:04:11 2019 +0000"
      },
      "message": "Fix libdexfile dependencies to avoid direct dependency on libdexfile_external.\n\nIt should be dlopen\u0027ed lazily by libdexfile_support now.\n\nAlso change debuggerd_test to not link libunwindstack and its dependencies\nstatically - the static libs can overlap with the dynamic ones.\n\nTest: mmma system/core/debuggerd/\nTest: atest debuggerd_test\nTest: mmma system/core/{libunwindstack,libbacktrace}, run host gtests (cannot get atest to work)\nBug: 124827589\nBug: 123186083\nChange-Id: I9e7bf9bcbae499af4e1be4c9854bce441e2a7b55\n"
    },
    {
      "commit": "e31cfb609d1be26c6051ff6aae5bab3616222a41",
      "tree": "7d1fbac74a996ded35a26b46fdf42327a10986ba",
      "parents": [
        "1d7966bd462462224e4c0f9cb260eb5871a02dc8"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Feb 05 04:59:07 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Feb 12 22:03:48 2019 +0000"
      },
      "message": "Use new static target for libdexfile_support.\n\nThis is necessary since the dynamic one is now using dlopen(), which isn\u0027t\navailable in static builds.\n\nTest: m\nTest: mmma system/core/{libunwindstack,libbacktrace}, run host gtests (cannot get atest to work)\nBug: 123403798\nBug: 123186083\nChange-Id: I06a9cdfe7e7cc01427ffd54b66c8ebab88782260\n"
    },
    {
      "commit": "60eb19795bbcdeba162de104af1bcd14478ef230",
      "tree": "1b80fd0f80e32cda479f538279de6a34c7ed4262",
      "parents": [
        "9f5e9978c2b58ebdcc3d253c6e04e31e5b90a0e4"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jan 15 15:18:43 2019 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jan 29 17:57:14 2019 -0800"
      },
      "message": "Replace libbacktrace with libunwindstack directly.\n\nSmall modifications to the dump_stack method and added unit tests to\nverify the output.\n\nBug: 120606663\n\nTest: Unit tests pass, debuggerd run on processes on target.\nChange-Id: Id385a915b751abda3dd6baebed6c3ce498c3bf6e\n"
    },
    {
      "commit": "4175cee3cc6feda91d0ffaa5301b2119089a24f6",
      "tree": "c20feee1fe9a2f3e9a27263632c1ac73a8639b7f",
      "parents": [
        "79f304771c34819768c44dd5562024e5db5cd19e"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Jan 04 13:57:09 2019 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Jan 04 13:57:09 2019 -0800"
      },
      "message": "debuggerd_client: resolve tid to tgid when dumping Java stacks.\n\nBug: http://b/121438213\nTest: debuggerd_test32\nTest: debuggerd_test64\nChange-Id: I4d114c8b0c4586ba64de5b45b47b0ec5c10354f8\n"
    },
    {
      "commit": "bb4f2b440a5c970a3a522e94d69dae5fbaea81c6",
      "tree": "0792f75b20c1a2cfd8edc400b4ca7e8be0cf47bf",
      "parents": [
        "1baa19b1a6bec9c0b1b067eef378646c62d9bf1b"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Dec 19 14:28:33 2018 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Dec 19 21:04:35 2018 +0000"
      },
      "message": "Revert^2 \"Use libdexfile external API in libunwindstack.\"\n\nThis reverts commit cacf5bf6bca7e9806739a27589d8b6101c567c32.\n\nReason for revert: Re-apply with proper fix for VNDK visibility on marlin and sailfish.\n\nTest: Manual repro of http://b/121110092#comment1 on reported branch\nTest: atest CtsRenderscriptTestCases\nTest: mmma system/core/{libunwindstack,libbacktrace}, run host gtests\nTest: Make image, flash, and reboot device.\nTest: Forrest cts/art/gce-all: https://android-build.googleplex.com/builds/forrest/run/L00300000240828791\nTest: Forrest cts/bionic/gce-all: https://android-build.googleplex.com/builds/forrest/run/L05600000240682947 (shows 27/2958 failed, but it doesn\u0027t pass on Blackbox either: http://screen/xbjioEf6UgR)\nTest: Forrest cts/renderscript/gce-all: https://android-build.googleplex.com/builds/forrest/run/L66200000240680523\nBug: 119632407\nChange-Id: I601aa97eac8127e30d753405f8bc1fc4ae7f849f\n"
    },
    {
      "commit": "cacf5bf6bca7e9806739a27589d8b6101c567c32",
      "tree": "0dbf54f3f0647596c5dc00bca91c67a85aed35c7",
      "parents": [
        "8fd4435d532846b46fe47e52a6825a050d1af13c"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Dec 19 00:09:41 2018 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Dec 19 00:11:04 2018 +0000"
      },
      "message": "Revert \"Use libdexfile external API in libunwindstack.\"\n\nThis reverts commit 444e23d2fc6d7c6f799ff9e2f69c1a82d2960c5b.\n\nThe rest of the topic doesn\u0027t need to be reverted.\n\nReason for revert: Breaks renderscript on marlin and sailfish.\n\nTest: Manual repro of http://b/121110092#comment1 on reported branch\nTest: \"atest CtsRenderscriptTestCases\" on that branch\nTest: mmma system/core/{libunwindstack,libbacktrace}, run host gtests\nTest: Make image, flash, and reboot device.\nBug: 121110092, 119632407\nChange-Id: If1976b19ce386c95bc5bd4fd6d523745c167de18\n"
    },
    {
      "commit": "444e23d2fc6d7c6f799ff9e2f69c1a82d2960c5b",
      "tree": "259892bf4c90f2281bc7883352ff89f0ed4b148e",
      "parents": [
        "8f3ed624226941740ee0a818096dbda095badae8"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Nov 15 18:08:06 2018 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Dec 13 17:58:23 2018 +0000"
      },
      "message": "Use libdexfile external API in libunwindstack.\n\nTest: mmma system/core/{libunwindstack,libbacktrace}, run host gtests\nTest: Make image, flash, and reboot device.\nBug: 119632407\nChange-Id: I370f089a1b20ba432e136818b4325d46f99df708\n"
    },
    {
      "commit": "3c59cb8420ba9dc9c81e2d8a55cb0e884403dfc0",
      "tree": "649313b64707ccacb27b38e51e509b0d13a15cf5",
      "parents": [
        "67fe6f09d571401f5aff8c4ad4f814cb95089366"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 03 09:02:18 2018 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 03 09:02:18 2018 -0800"
      },
      "message": "C++17 is the default now.\n\nTest: builds\nChange-Id: I6814455e9ad2cdcf99ad66de38a3ad0bfb440d80\n"
    },
    {
      "commit": "ce841d91fb80f2f87aa43a82b8800704d324a99c",
      "tree": "fe6c760f5bd3a937570257c5059af97d9812d940",
      "parents": [
        "9da1f51c102e18ef88b7f244b2c871054e1dd9c8"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 06 18:26:42 2018 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 06 18:50:10 2018 -0700"
      },
      "message": "libdebuggerd: extract and print the fdsan table.\n\nThis commit only prints the raw value of the owner tag, pretty-printing\nwill come in a follow-up commit.\n\nTest: debuggerd `pidof adbd`\nTest: static_crasher fdsan_file + manual inspection of tombstone\nChange-Id: Idb7375a12e410d5b51e6fcb6885d4beb20bccd0e\n"
    },
    {
      "commit": "9da1f51c102e18ef88b7f244b2c871054e1dd9c8",
      "tree": "d7d5b9be943f16b52895e1cac69971474a691690",
      "parents": [
        "ddcee93c0138fc68dbc6320962a53cd4761ab94b"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 06 15:38:29 2018 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 06 18:50:10 2018 -0700"
      },
      "message": "crash_dump: pass the address of the fdsan table.\n\nPass the address of the fdsan table down to crash_dump so that we can\ndump the fdsan table along with the open file descriptor list.\n\nTest: debuggerd_test\nTest: manually ran an old static_crasher\nChange-Id: Icbac5487109f2db1e1061c4d46de11b016b299e3\n"
    },
    {
      "commit": "011ee12b1def041d71621da7740bf5784a5e6488",
      "tree": "5ff7a6883fd51d6a5e0a245cb085c6f3239282ad",
      "parents": [
        "7881135fa938fde4286a38b2304787ac070e6423"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue May 29 16:41:30 2018 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Sun Jun 10 08:32:24 2018 +0900"
      },
      "message": "Shared libs are supported in recovery mode\n\nadbd has been built as a static executable since the same binary was\ncopied to the recovery partition where shared library is not supported.\nHowever, since we now support shared library in the recovery partition,\nadbd is built as a dynamic executable.\n\nIn addition, the dependency from adbd to libdebuggerd_handler is removed\nas debuggerd is handled by the dynamic linker.\n\nA few more modules in /system/core are marked as recovery_available:\ntrue as they are transitive dependencies of the dynamic linker.\n\nThis change also includes ld.config.recovery.txt which is the linker\nconfig file for the recovery mode. It is installed to /etc/ld.config.txt\nand contains linker namespace config for the dynamic binaries under\n/sbin.\n\nBug: 63673171\nTest: `adb reboot recovery; adb devices` shows the device ID\nTest: Select \u0027mount /system\u0027 in the recovery mode, then `adb shell`.\n$ lsof -p `pidof adbd` shows that libm.so, libc.so, etc. are loaded from\nthe /lib directory.\n\nChange-Id: I363d5a787863f1677ee40afb5d5841321ddaae77\n"
    },
    {
      "commit": "a0e75045e6817a51e4e6b05880d871525a4d52fe",
      "tree": "5d65ece1bd5bcba61ff8617baa096c1e3a70b5ad",
      "parents": [
        "98c1b1ccf67113957f1e4d8678cf8b5a1fe747e1"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu May 24 14:11:00 2018 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu May 24 14:11:11 2018 +0900"
      },
      "message": "Build adbd for recovery\n\nadbd (and its dependencies) are marked as recovery_available:true so\nthat recovery version of the binary is built separately from the one for\nsystem partition. This allows us to stop copying the system version to\nthe recovery partition and also opens up the way to enable shared\nlibraries in the recovery partition. Then we can also build adbd as a\ndynamic executable.\n\nBug: 79146551\nTest: m -j adbd.recovery\nChange-Id: Ib95614c7435f9d0afc02a0c7d5ae1a94e439e32a\n"
    },
    {
      "commit": "25e2bbf874a598bccf3138c0b5a4b9f0638b6d82",
      "tree": "50e615d050ca21082c60564bfd2d1097ecec25a2",
      "parents": [
        "1d87ffd3f64da827573882ffab3be9c2ba5b3fd7"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu May 03 17:59:45 2018 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu May 03 17:59:45 2018 -0700"
      },
      "message": "Remove unnecessary references to libunwind.\n\nBug: 79209464\n\nTest: Builds.\nChange-Id: I4193ac664e3b118270a17fcc0131fb6c6e384c41\n"
    },
    {
      "commit": "40fdf3f4ab587f01d95b2ec119d817499b0edece",
      "tree": "ca59f23937fb33ebf7c1a6cf088eda0d0f7ce835",
      "parents": [
        "f88905d231367eeeb72379d9eb2debbadb47b788"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 27 16:12:06 2018 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 27 16:12:06 2018 -0700"
      },
      "message": "Add test_suites lines.\n\nBug: N/A\nTest: builds\nChange-Id: Ic5e2b9206bcfcb53c774989013b5db6aab462e42\n"
    },
    {
      "commit": "dc699a269f6a22af6cbba0f6e1359fde103dc4d3",
      "tree": "db8830dc9e776480c4bc2170d276582d57a9a83a",
      "parents": [
        "8c0c1ba98939a201f758fc3952ab59c7429132c2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 16 17:58:14 2018 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 16 17:58:14 2018 -0800"
      },
      "message": "bpfmt.\n\nBug: N/A\nTest: builds\nChange-Id: I89ad00e1c4c7e0767bc80a7ac7935a4d55e090ac\n"
    },
    {
      "commit": "0b06a590d9d949b9738266488d7fd2bc2d0b0557",
      "tree": "9088f2b7a33f42ad9478ee1a663a0ab5d71c65fd",
      "parents": [
        "b04bbccbb60ae303ecd083e5faa25f3168ba95cb"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jan 19 10:26:36 2018 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jan 23 13:17:48 2018 -0800"
      },
      "message": "Add extra frame when dex_pc is non-zero.\n\nUse the art dex file library to read the dex data.\n\nAdd unit tests for the UnwindDexFile code.\n\nBug: 72070049\n\nTest: All unit tests continue to pass.\nTest: Dumped the backtrace of the 137-cfi test while running in interpreter\nTest: mode and verified that the stack trace is correct. Did this on host\nTest: and for arm/arm64.\n\nChange-Id: Ia6f343318c5dd6968a954015a7d59fdf101575b0\n"
    },
    {
      "commit": "e04ca2794a49a9d20f7d99a7aa1a068934386351",
      "tree": "3b33e9676e1bc090b8f050e7e5b4534d87f1077d",
      "parents": [
        "55feb241b159a946ad3a24286baec3b8bf43a9e6"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jan 16 15:38:17 2018 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Jan 18 13:49:56 2018 -0800"
      },
      "message": "debuggerd: add seccomp policies and tests.\n\nBug: http://b/38508369\nTest: debuggerd_test32/64 on walleye and aosp_x86_64\nChange-Id: I7e69e37bcd1823d271b9f2b0a13b8c9cba9a8e84\n"
    },
    {
      "commit": "a42314e43614f29fd93547a85784dc4f1975f477",
      "tree": "8d428c900b79b4c0eb7b5f4da3bab9313fbd4790",
      "parents": [
        "51c2088f3be507f83c7580dd06c5e3c271116285"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Dec 19 15:08:19 2017 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Dec 19 16:36:04 2017 -0800"
      },
      "message": "debuggerd: add pause time benchmark.\n\nAdd a benchmark to measure how long we pause a process when dumping.\n\nBug: http://b/62112103\nTest: manually ran it\nChange-Id: Iceec2f722915b0ae26144c86dcbeb35793f963da\n"
    },
    {
      "commit": "2b2ae0c88ef83c4c53297ff54fa601b18c014fa4",
      "tree": "832d3ab764da9a63d4e22001f18045fa13078dd5",
      "parents": [
        "385ea22741ed5bad794fb6b1dff2b46481f241c4"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 21 14:31:17 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Dec 15 14:11:12 2017 -0800"
      },
      "message": "crash_dump: fork a copy of the target\u0027s address space.\n\nReduce the amount of time that a process remains paused by pausing its\nthreads, fetching their registers, and then performing unwinding on a\ncopy of its address space. This also works around a kernel change\nthat\u0027s in 4.9 that prevents ptrace from reading memory of processes\nthat we don\u0027t have immediate permissions to ptrace (even if we\npreviously ptraced them).\n\nBug: http://b/62112103\nBug: http://b/63989615\nTest: treehugger\nChange-Id: I7b9cc5dd8f54a354bc61f1bda0d2b7a8a55733c4\n"
    },
    {
      "commit": "ab9cf8b4cc7113c4ccd5186cb267b3453c98cea8",
      "tree": "6877cd125fad280c06e2dea62c40b3953ab94896",
      "parents": [
        "7de02203cc164bcf52a26c006f8bd7e3a0002184"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Oct 27 10:29:29 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Oct 27 15:18:27 2017 -0700"
      },
      "message": "Only call one unwinder.\n\nNobody is looking at the mismatches, and it can cause problems\nwith tombstone parsers.\n\nAlso, fix the dump_header_info test and remove unused properties_fake.cpp.\n\nTest: Ran unit tests, verified tombstones still work.\nChange-Id: I4261646016b4e84b26a5aee72f3227f1ce48ec9a\n"
    },
    {
      "commit": "fdf832dfd3b2f1be9d3ba831ff85b323a61ee8a3",
      "tree": "41f7132b05979b0187f91f264f45911f78015ea6",
      "parents": [
        "75a40988c0e7a35f2663b644989ce012b66f4586"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Aug 25 18:00:18 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 28 14:51:07 2017 -0700"
      },
      "message": "base: add Pipe and Socketpair wrappers.\n\nAlso, switch debuggerd_handler over to using android::base::unique_fd.\n\nTest: treehugger\nChange-Id: I97b2ce22f1795ce1c4370f95d00d769846cc54b8\n"
    },
    {
      "commit": "9a8c8557802d48015b2f31a654fdff18d50ec96e",
      "tree": "fd7b3f147fe1570b12ba2e83db1f01b91af45cbb",
      "parents": [
        "04fdec0bbf41cc252ecf6b7a98f58196dc940bc2"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Aug 11 15:29:19 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Aug 11 16:37:59 2017 -0700"
      },
      "message": "Compare new unwinder to old unwinder in debuggerd.\n\nIn debuggerd, when dumping a tombstone, run the new unwinder and verify\nthe old and new unwinder are the same. If not, dump enough information\nin the tombstones to figure out how to duplicate the failure.\n\nBug: 23762183\n\nTest: Builds, ran and forced a mismatch and verified output.\nChange-Id: Ia178bde64d67e623d4f35086ebda68aebbff0c3c\n"
    },
    {
      "commit": "33391dad155cb46053aeecdd3b2070cef717f07d",
      "tree": "b72bcdb75f564e4aaa2b906f0f9311d120ace70a",
      "parents": [
        "c10e14110a83efc8ca827cf5eef8b1e3b1a254c7"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Sat Jul 01 07:41:18 2017 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Sat Jul 01 07:41:48 2017 -0700"
      },
      "message": "Remove unnecessary SELinux dependencies\n\nThese are unused.\n\nTest: code compiles.\nChange-Id: Idd707dfcc8f6daac3a489c791ecc364841cf31f9\n"
    },
    {
      "commit": "0915f23d5f841a54c511157e16dc514080248f7b",
      "tree": "bffd2ead8ce80a136a203fd68313a6f808f09ff5",
      "parents": [
        "9cb2e2eb8cefcfca5133d01f29ab29005e1f2a46"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jun 27 14:08:05 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jun 27 15:06:57 2017 -0700"
      },
      "message": "debuggerd: diagnostics for dumps that are guaranteed to fail.\n\nPrint diagnostics when the user requests a dump that is guaranteed to\nfail, such as trying to dump a process you can\u0027t send a signal to.\n\nBug: http://b/63008395\nChange-Id: I5c6bf2a5751f858e0534990b8d2ab6932eb9f11d\nTest: manually tested\n"
    },
    {
      "commit": "3407d7c80f676c035b870ccae1ff0a3ba5817e0e",
      "tree": "9043da9aff38bfb1445ba06fde57498ebdb3c1f2",
      "parents": [
        "8a2a2d182a2ce14638142e78ea4308670984d2e0"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jun 13 17:21:12 2017 +0000"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jun 13 17:21:12 2017 +0000"
      },
      "message": "Revert \"crash_dump: defer pausing threads until we\u0027re ready.\"\n\nThis reverts commit 8a2a2d182a2ce14638142e78ea4308670984d2e0.\n\nBug: http://b/62572585\nChange-Id: Ia4278bca52178eb7b7b28b30d0930b292d97f353\n"
    },
    {
      "commit": "8a2a2d182a2ce14638142e78ea4308670984d2e0",
      "tree": "174d6c7ea5ea52c72829f662a2bb32b2d5ca2c51",
      "parents": [
        "8bb039073fa97f380d03392002a3a5bc542f5ace"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue May 30 15:47:05 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Jun 07 14:11:28 2017 -0700"
      },
      "message": "crash_dump: defer pausing threads until we\u0027re ready.\n\nDon\u0027t pause the threads we\u0027re going to dump until after we\u0027re about to\nfetch their backtraces.\n\nBug: http://b/62112103\nTest: debuggerd_test\nChange-Id: Id7ab0464842b35f98f3b3ebc42fb76161d8afbd2\n"
    },
    {
      "commit": "a73df601b7fe192001f4b9b5ddeb17b8efe3981b",
      "tree": "268e9df211bc6e81391f8e121e9ccde25c70b26c",
      "parents": [
        "844940d751be6cf6078c9e816fc09356034c1b26"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed May 24 15:07:25 2017 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed May 31 10:35:32 2017 +0100"
      },
      "message": "tombstoned: allow intercepts for java traces.\n\nAll intercept requests and crash dump requests must now specify a\ndump_type, which can be one of kDebuggerdNativeBacktrace,\nkDebuggerdTombstone or kDebuggerdJavaBacktrace. Each process can have\nonly one outstanding intercept registered at a time.\n\nThere\u0027s only one non-trivial change in this changeset; and that is\nto crash_dump. We now pass the type of dump via a command line\nargument instead of inferring it from the (resent) signal, this allows\nus to connect to tombstoned before we wait for the signal as the\nprotocol requires.\n\nTest: debuggerd_test\n\nChange-Id: I189b215acfecd08ac52ab29117e3465da00e3a37\n"
    },
    {
      "commit": "2d377cd6888775fe682e49a1ac34a3a6feb78708",
      "tree": "8821a7f29085d838f37d29e8cea22ae0c2998dfe",
      "parents": [
        "62db5fcee052980759ecb977cab4c63491e01e56"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed May 10 10:58:59 2017 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon May 22 16:55:21 2017 +0100"
      },
      "message": "tombstoned: Add a shared library version of libtombstoned_client...\n\n.. for ART and the frameworks to link against. In the new stack dumping\nscheme (see related bug), the Java runtime will communicate with\ntombstoned in order to obtain a FD to which it can write its traces.\n\nAlso move things around to separate headers that are private\nimplementation details from headers that constitute the public debuggerd\nAPI. There are currently only three such headers :\n\n- tombstoned/tombstoned.h\n- debuggerd/client.h\n- debuggerd/handler.h\n\nBug: 32064548\nTest: make\n\nChange-Id: If1b8578550e373d84828b180bbe585f1088d1aa3\n"
    },
    {
      "commit": "68c24eff7784ef5b18d46f27cdded04682c8448d",
      "tree": "e04239b23f615866747e69752dbce0b0e961efd8",
      "parents": [
        "823816ee9f3ee7519a282d3a089d23f0e96018ef"
      ],
      "author": {
        "name": "Chenjie Luo",
        "email": "cjluo@google.com",
        "time": "Mon May 08 15:18:40 2017 -0700"
      },
      "committer": {
        "name": "Chenjie Luo",
        "email": "cjluo@google.com",
        "time": "Mon May 08 15:18:40 2017 -0700"
      },
      "message": "Remove not-used dependency in crash_dump\n\nTest: Build crash_dump.\nChange-Id: I053cf53196b3e438545138ca8401a0ad01006a8c\n"
    },
    {
      "commit": "a4103a85b6e5ed7c54e44e081ccdd21cc4303cfd",
      "tree": "7930ad96da245a76b1fc4b9ce4e6c1314d386628",
      "parents": [
        "f3452d817886829669a7ff6dbce5b73d336caa52"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Sun May 07 12:48:03 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Sun May 07 13:22:01 2017 -0700"
      },
      "message": "Turn off debuggerd for host bionic\n\nBug: 31559095\nTest: Attempt to build host bionic\nChange-Id: Ie0b30417bdc2c59fd4793a79fd23dc9ccd398937\n"
    },
    {
      "commit": "ac225780dd6ccf217e5fb64c7af8f41f9c54f4a1",
      "tree": "e1d7d6ac5060a784e0ed675e3dfb6ef7da963e8a",
      "parents": [
        "8fc6cc8910dbb4c77333aa432b4732237157ed0b"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Apr 25 11:23:10 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue May 02 18:38:46 2017 -0700"
      },
      "message": "Move libc_logging to libasync_safe.\n\nMove the name of the \"private/libc_logging.h\" header to \u003casync_safe/log.h\u003e.\n\nFor use of libc_malloc_debug_backtrace, remove the libc_logging library.\nThe library now includes the async safe log functions.\n\nRemove the references to libc_logging.cpp in liblog, it isn\u0027t needed because\nthe code is already protected by a check of the __ANDROID__ define.\n\nTest: Compiled and boot bullhead device.\nTest: Run debuggerd unit tests.\nTest: Run liblog unit tests on target and host.\nTest: Run libmemunreachable unit tests (these tests are flaky though).\nChange-Id: Ie79d7274febc31f210b610a2c4da958b5304e402\n"
    },
    {
      "commit": "352a84574dd0f3be0c30d15c0c577c226ec28c2f",
      "tree": "ee40c1a995e3c639cb36f0778525d66c3d5981e3",
      "parents": [
        "460b336d6a05a8527633ab5c4509988ebb18ed30"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Mar 30 16:46:21 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Mar 30 16:49:19 2017 -0700"
      },
      "message": "tombstoned: add tests for b/36685795.\n\nAdd some tests for edge cases which may have triggered b/36685795.\n\nBug: http://b/36685795\nTest: debuggerd_test\nChange-Id: I20670684c8dae422af157be21e44ba5d6d3214d3\n"
    },
    {
      "commit": "ae9d7676a50875a58742797ac79b597017d492e8",
      "tree": "76b15c7a8424e9603656cf385fe2dfa24bab6b51",
      "parents": [
        "c0ca39c41ae2255ba86517ebe11c72b1fc44700d"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Mar 24 16:26:03 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Mar 27 16:11:38 2017 -0700"
      },
      "message": "debuggerd_client: properly wait for completion.\n\nUse an intermediate pipe to detect and report when a requested dump has\ncompleted.\n\nBug: http://b/35241370\nBug: http://b/35813071\nTest: debuggerd_test\nTest: manually triggered a background ANR\nChange-Id: If14aedf6071288360f1a7853d5a2ee79db121759\n"
    },
    {
      "commit": "e0cd1e043dbcbe9e4a134584b16339a753d2f69c",
      "tree": "1625815eb6c3713df1aaa19af5331ee4ba89e6de",
      "parents": [
        "e7b335b4712bc650c93b5b5777a6f8b1d85ad83f"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Mar 15 15:23:36 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Mar 15 15:44:00 2017 -0700"
      },
      "message": "Enable more modules on linux_bionic builds\n\nBug: 31559095\nTest: Enable host bionic, run soong\nChange-Id: Ib4ebd909322cf464b6a40040e4b60ece7d905b6f\n"
    },
    {
      "commit": "c7fe0600cc14f0324e8f603309c92263aefb7193",
      "tree": "c486ef25b49119623c5955db601439d56a1dc00a",
      "parents": [
        "f161e00289378e87b345412f182617a57742e604"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Mar 13 14:13:29 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Mar 13 14:13:29 2017 -0700"
      },
      "message": "crash_dump: fix warnings, turn on -Werror.\n\nTest: mma\nChange-Id: I0722fef7b513be976cbbe89f73e8bb7138a80442\n"
    },
    {
      "commit": "e1aa0ca58a2a356039047ffcc8a98d85d1bce8ed",
      "tree": "46c90399acd3b3fa76538e26b528ee005cbb8872",
      "parents": [
        "4e5e797d26272dc08b6336def8d7878443881f0e"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Mar 01 17:23:22 2017 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Mar 09 11:26:05 2017 -0800"
      },
      "message": "debuggerd_handler: implement missing fallback functionality.\n\nAllow the fallback implementation to dump traces and create tombstones\nin seccomped processes.\n\nBug: http://b/35858739\nTest: debuggerd -b `pidof media.codec`; killall -ABRT media.codec\nChange-Id: I381b283de39a66d8900f1c320d32497d6f2b4ec4\n"
    },
    {
      "commit": "e73c932373e59e4c0351cc7a8bd8cc5b8910d87e",
      "tree": "b8b8a1945ab8caba4b31ad1440a055033276bf00",
      "parents": [
        "f6ad5851e689f54c9dee6bfc6668ca726726e818"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Feb 08 16:06:26 2017 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Feb 15 17:03:44 2017 -0800"
      },
      "message": "libdebuggerd_handler: in-process crash dumping for seccomped processes.\n\nDo an in-process unwind for processes that have PR_SET_NO_NEW_PRIVS\nenabled.\n\nBug: http://b/34684590\nTest: debuggerd_test, killall -ABRT media.codec\nChange-Id: I62562ec2c419d6643970100ab1cc0288982a1eed\n"
    },
    {
      "commit": "0ba535976f1ee871fe4beb3f718e00293f4e0094",
      "tree": "9a3df38993fc9d39b90c2c9e0c1dcd433d0d1266",
      "parents": [
        "afe25958b66f6186ada566a7c4af6b776b00cc42"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 01 16:59:15 2017 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 01 18:43:03 2017 -0800"
      },
      "message": "Better seccomp/kuser_helper diagnostics from debuggerd.\n\nAlso switch to Android.bp for crasher.\n\nBug: http://b/34629282 (seccomp)\nBug: http://b/34705831 (seccomp)\nBug: http://b/34884086 (kuser_helpers)\nTest: manual\nChange-Id: I8ee79c635518faeba751742919af69a505b5e3e1\n"
    },
    {
      "commit": "cbe70cb0a8cb0171f3802273050e851a47b090ed",
      "tree": "87a2805f11d9fa5283fe169d9b155f5b08a94f85",
      "parents": [
        "4c5c9db17b55bfcb2d62eec158440d0e794e30bb"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Oct 18 18:17:52 2016 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jan 17 13:57:57 2017 -0800"
      },
      "message": "debuggerd: advance our amazing bet.\n\nRemove debuggerd in favor of a helper process that gets execed by\ncrashing processes.\n\nBug: http://b/30705528\nTest: debuggerd_test\nChange-Id: I9906c69473989cbf7fe5ea6cccf9a9c563d75906\n"
    },
    {
      "commit": "9eb02c973fc088cf61ab7fb7d9f9782b46239cb2",
      "tree": "485c776ceae7031e24c9ecb724efa39ce9c5da73",
      "parents": [
        "e23e0914ff602f9f9de823b9890a9b83be6e11ec"
      ],
      "author": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Tue Aug 09 14:04:05 2016 -0400"
      },
      "committer": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Tue Aug 09 14:04:05 2016 -0400"
      },
      "message": "Define TARGET_IS_64_BIT when building libdebuggerd_client for android64.\n\nThis is needed to connect to the right debuggerd server for the crashing\nprocess. Without this change, the following errors are observed, because a\n32-bit process is trying to connect to the 64-bit debuggerd (as opposed to\ndebuggerd32):\n\n  Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 14153 (static_crasher)\n  debuggerd: handling request: pid\u003d14153 uid\u003d0 gid\u003d0 tid\u003d14153\n  debuggerd: Not allowed to redirect action 0 to 32 bit debuggerd\n\nBug: 24414818\nChange-Id: I2f275fbc804b0abc6e876a743e51dd8494817103\n"
    },
    {
      "commit": "9c02dc5916c1cee43e4a0840d0d5099878e3793c",
      "tree": "405ed24030a9db302c1d8e0b770c748a54974c9c",
      "parents": [
        "2d690a920f1b2f67e267160083aab711b35ab3fc"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Jun 15 17:29:00 2016 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Jun 17 13:11:29 2016 -0700"
      },
      "message": "debuggerd: add libdebuggerd_client.\n\nBug: http://b/24414818\nChange-Id: I079c534d2c952b6975bf0428eb86cc7a55525737\n"
    }
  ]
}
