)]}'
{
  "log": [
    {
      "commit": "d73be1b96beab812b86f8174e7fc928291f0cb44",
      "tree": "2239b8c02d02461fe5f39d823301e784bd95c763",
      "parents": [
        "ffa38cfc1ea33de4ddddb291cc70cc507506b758"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Apr 13 23:48:57 2017 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Apr 17 14:44:17 2017 -0700"
      },
      "message": "libcutils: compile with BOARD_VNDK_VERSION current\n\n- moved __android_log_is_debuggable to a new public header\n    (log_properties.h)\n- vendor version of sched_policy uses ALOG* instead SLOG*\n\nTest: (sanity) liblog-unit-tests\nTest: (sanity) libcutils_test (noting b/b/32972117, two tests continue\n  to fail)\nTest: system/core as a whole makes with BOARD_VNDK_VERSION :\u003d current\n  now with no problems.\nTest: boots/works on internal marlin\nBug: 33241851\n\n(cherry picked from commit 1f83aa424f537cf3f07e1d27dbbcc524818b5358)\n\nMerged-In: I5bc1f348dc0f0c8814bec5b5c3d2c52c825ab640\nChange-Id: I5bc1f348dc0f0c8814bec5b5c3d2c52c825ab640\n"
    },
    {
      "commit": "b5aa4e712597ce5568e07050fa38ab852412e37a",
      "tree": "640c0be99a23d03922beac2a42958c53b3f5a189",
      "parents": [
        "9ea359fce0e401cd7a95fe1ac4e1c9926e2a6eb5"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Mon Mar 28 15:39:26 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Oct 14 08:04:19 2016 -0700"
      },
      "message": "libcutils: use __android_log_is_debuggable()\n\nTest: compile and boot smoke test\nBug: 27566046\nBug: 31456426\nChange-Id: I8ee9d999a2e6a0336e45b6180ce6fd7975c113dc\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": "23ed4c242a01052696dde84babd7631a7ec5a691",
      "tree": "62fcd90d415d77216ac354f76dd4a26b85cdb4d3",
      "parents": [
        "6584d0a35ab7722bdc6590525dee29f72f0ec576"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Sep 28 13:33:27 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Sep 30 12:47:05 2016 -0700"
      },
      "message": "libcutils: Replace cutils/log.h with android/log.h\n\nReplace references to cutils/log.h and log/log.h with android/log.h.\nPoint cutils/log.h to android/log.h. Adjust header order to comply\nwith Android Coding standards.\n\nTest: Compile\nBug: 26552300\nBug: 31289077\nChange-Id: I4b00c0dff3a0a50cbb54301fdc5a6c29c21dab65\n"
    },
    {
      "commit": "9993e799f1bffc20837eaf4a0260152f58041bae",
      "tree": "aaaa9ac0e78ad3f045c1933cf6d92327af477dec",
      "parents": [
        "efee71c2defdea4f105d2ff71950f935d6ff2a27"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Sep 16 10:12:52 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 21 17:45:31 2016 -0700"
      },
      "message": "Hide warning in cutils/trace.h\n\nsystem/core/include is included in the global include path using\n-isystem, which hides all warnings.  cutils/trace.h has an ignored\nreturn value warning, move the implementation to trace-dev.c so it\ndoesn\u0027t cause warnings in every module that includes it in preparation\nfor moving from -isystem to -I.\n\nTest: m -j native\nBug: 31492149\nChange-Id: If8b3fe13059c9e59c2d5208294d427d84fa6e588\n"
    },
    {
      "commit": "c19588cfc81e4e464040a2a556fc970f5039cc3b",
      "tree": "1c19c8af015f5d3be85c71cb575c34fa40148dce",
      "parents": [
        "ded0f36822864506ca950466fb1de37de78ab51b"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Thu Apr 28 19:33:09 2016 -0700"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Fri Apr 29 10:56:41 2016 -0700"
      },
      "message": "atrace: read package names from multiple sysprops\n\nbug: 28200530\nChange-Id: I4597a84f4fb16098b0e57684cde5e57c1f41eed5\n"
    },
    {
      "commit": "82d84897b1f17ccda1e32098af11a25bd9f6127a",
      "tree": "91588aabf938b8c1a080add3f4f55a2ce612236b",
      "parents": [
        "aa2cf3facf8d26a3642c90cbf5b83e18934da48c"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Feb 23 18:02:20 2016 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Feb 25 14:02:00 2016 -0800"
      },
      "message": "Fix incorrect handling of snprintf return value.\n\nThe code assumed that snprintf would never return a value less than\nthe passed in size of the buffer. This is not accurate, so fix all\nof the places this assumptions is made. Also, if the name is too large,\nthen truncate just the name to make everything fit.\n\nAdded a new set of tests for this code. Verified that the old code passes\non the _normal and _exact version of the tests, but fails with the\nFORTIFY error on the _truncated version of the tests. All tests pass\non the new code.\n\nBug: 27324359\n\n(cherry picked from commit 626efb78a6e1f0b2d637368f1eba175cfe89fb1c)\n\nChange-Id: Iba60a926cf5a1d6b517a6bfd8c797d724f093010\n"
    },
    {
      "commit": "dee1ef48a97e5412b3bd1d7e5a3e2b81f3741dc4",
      "tree": "d2e5580f1348f03eb483d5d609decbcbe3c1abd1",
      "parents": [
        "db72fe1772bb8e9ef72b737f231266a49a1ec042"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Dec 16 12:32:26 2015 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Dec 16 12:32:26 2015 -0800"
      },
      "message": "trace-dev.c: more O_CLOEXEC\n\nStop the file descriptors from leaking.\n\nChange-Id: Ib5ca1c2e5031fbec8751bde9e86b32e51e10fcbc\n"
    },
    {
      "commit": "a8ac32c7815569add9ed3d729864d3b9cdbb5fce",
      "tree": "26020b2d12275fcf83014f4edae3ad2b3a98c1d0",
      "parents": [
        "89e2f942181feab45e7dab5b6d3183da0475a295"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Wed Apr 15 14:50:27 2015 -0700"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Thu Apr 16 10:41:16 2015 -0700"
      },
      "message": "Move trace.h to stdatomic.\n\nBug: 20262261\nChange-Id: Idaf984786804eb76c285f38b11abbbc0d3706509\n"
    },
    {
      "commit": "7d451ab96d3999cdcada940147a36505cfe8c57b",
      "tree": "d345ad9f0ad943598bd12504d6cc07ff68b52dcd",
      "parents": [
        "e29744d94df787fa83307572d90a954b1592f69b"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Fri Mar 20 16:59:40 2015 -0700"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Fri Mar 27 14:58:30 2015 -0700"
      },
      "message": "Define atrace_* functions for both target and host.\n\nThis change defines atrace_* functions for the host that act as\nno-ops, which makes it easier to add tracing in ART.\n\nChange-Id: I89397e83986686a2b6a6f245c25017eb379081b1\n"
    },
    {
      "commit": "2d3150e73679193ebfba48cd0d4549ff0db95f9e",
      "tree": "3171e35017834161f1a67be2e552d5dc7e7b0a50",
      "parents": [
        "e63fb8bd8086a280cae61612da965cb13e75194f"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Oct 13 16:30:24 2014 -0700"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Oct 14 15:37:20 2014 -0700"
      },
      "message": "Do not inline rarely used trace function bodies.\n\nWhen atrace_* functions are inlined,\nthe rarely used 1024-byte buffers are allocated on stack.\n\nBUG: 17444504\nChange-Id: I773512aeb70e8b79f3803c6d59cba064d2aa65b6\n"
    },
    {
      "commit": "12717169a51335f4b20b7c78a63b9ab66a81a366",
      "tree": "577dfc1bf9eecdb360e46a63d14de1caeca38a0d",
      "parents": [
        "3754791dd5415c2e99d3bfd6599d414a202cbfc3"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Tue Apr 29 15:49:14 2014 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu May 01 17:58:17 2014 -0700"
      },
      "message": "libcutils: turn on -Werror\n\n- Deal with some -Wunused / -Wunused-variable issues\n\nChange-Id: I28c23fb213382a392ec30935749fb359e072d664\n"
    },
    {
      "commit": "b13ea45a04a463646a7098b03f9f64d91b29d2b9",
      "tree": "324e55f069a345d493d4513d3121ed8305e2f549",
      "parents": [
        "c796ed97466510dd5239008554decbe72825e19c"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Apr 15 18:50:22 2013 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Apr 15 18:50:22 2013 -0700"
      },
      "message": "cutils: add a way to disable tracing for a process\n\nThis change adds the atrace_set_tracing_enabled call to libcutils.  The call\ncan be used to disable all tracing (of the atrace variety) for the current\nprocess.  This is to be used to disable tracing in the Zygote process, as there\nis no way for Zygote to be notified of changes to the enabled trace tags.\n\nChange-Id: I0b691cc0dcfc65b16e3d17e1db2866a4deb253a7\n"
    },
    {
      "commit": "774f9299912cdf9f2a6b3805bb557e30bafbad05",
      "tree": "6ab88f971e07d3048fdaa57ce7b59ee8d603b25c",
      "parents": [
        "de97f798a1c24303de35ff44e2f47b590b46a815"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Feb 25 18:15:40 2013 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 28 20:59:31 2013 +0000"
      },
      "message": "libcutils: add support for app tracing\n\nThis change adds support for tracing using the ATRACE_TAG_APP tag.  This tag is\nenabled only for processes in which the /proc/\u003cpid\u003e/cmdline value appears in\nthe comma-separated list of such values in the debug.atrace.app_cmdlines system\nproperty.  It is also only enabled if either the ro.debuggable system property\nis set to 1 or the application has declared itself debuggable in its manifest,\nwhich gets reported to libcutils by the framework.\n\nChange-Id: Ic94ba55f4e70a9cf994056acbf151e523428b65d\n"
    },
    {
      "commit": "e7bb7bca4f4036c213763673627e1eb6c2c2fdd6",
      "tree": "742342c4c357732db81ac8a061658c265975f97a",
      "parents": [
        "0a34643160890eb50f7d8e016b4ec93d9db2aa27"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Tue Nov 20 01:39:09 2012 -0800"
      },
      "committer": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Wed Nov 28 13:56:49 2012 -0800"
      },
      "message": "cutils: trace: add atrace_update_tags()\n\nAdds a function to read the current trace system property value, and\nsets the trace tags to it, do be used as a sysprop change callback.\n\nChange-Id: Ia6336652173aa5b07188898736c2c795a69fe79a\n"
    },
    {
      "commit": "0a34643160890eb50f7d8e016b4ec93d9db2aa27",
      "tree": "fe53afe36bacaa61c0cc3e79c0766b9a57e3eab6",
      "parents": [
        "22f625529ec4364c7de9c5857221e2a3b2cda9f1"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Wed Nov 14 17:25:28 2012 -0800"
      },
      "committer": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Wed Nov 28 13:56:15 2012 -0800"
      },
      "message": "cutils: Add tracing support\n\nBasic tracing functionality to cutils, which can be turned on at start,\nor dynamically controlled by the frameworks.  The goal is for hardware\nmodules to add tracing that will be controlled by their respective\nservices.\n\nChange-Id: I84eeb7d6be0038f734e719074fa4a2fae4ffe9c0\n"
    }
  ]
}
