)]}'
{
  "log": [
    {
      "commit": "7a3681e5b6c39bc2b3b62031ca5941dbf7bc4e63",
      "tree": "78c25e2a38b7efed8db770a623a5cbfb7eaab11d",
      "parents": [
        "ca5e0f49ca5df873a20c996755175b5c9c1e2ed9"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Apr 24 17:48:32 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed May 03 08:50:43 2017 -0700"
      },
      "message": "Move libc_log code into libasync_safe.\n\nThis library is used by a number of different libraries in the system.\nMake it easy for platform libraries to use this library and create\nan actual exported include file.\n\nChange the names of the functions to reflect the new name of the library.\n\nRun clang_format on the async_safe_log.cpp file since the formatting is\nall over the place.\n\nBug: 31919199\n\nTest: Compiled for angler/bullhead, and booted.\nTest: Ran bionic unit tests.\nTest: Ran the malloc debug tests.\nChange-Id: I8071bf690c17b0ea3bc8dc5749cdd5b6ad58478a\n"
    },
    {
      "commit": "9e27e58faa6ff08efbe85fc62943d483ecfed61a",
      "tree": "0042c5148071c78240b2915f3f053ac82406402c",
      "parents": [
        "e06c69d07324f3da67aa063202e698dedd831365"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 23 17:42:49 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Apr 06 10:59:24 2017 -0700"
      },
      "message": "Add support for disabling the greylist.\n\nUseful for testing whether apps have actually stopped using greylisted\nlibraries even if they still have references to them in their apk to support\nold Android releases but also haven\u0027t bumped their targetSdkVersion yet.\n\nSince we already have two expensive __system_property_get calls and this\nwould add a third, optimize two (but leave the third since it\u0027s not\nobviously amenable to optimization). None of this matters for user builds,\nbut I don\u0027t want userdebug/eng to have distractingly different performance.\n\n(cherrypick of 7933bec2872aa1c3430149c7649726333c0ac9d8.)\n\nBug: http://b/36106661\nTest: ran \"can you escape 5\" with and without this property\nChange-Id: Id9a804695c1dca9b4be2ebd0e72f01817bb13cba\n"
    },
    {
      "commit": "30a36273ab761fb07892f7816b4873b6c48a0cea",
      "tree": "98b9470ffdf08c56244bb66f2e595d8fda498ede",
      "parents": [
        "c9a840ac76c7cdbe6028ac91cdb8eb6698f0a854"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 22 17:31:41 2017 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 22 17:37:52 2017 -0800"
      },
      "message": "Cope with argv[0] being null in the dynamic linker.\n\nSomewhat unsurprisingly, very few commands are happy to be run like this,\nin particular multiplexed commands like toybox. But that\u0027s no reason for\nthe linker to get in the way too.\n\nBug: http://b/33276926\nTest: new test\nChange-Id: I6dd71ea0183f4da83571039c2198ebb6ed38520e\n"
    },
    {
      "commit": "fbe54c4fe8c35294d60efbe0d1d6466211d4dc40",
      "tree": "8907096bc43e2620b552ffefac25185607181d09",
      "parents": [
        "fec0e015ce0369b3ad710547f3d6af343b2cd5e1"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Feb 17 14:41:30 2017 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Feb 17 14:57:34 2017 -0800"
      },
      "message": "Fix debug.ld for apps with long names and services\n\n1. There is no longer limit on property names - remove\n   the trimming the name of the property.\n2. Make debug.ld work for processes with names ending with \":something\"\n   This is naming convention for services:\n   https://developer.android.com/guide/components/services.html\n\nBug: http://b/35338922\nBug: http://b/33926793\nTest: manual - set ld.debug.app property for the app\nTest: from http://b/35338922 and see that it works\nTest: for the service as well.\nChange-Id: Ic7c6d4edce4a5a22f144496d5c0a3e458217c6e4\n"
    },
    {
      "commit": "cf00d86935b8cc3d64909aa153270bb9f2d97beb",
      "tree": "45e1c590bd58b26fb3674bffb0bc008f0338a08c",
      "parents": [
        "cb0134d96ee67fc78082732835bcd7e5a4f5d63d"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Dec 14 14:30:37 2016 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Dec 14 14:30:37 2016 -0800"
      },
      "message": "Add a way to track all dlsym calls (contd.)\n\nThe followup for 4742abdcb52f16120016a5005c466230d4c46341\n\nChanges in this file got lost in the process of cherry-picking\nthe change across repositories.\n\nBug: http://b/29458203\nTest: flash, set debug.ld.all to dlsym and check\n      if there are messages in logcat\n\nChange-Id: I4613908e46e75c5d9ec66396767f10fc6d3e9777\n"
    },
    {
      "commit": "554374693408cd7c74d0cae596fca7349661edea",
      "tree": "3eb695917d4e37fc7f78a26202ec2119692fd964",
      "parents": [
        "a9fbaee593242b3257819c1603cdd157604247e7"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Jul 20 15:33:07 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Jul 20 16:10:19 2016 -0700"
      },
      "message": "Pass argc/argv/envp to dso constructors\n\nThe glibc implementation of the loader passes argc/argv/envp\nto all elf constructors. This change makes bionic linker\nbehave in the same way.\n\nBug: http://b/30145768\nChange-Id: I1c65c42aa5305a5b133c64b5748205bbde869e0e\nTest: run bionic-unit-tests --gtest_filter\u003ddl*:Dl*\n"
    },
    {
      "commit": "f857211675dcfe7abd311e4a7bef6d1685fb4a93",
      "tree": "56c17570f7bd648cc9de50b51262bc1d14b6dc08",
      "parents": [
        "c8d5d2a5246e97bc916795811bf6147caa71bc5d"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Jul 13 10:24:06 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Jul 13 10:33:15 2016 -0700"
      },
      "message": "Use trivial types to avoid calls to new for globals\n\nTo avoid initialization ordering problem avoid constructing\nnon-trivial global objects for linker_logger.\n\nThis patch also adds explicit check for bloc_size_ on alloc\n\nChange-Id: I2cb3b13a10b7fac1f52a20038af77266d3e1da96\n"
    },
    {
      "commit": "b996d60493a2e501655f23523b31fe34a63edd5c",
      "tree": "3c2935b0802487560a110483a1b510a10c1713ba",
      "parents": [
        "4580ea4f16a94087fe02b8a67744c1fd452a2139"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Jul 11 18:11:39 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Jul 12 14:22:13 2016 -0700"
      },
      "message": "linker: Enable debug logging via properties\n\nThis patch lets developers tune logging of dlopen/dlerror with\nsetting system property.\n\nNote that for security purposes this option is disabled on user build\nfor non-debuggable apps.\n\nFor starters there are 3 debug options:\n dlerror - enables logging of all dlerrors\n dlopen - traces dlopen calls\n\nTo enable system-wide logging (works only for userdebug/eng builds)\nuse debug.ld.all property.\n\nTo enable logging for particular app use debug.ld.app.\u003cappname\u003e property.\n\nExample: Running \"adb shell setprop debug.ld.all dlerror,dlopen\" will log all\ndlerror message as well as trace all calls to dlopen.\n\nBug: http://b/29458203\nChange-Id: I2392c80a795509e16fe5689d0500d18b99772a64\n"
    }
  ]
}
