)]}'
{
  "log": [
    {
      "commit": "e04c3b05339dd48e050cfc7ad9f9460e259e3797",
      "tree": "cd40b25f2978f763fe2527840ee8cdd6c67aa5f7",
      "parents": [
        "3052d123a85442deb7b2048753ebab3adc7dded0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jan 13 18:14:12 2017 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jan 13 18:14:12 2017 -0800"
      },
      "message": "Remove unused klog_get_level.\n\nEvery little helps...\n\nBug: N/A\nTest: builds\nChange-Id: Ibcac5cda1619420c95903211ed0b96af81351f9e\n"
    },
    {
      "commit": "677ba31db20d214ffb83e0102a9b78d811b5bf68",
      "tree": "a0c4c32c78249ac3bd1709eb133827585d5cfaac",
      "parents": [
        "dd9fa24091e28490eddeea1583f47cdc968b57f6"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Thu Jan 12 15:32:26 2017 -0800"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Thu Jan 12 22:18:46 2017 -0800"
      },
      "message": "libcutils: change klog_level to KLOG_INFO_LEVEL\n\nSome of Android componets e.g. init have migrated to use base/logging to get rid\nof klog utilities. However, without explicit initilization, the default\nklog_level is set to 3 which masks the logwrap output.\nThis patch sets default klog_level to KLOG_INFO_LEVEL to make\nandroid_fork_execvp_ext log available.\n\nBug: 34256270\nTest: manual\nChange-Id: Ibe74707a92c954053cd0e6828a984fbd72b4acae\n"
    },
    {
      "commit": "52bd37e63373b410c009e8611508191dfbf31d30",
      "tree": "32ed2ad56a69bb6d00b2193eaaed07d813e46982",
      "parents": [
        "e631e470e059d84388f3aacfe11a3fa60a584ba7"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Mon Nov 07 09:39:30 2016 -0800"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Nov 16 15:56:56 2016 -0800"
      },
      "message": "libcutils: move cutils/files.h to cutils/android_get_control_file.h\n\nfiles.[h|cpp] is bound to be abused with junk, replace with\nandroid_get_control_file.[h|cpp]. Plus some sundry cleanup.\n\nTest: gTest libcutils-tests, logd-unit-tests, liblog-unit-tests,\n      logcat-unit-tests and init_tests\nBug: 32450474\nChange-Id: Ibd4a7aa4624ea19a43d1f98a3c71ac37805d36b5\n"
    },
    {
      "commit": "c377843258d08d31a2eb7df1a577740e588d2761",
      "tree": "6db18ce43e0aa872c2202ae5c081d301050f9a79",
      "parents": [
        "77fdb22cf686002dfba8a24cf36666d7257b3034"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Oct 27 08:13:42 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Nov 03 13:34:27 2016 -0700"
      },
      "message": "libcutils: klog inherit android_get_control_file(\"/dev/kmsg\")\n\nIf the file descriptor is in the environment, use it.\n\nTest: compile\nBug: 32450474\nChange-Id: Id208b11b727a44dc861a141130a644d7d8009c5f\n"
    },
    {
      "commit": "35f5d04620a3221b9f57194ab0239c7c7ba5a726",
      "tree": "eaebe09b53c2aa953f33cb511ccffaf748412099",
      "parents": [
        "00a4ee0f46d36aff90fa120619f4dc6f4a837930"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 26 09:32:33 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 26 09:32:33 2016 -0700"
      },
      "message": "Fix early init logging.\n\nRemove the /dev/__kmsg__ workarounds (which can then be removed\nfrom sepolicy), and fix confusion in the translation between\nandroid-base logging and kernel logging priorities (in particular,\nwhere \u0027notice\u0027 comes in the hierarchy).\n\nBug: http://b/30317429\nChange-Id: I6eaf9919904b6b55bc402c20bf1a4ae269014bc7\nTest: adb shell dmesg | grep init\n"
    },
    {
      "commit": "489e3fbaa02f43b198e3962076529f506766b590",
      "tree": "d6dfd59385007f8c44aae1fdf84273255178b388",
      "parents": [
        "ddbcecec3a28b0916c1f7f098c3e6995d46687de"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 19 11:45:36 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 19 11:45:36 2016 -0700"
      },
      "message": "Remove no-op klog_init.\n\nChange-Id: I467edad1d004ac16647f4aa1f0eead04e808efa0\n"
    },
    {
      "commit": "171a829c39d9298432505fe943ad7128aeefe2b2",
      "tree": "96ecfe65e6910e41db3867bda7967d50735bbf25",
      "parents": [
        "b0d062a497bee38ff2a7c6c965e29af4199c3fe0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jun 29 16:16:41 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jun 29 16:16:41 2016 -0700"
      },
      "message": "Make klog_fd thread-safe and make klog_init a no-op.\n\nI\u0027ll come back and remove klog_init when I\u0027ve removed other calls to it.\n\nChange-Id: Iad7fd26d853b4ddc54e9abd44516b6f138cbbfcb\nTest: booted N9, looked at \"adb shell dmesg\" output.\n"
    },
    {
      "commit": "5db8d6aafa66cbeaef6bf736ff5ad5b711069d9e",
      "tree": "57d11396532104441eafe371b09100a973e2ea8b",
      "parents": [
        "13655cdc77a361b8780297b6d7778659cf39d858"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Sat Jan 16 16:19:17 2016 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Sat Jan 16 16:20:24 2016 -0800"
      },
      "message": "logging: avoid unnecessary printfs\n\nDon\u0027t spend CPU cycles formatting a bunch of strings if we\u0027re\njust going to throw them away later. Maybe make booting faster.\n\nChange-Id: I4d8eb99fb3fa873ca91cf776933d0ad01988abf5\n"
    },
    {
      "commit": "7eb3abdb3ba500d3acca82b95705f34128251015",
      "tree": "9d8e1293fd86b1946bef234c4ce2bba731468da5",
      "parents": [
        "0ebd13f0639ddfc3e6e96bbcc6ce5465ca489808"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon May 18 18:41:23 2015 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue May 19 15:19:25 2015 -0700"
      },
      "message": "klog: don\u0027t unconditionally call mknod()\n\nIf /dev/kmsg already exists, it\u0027s unnecessary for klog_init()\nto create it\u0027s own copy. This avoids needing to grant the mknod\npermission to everyone who uses kmsg. Typically the only time\n/dev/kmsg doesn\u0027t exist is before ueventd starts.\n\n(cherrypicked from commit 4d32a486fe62ef2c1440167604654a2f4e023fbd)\n\nBug: 21242418\nChange-Id: I0c88d80feca6899fcdbc8c9f2f99448ee0a3422d\n"
    },
    {
      "commit": "c02f81cccb2626a45d61c3e9eb22a7e5ec261046",
      "tree": "ae690c075d3fc96eab8476a1753a992015e74f6d",
      "parents": [
        "5db3936dbe6fa73d45ab0f02b7166f43680084d3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Mar 28 09:51:54 2015 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Mar 28 09:51:54 2015 -0700"
      },
      "message": "Always unlink /dev/__kmsg__.\n\nWhether the open succeeds or fails, we should unlink.\n\nChange-Id: Ic2f1e10dc7b6d6e459c56049da00d165bd63ba8f\n"
    },
    {
      "commit": "da40c00137f75543a69972f1be506e2d14a41845",
      "tree": "d24df4f9a94411205786227c26cd2a1a664420bc",
      "parents": [
        "e29744d94df787fa83307572d90a954b1592f69b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 27 23:20:44 2015 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Mar 28 00:25:22 2015 -0700"
      },
      "message": "Log more timing information from init.\n\nAlso make important events in init\u0027s life NOTICE rather than INFO,\nand ensure that NOTICE events actually make it to the kernel log.\n\nAlso fix the logging so that if you have a printf format string\nerror, the compiler now catches it.\n\nAlso give messages from init, ueventd, and watchdogd distinct tags.\n(Previously they\u0027d all call themselves \"init\", and dmesg doesn\u0027t\ninclude pids, so you couldn\u0027t untangle them.)\n\nAlso include the tag in SELinux messages.\n\nBug: 19544788\nChange-Id: Ica6daea065bfdb80155c52c0b06f346a7df208fe\n"
    },
    {
      "commit": "157e1b645ab278d5aaaa09939088b8f8e9d00085",
      "tree": "8e928631e315a698a394ca0f86289d1d54d752eb",
      "parents": [
        "1367854a891090d1be1edfb12515691b20b350cf"
      ],
      "author": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Fri Mar 07 12:18:22 2014 -0800"
      },
      "committer": {
        "name": "Alex Ray",
        "email": "aray@google.com",
        "time": "Fri Mar 07 13:58:02 2014 -0800"
      },
      "message": "libcutils: add method to get klog level\n\nChange-Id: I55e8311bae97703be26e57b415a8ab0a6d9b4361\n"
    },
    {
      "commit": "eb3f421e028608e37e4eb814351f03b99ae55900",
      "tree": "030a4b7c930994a5bee836f0780aadf87dabac25",
      "parents": [
        "27fd413d6d02a53c453cf926717b67e9a8d1eb32"
      ],
      "author": {
        "name": "Stephen Smalley",
        "email": "sds@tycho.nsa.gov",
        "time": "Wed Feb 12 16:17:00 2014 -0500"
      },
      "committer": {
        "name": "Stephen Smalley",
        "email": "sds@tycho.nsa.gov",
        "time": "Wed Feb 19 09:15:09 2014 -0500"
      },
      "message": "Enable building init with -Wall -Werror.\n\nEliminates various warnings from SELinux-related code.\n\nBug: 12587913\nChange-Id: I28921f0ebd934324436609540d95ccef58552b64\nSigned-off-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\n"
    },
    {
      "commit": "451a6ba829ddfdf2c1d8605611342397340534df",
      "tree": "1b1e8589c5e6f843b075a068249f38f7a6322b8e",
      "parents": [
        "ba4ac0cc3aa69075d6cbcee4eddb314ef753aa8d"
      ],
      "author": {
        "name": "Todd Poynor",
        "email": "toddpoynor@google.com",
        "time": "Fri Apr 19 12:48:19 2013 -0700"
      },
      "committer": {
        "name": "Todd Poynor",
        "email": "toddpoynor@google.com",
        "time": "Mon Apr 22 11:07:14 2013 -0700"
      },
      "message": "klog: error handling fixups\n\nChange-Id: I9014e62010c589ec30d5e99eef420353e35418b5\n"
    },
    {
      "commit": "7425fd1b231fcdb3c260877a13f794a0c7361e80",
      "tree": "0c54939f1e54f23821ba305c093435fc620f73a8",
      "parents": [
        "c796ed97466510dd5239008554decbe72825e19c"
      ],
      "author": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Wed Apr 03 13:43:11 2013 -0700"
      },
      "committer": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Thu Apr 11 20:03:47 2013 -0700"
      },
      "message": "klog: Have klog_write() call klog_init() if needed\n\nAlso change klog_init() to do nothing if already initialized.\n\nChange-Id: Ia2dfe914c9d9fd119fb8939508d57b15c9884663\n"
    },
    {
      "commit": "8f91282ebe1963b9d27f8779ad1342302b293bd2",
      "tree": "5589b2fe97aee2a37d1758e5ac285d5747dfe758",
      "parents": [
        "2d55e02d0f3c27f0c99ab889ab7b73126280a21c"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Wed Aug 31 18:26:17 2011 -0700"
      },
      "committer": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Fri Sep 02 12:11:17 2011 -0700"
      },
      "message": "init/cutils: move kernel logging interface to libcutils from init\n\nChange-Id: Ia0f91b1fcd6cae69d76bf3dd841340958db938a8\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    }
  ]
}
