)]}'
{
  "log": [
    {
      "commit": "cfd5b080af8de527d768f0ff7902c26af8d49307",
      "tree": "32295b3aeb6ba8a116592576939348d09814b0be",
      "parents": [
        "1edd61ce5d2f34ff34d015643b5915b3b1c186e8"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Mon Oct 17 14:28:00 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Oct 20 08:11:39 2016 -0700"
      },
      "message": "system/core: preparation to pull back interfaces from android/log.h\n\nPoint to log/log.h where necessary, define LOG_TAG where necessary.\nAccept that private/android_logger.h is suitable replacement for\nlog/logger.h and android/log.h.\n\nCorrect liblog/README\n\nEffectively a cleanup and controlled select revert of\n\u0027system/core: drop or replace log/logger.h\u0027 and\n\u0027system/core: Replace log/log.h with android/log.h\u0027.\n\nTest: compile\nBug: 30465923\nChange-Id: Ic2ad157bad6f5efe2c6af293a73bb753300b17a2\n"
    },
    {
      "commit": "ff2dcd9af994a23ed483939a416b48bdc10eefd5",
      "tree": "6e5a0dfe4e39c407eea7e39840eef5d56b720de4",
      "parents": [
        "66ce3e08c5632a20ea66bde6dd76397041edf034"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Sep 28 15:54:45 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Sep 30 12:47:05 2016 -0700"
      },
      "message": "system/core Replace log/log.h with android/log.h\n\nShould use android/log.h instead of log/log.h as a good example\nto all others.  Adjust header order to comply with Android Coding\nstandards.\n\nTest: Compile\nBug: 26552300\nBug: 31289077\nChange-Id: I33a8fb4e754d2dc4754d335660c450e0a67190fc\n"
    },
    {
      "commit": "3a14004c7f521cf2ca6dfea182fa7441e77c97e7",
      "tree": "f634112a0fb69a6ff197bd08232e5d34ebe4e229",
      "parents": [
        "4d346537208189d05f34a44212cfc02200bcd5a0"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jun 15 15:49:50 2016 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jun 16 23:28:11 2016 -0700"
      },
      "message": "Fix race condition updating local map data.\n\nIf the underlying local map changes, it\u0027s possible for multiple\nthreads to try and modify the map data associated with the UnwindLocalMap\nobject. Add a lock when generating the local map to avoid this problem.\n\nIn addition, add a read lock whenever any caller gets the maps iterator.\nUpdated all iterator callers to make this lock.\n\nBug: 29387050\nChange-Id: Ie34822c3d8fd3bdb3dd126aeeb399969c36508c1\n"
    },
    {
      "commit": "ec2ff8c176d795656e69aecfce9650db40bef60b",
      "tree": "c9674877458c79fb870f48c790d7fb9b9b1dbdb1",
      "parents": [
        "1607ea64cbdeea766c05d033afe0c65ea978b399"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Apr 18 14:45:46 2016 -0700"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Apr 18 14:45:46 2016 -0700"
      },
      "message": "Fix google-runtime-int warnings.\n\nBug: 28220065\nChange-Id: I6b8e121ddf98355d1c1ac034c2e3522b2b49e14b\n"
    },
    {
      "commit": "9ea0ff343fa673e7c452b2241bc9738e46e0f5b1",
      "tree": "b475b1d29ee3a93f3bafdb0a1c1dc47f4f65e5d4",
      "parents": [
        "bbada6b9423a802bbde3340904f21270adf88110",
        "fe3593dc2af46fdaf9c9a710133fce3e4a219cca"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Sep 23 05:35:05 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 23 05:35:05 2015 +0000"
      },
      "message": "Merge \"Clean up maps parsing in libbacktrace.\""
    },
    {
      "commit": "fe3593dc2af46fdaf9c9a710133fce3e4a219cca",
      "tree": "751184addbffc78b4cc035804f48d629811ca8d3",
      "parents": [
        "36856b7306b50e22f98c3299a6c951cb74fd1854"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Sep 22 17:26:24 2015 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Sep 22 17:26:24 2015 -0700"
      },
      "message": "Clean up maps parsing in libbacktrace.\n\n(This might want to be unified with the very similar code in bionic, but\nthat\u0027s a job for another day.)\n\nChange-Id: I5dade498f781305fa9909ee01f1f4bebc537c169\n"
    },
    {
      "commit": "9e402bb20cb868577e5588d8323363411655291b",
      "tree": "b21082ce26df5d7115f364ccb57d57f77e6bb4f2",
      "parents": [
        "94ece83270deca76c69f5755f8c0ff5c859341fd"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue Sep 22 04:46:57 2015 +0000"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue Sep 22 04:46:57 2015 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Revert \"Add BacktraceOffline for offline backtracing.\"\"\"\"\n\nThis reverts commit 94ece83270deca76c69f5755f8c0ff5c859341fd.\n\nChange-Id: Ie06465c89a5fc115517130f9f2904cc855973155\n"
    },
    {
      "commit": "94ece83270deca76c69f5755f8c0ff5c859341fd",
      "tree": "fd0566e4c014527ac9358b978a83c20c2b305308",
      "parents": [
        "0a411c934a81e5c77a27ef5b69d391038f36e969"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue Sep 22 01:38:17 2015 +0000"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue Sep 22 01:38:17 2015 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Add BacktraceOffline for offline backtracing.\"\"\"\n\nThis reverts commit 0a411c934a81e5c77a27ef5b69d391038f36e969.\n\nChange-Id: Ic1824afac6c32f1087b66de9d6368a561f235d13\n"
    },
    {
      "commit": "0a411c934a81e5c77a27ef5b69d391038f36e969",
      "tree": "b21082ce26df5d7115f364ccb57d57f77e6bb4f2",
      "parents": [
        "ee08fb53bb59cb5037755d68de09e6e5bc3f8bc6"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Sat Sep 19 02:08:35 2015 +0000"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Mon Sep 21 12:54:45 2015 -0700"
      },
      "message": "Revert \"Revert \"Add BacktraceOffline for offline backtracing.\"\"\n\nThis reverts commit ab5e583327e4dfd9f7c38ab6ed4c4714508ce544.\n\nAnd statically link llvm libraries on host to remove dependency\non 32-bit llvm shared library which is not included in the prebuilt.\n\nBug: 22229391\n\nChange-Id: I8210687655ee1809fd820ab2a6ca5dfaf3f9096d\n"
    },
    {
      "commit": "ab5e583327e4dfd9f7c38ab6ed4c4714508ce544",
      "tree": "9984881d38254299d0c93cf3ec9bbb84ca743858",
      "parents": [
        "c9c6b6ee7735f014771d81615c0278b53d14f61c"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Thu Sep 17 22:54:22 2015 +0000"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Thu Sep 17 22:54:22 2015 +0000"
      },
      "message": "Revert \"Add BacktraceOffline for offline backtracing.\"\n\nUsing llvm makes libbacktrace stops building for 32 bit on linux host x86_64.\n\nThis reverts commit c9c6b6ee7735f014771d81615c0278b53d14f61c.\n\nChange-Id: Ieb807db881d7bb3132cd09e25fd08c28766ca0a8\n"
    },
    {
      "commit": "c9c6b6ee7735f014771d81615c0278b53d14f61c",
      "tree": "0c76a529e0593f4278e38eafc9a8cc72cb6d8db4",
      "parents": [
        "c372a778626dffdf6d1be5f98eafa966a95be082"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Thu Aug 13 19:49:12 2015 -0700"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Wed Sep 16 17:38:23 2015 -0700"
      },
      "message": "Add BacktraceOffline for offline backtracing.\n\nIt is used by simpeleprf for stack unwinding.\n\nBug: 22229391\nChange-Id: I26d698610ccdc9545da837bc5a8a9ec787f27a6b\n"
    },
    {
      "commit": "5b439eaf938aa27b7db04225694be7d2a25af477",
      "tree": "1ca69f20e4b788a15d6117a39b59ed165bbe9dfd",
      "parents": [
        "db134ca20c297f018bca88232cb3c151065eda3d"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 30 15:11:34 2015 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 30 15:11:34 2015 -0700"
      },
      "message": "Fix unused argument error on darwin\n\nChange-Id: Ie90f7f32b5bd1496bd663c969d729ea3f96d2588\n"
    },
    {
      "commit": "2c43cff01d1271be451671567955158629b23670",
      "tree": "b08d199b9cc4d0b665d7dc844cadedf883d0590c",
      "parents": [
        "e29744d94df787fa83307572d90a954b1592f69b"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Mar 26 19:18:36 2015 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Mar 31 10:51:44 2015 -0700"
      },
      "message": "Refactor the code.\n\nThe object hierarchy was confusing and convoluted. This removes\na lot of unnecessary code, and consolidates the BacktraceCurrent\nand BacktraceThread code into BacktraceCurrent.\n\nChange-Id: I01c8407d493712a48169df49dd3ff46db4a7c3ae\n"
    },
    {
      "commit": "12385e3ad085aa1ac06c26529b32b688503a9fcf",
      "tree": "c73a344e4e481a95eae2e9a9fb2216ec09cf64a3",
      "parents": [
        "6289412222bfe26ebeef2ea9c422e828c11ffc30"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Feb 06 13:22:01 2015 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Feb 06 15:00:09 2015 -0800"
      },
      "message": "Move map data into backtrace data proper.\n\nThe backtrace structure used to include a pointer to a backtrace_map_t\nthat represented the map data for a particular pc. This introduced a\nrace condition where the pointer could be discarded, but the backtrace\nstructure still contained a pointer to garbage memory. Now all of the map\ninformation is right in the structure.\n\nBug: 19028453\nChange-Id: If7088a73f3c6bf1f3bc8cdd2bb4b62e7cab831c0\n"
    },
    {
      "commit": "b978a329efbe0e4489e8556f77bba689065f0499",
      "tree": "0ce62e1de2e9f669aa38c84d87ef7325dc44e009",
      "parents": [
        "1f5af3c26c0511a8aa1f5657a85a01c106940d74"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Aug 05 00:15:49 2014 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Aug 05 00:15:49 2014 -0700"
      },
      "message": "Add uncached argument to BacktraceMap::Create on darwin\n\nChange-Id: I247a98fc3b98879a0c34a975f9914ccec95d1a04\n"
    },
    {
      "commit": "b8c72957f072a687a4fb99dd7f2423d3f86e70d2",
      "tree": "68c5e0f632976892274ec613ad3a3b0709f08da7",
      "parents": [
        "72031ab8780ddbdfad84ea4a02ba7fe87566ee50"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Apr 18 14:12:35 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Apr 24 16:20:50 2014 -0700"
      },
      "message": "Change sprintf to snprintf calls.\n\nChange-Id: I8893246fcd541d97b02a1a4cac81c53c6cd2e394\n"
    },
    {
      "commit": "f4b0b7971c0333b7331c2f54384af5de0260ae75",
      "tree": "f5628ab3bebad1059166442cfeca10a91a1c981f",
      "parents": [
        "71de56a08cac3353334c2253748fdf8c37ec4aa1"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Feb 06 20:07:15 2014 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Feb 07 13:26:04 2014 -0800"
      },
      "message": "Fix logging errors inside ALOGV\n\nFix errors exposed by adding checking to disabled ALOGVs.\n\nChange-Id: I36b77bb0ad8dc7661b0f834f20d1179b86134d57\n"
    },
    {
      "commit": "df2906186b6952c57b1f662bfef0b65c9f8c2e0d",
      "tree": "e5ed8339b7fd42ff20047244f87106c8f1fa0d45",
      "parents": [
        "6ddabb7a1cc3080ae773acb045f69b5e6afee87a"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jan 22 19:21:07 2014 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jan 28 12:03:36 2014 -0800"
      },
      "message": "Re-enable libunwind for arm.\n\nUpdate to handle the new optimized way that libunwind works.\n\nIn addition, a small refactor of the BacktraceMap code.\n\nA few new tests of for good measure.\n\nChange-Id: I2f9b4f5ad5a0dfe907b31febee76e4b9b94fb76f\n"
    },
    {
      "commit": "db5911a08ab99140c67eb304e5aecc6ddd55aa39",
      "tree": "68dc5897b9d7f06c77da97ab296d3e74a5c66b6f",
      "parents": [
        "0a72d2930adcd3b3504448f71b25ebb88c2cc3cf"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sat Jan 18 13:55:54 2014 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sat Jan 18 13:55:54 2014 -0800"
      },
      "message": "Attempt to fix Mac build\n\nChange-Id: I1364255bfed7788a35531962508bad804b8d5b7f\n"
    },
    {
      "commit": "46756821c4fe238f12a6e5ea18c356398f8d8795",
      "tree": "f0a17c7afec73b58608ffe0230fad7d5c8f6371b",
      "parents": [
        "e847f429f43ae56aaa406697ca603c8469e2100b"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jan 14 20:16:30 2014 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jan 16 16:12:29 2014 -0800"
      },
      "message": "Rewrite libbacktrace to be all C++.\n\nThis includes removing the map_info.c source and replacing it with the\nBacktraceMap class to handle all map related code.\n\nChange all callers of libbacktrace map functionality.\n\nAlso modify the corkscrew thread code so that it doesn\u0027t need to build\nthe map twice (once in the corkscrew format and once in the libbacktrace\nformat).\n\nChange-Id: I32865a39f83a3dd6f958fc03c2759ba47d12382e\n"
    }
  ]
}
