)]}'
{
  "log": [
    {
      "commit": "0d4ccee35101c6bcd6cc28c23fe79d7b48a98dd0",
      "tree": "1249c631a5be89488538f3d9d2d0641d1cf5fbe8",
      "parents": [
        "104a472958f86eafafe0c1d9e2c58ba6403f99e7",
        "224ff048efc782bd60047a3ae53eb66941f73125"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Aug 14 21:19:11 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 14 19:41:13 2014 +0000"
      },
      "message": "Merge \"Change name of MB_CUR_MAX implementation function.\""
    },
    {
      "commit": "224ff048efc782bd60047a3ae53eb66941f73125",
      "tree": "7c148e8f2e8095a98fa9cc24e710edc3ccf5d008",
      "parents": [
        "9a74e4c15c17b9126ad348d865002880fc36bd12"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Aug 14 13:56:51 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Aug 14 13:56:51 2014 -0700"
      },
      "message": "Change name of MB_CUR_MAX implementation function.\n\nGlibc calls theirs __ctype_get_mb_cur_max. Make ours match to cut down\non differences between bionic and glibc.\n\nBug: 11156955\nChange-Id: Ib7231f01aa9676dff30aea0af25d597bfe07bc73\n"
    },
    {
      "commit": "104a472958f86eafafe0c1d9e2c58ba6403f99e7",
      "tree": "d2225deaf6822896bbedafd46720ab09761a2e53",
      "parents": [
        "4f85c6ffd31d1f8cc000ab326edd8edb7ecd55a9",
        "76212eeb53b0ceae9647314ec4806c66bc90783a"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Aug 14 21:18:49 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 14 19:41:13 2014 +0000"
      },
      "message": "Merge \"Add more functionality to glibc symbol checker.\""
    },
    {
      "commit": "76212eeb53b0ceae9647314ec4806c66bc90783a",
      "tree": "44cb655e694a156ddedeab08b93426a41d9b3e8d",
      "parents": [
        "9a74e4c15c17b9126ad348d865002880fc36bd12"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Aug 13 13:04:28 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Aug 14 14:02:34 2014 -0700"
      },
      "message": "Add more functionality to glibc symbol checker.\n\nAlso scan NDK\u0027s unwanted symbols list (to show the things that we\u0027re\nexporting but the NDK isn\u0027t. Symbols hidden in the NDK will be marked\nwith a *.\n\nAdd a -u (--unwanted) flag to disable the first two printed groups\n(all symbols in bionic, all symbols in glibc). This is helpful when\nwanting to grep in the list of unwanted symbols.\n\nFinally, update the list of known differences between us and glibc.\n\nChange-Id: I6fdb4126823098430454763c391bd8cd369a75bb\n"
    },
    {
      "commit": "9a74e4c15c17b9126ad348d865002880fc36bd12",
      "tree": "4e31268254601d2ea6329a515d4d5859678ea1ec",
      "parents": [
        "1f4c536fd53c69ba8122528435251b894e877e2a",
        "b3aaf398e1d6af5362e0f30f11ab7c11890644c2"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Aug 13 21:07:11 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 12 23:11:16 2014 +0000"
      },
      "message": "Merge \"Hide __libc_init_vdso().\""
    },
    {
      "commit": "b3aaf398e1d6af5362e0f30f11ab7c11890644c2",
      "tree": "d71aeb605341e0bc89b43a483c18b5f5e7c2d9c1",
      "parents": [
        "6e3823d37e54929558990d7c475bc30d381098fe"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Aug 13 13:11:58 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Aug 13 13:11:58 2014 -0700"
      },
      "message": "Hide __libc_init_vdso().\n\nBug: 11156955\nChange-Id: I7ee31e1ee2ce479c5746b374a239637d582815fe\n"
    },
    {
      "commit": "4f85c6ffd31d1f8cc000ab326edd8edb7ecd55a9",
      "tree": "1b829c7e8544c18787c7f28729132e621b0c170e",
      "parents": [
        "e942b3ed81ad4e0161f3ffa4f8d0017bfbb750e2",
        "30214b901e8dbec9ec11230187a8e71fc8a04014"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Aug 14 01:03:09 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 12 19:23:43 2014 +0000"
      },
      "message": "Merge \"Add memory ordering constraint, convert to C11 atomics\""
    },
    {
      "commit": "f2c1e7ee78a167ff323b9f45d20532d064d6778d",
      "tree": "05484cac9bd366891a5a1e53197c07b2c27d2e6f",
      "parents": [
        "6e3823d37e54929558990d7c475bc30d381098fe"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Aug 13 11:25:01 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Aug 13 11:25:01 2014 -0700"
      },
      "message": "Hide ScopedTrace.\n\nBug: 11156955\nChange-Id: I6cddc868d1c6503e30f1ffcf460f45670631d64a\n"
    },
    {
      "commit": "edd81faff0b61fc458dc27b9c91f358d3313ce7a",
      "tree": "75a100c4d5939b8b6b77274626e8994c0b92c8e8",
      "parents": [
        "00c16c1b921dfeab42eb92ac53c6d79addc9f549"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Aug 12 16:21:26 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Aug 12 16:53:14 2014 -0700"
      },
      "message": "Hide __libc_malloc_dispatch.\n\nNow that -Bsymbolic is fixed, we can hide __libc_malloc_dispatch without\nbreaking ASAN.\n\nBug: 11156955\nChange-Id: Ia2fc9b046a74e666b33aa6c6c5435f70a63b8021\n"
    },
    {
      "commit": "e942b3ed81ad4e0161f3ffa4f8d0017bfbb750e2",
      "tree": "d8e38210c5ae8848ae9437f00d31bdefc001a9d7",
      "parents": [
        "9a74e4c15c17b9126ad348d865002880fc36bd12",
        "c5a13efa9bc4264be0a9a9e37c00633af01584ed"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Aug 14 00:29:28 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 12 19:23:43 2014 +0000"
      },
      "message": "Merge \"Added test for ifunc support in dynamic linker.\""
    },
    {
      "commit": "00c16c1b921dfeab42eb92ac53c6d79addc9f549",
      "tree": "15a3190069140da16e609b3817133ed92c655d89",
      "parents": [
        "4d0f742afe4867a0064d46a5b55df33e07c02c9d",
        "51a22a12ab370933a35463f5c81223132ec64dcb"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Aug 11 16:36:33 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Aug 09 00:45:41 2014 +0000"
      },
      "message": "Merge \"Label pages mapped by linker_allocator\""
    },
    {
      "commit": "51a22a12ab370933a35463f5c81223132ec64dcb",
      "tree": "83033d1672090d93a22d349669bbe9159322f4e8",
      "parents": [
        "a0db46418757dd1b399acb97ff42083cc274e8ae"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Aug 08 16:57:15 2014 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Aug 11 09:22:48 2014 -0700"
      },
      "message": "Label pages mapped by linker_allocator\n\nChange-Id: I7e0bf29bc1a480e9be0d1ae573ca1063d90d82ff\n"
    },
    {
      "commit": "ca5b6a74a70924e513ae1b1a3f8718eb16ca60f2",
      "tree": "9be12a05b97b30aa6693b3b0433a7e179413676b",
      "parents": [
        "a0db46418757dd1b399acb97ff42083cc274e8ae"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Aug 09 18:45:55 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Aug 09 22:18:33 2014 -0700"
      },
      "message": "Fix our x86 PIC_PROLOGUE.\n\nThe old definition only worked for functions that didn\u0027t use numbered\nlocal labels. Upstream uses \u0027666\u0027 not only as some kind of BSD in-joke,\nbut also because there\u0027s little likelihood of any function having\nlabels that high.\n\nThere\u0027s a wider question about whether we actually want to go via the\nPLT at all in this code, but that\u0027s a question for another day.\n\n(cherry-pick of 72d7e667c7e926cb120c4edb53cbf74c652ab915.)\n\nBug: 16906712\nChange-Id: I3cd8ecc448b33f942bb6e783931808ef39091489\n"
    },
    {
      "commit": "30214b901e8dbec9ec11230187a8e71fc8a04014",
      "tree": "b81bf8ff795f3191c5f139893ffc29b4d4624092",
      "parents": [
        "1c5e415f8c4cd2cb10ad1d1cf660d17161132772"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Jul 31 15:53:22 2014 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Aug 08 11:34:25 2014 -0700"
      },
      "message": "Add memory ordering constraint, convert to C11 atomics\n\nAdd an ordering constraint/fence to __system_property_serial.\nThis slows down a read on a Nexus 5 from about 50 to about 70 ns,\nbut avoids the possibility of seeing an inconsistent property value.\nUse C11 atomic operations where easy and appropriate.\nThis code remains not fully C++11 memory model conformant, but\nI would now expect the generated code to now be correct with current compilers.\n\nBug:14970171\nChange-Id: I0891ff1d0f914ae5c3857e3d76b6a7c8a4a07d83\n"
    },
    {
      "commit": "c5a13efa9bc4264be0a9a9e37c00633af01584ed",
      "tree": "4a1678bd154220d7e8d13e6739037fb48635006a",
      "parents": [
        "f2d8c357eec1bbc4e7441942dfc338ad1d9a207a"
      ],
      "author": {
        "name": "Brigid Smith",
        "email": "brigidsmith@google.com",
        "time": "Wed Jul 23 11:22:25 2014 -0700"
      },
      "committer": {
        "name": "Brigid Smith",
        "email": "brigidsmith@google.com",
        "time": "Fri Aug 08 11:29:35 2014 -0700"
      },
      "message": "Added test for ifunc support in dynamic linker.\n\nifuncs now work in i386 and x86_64 when called in the same library as\nwell as in a different library.\n\nBug:6657325\nChange-Id: Ic0c48b1b0a76cb90f36c20c79f68294cc3fd44a1\n"
    },
    {
      "commit": "bc9f9f25bf1247a6a638a2a2df8441bdd9fabad7",
      "tree": "17328616c29a98aa2eb16b6cb3a7b7b1c93c0322",
      "parents": [
        "3788a1ee8eae4180117010bb9302334acfe1d218"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Aug 08 15:19:20 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Aug 08 15:35:47 2014 -0700"
      },
      "message": "Make __set_errno hidden in asm.\n\nThis fixes the build after the -Bsymbolic change.\n\nBug: 16853291\nChange-Id: I989c9fec3c32e0289ea257a3bd2b7fd2709b6ce2\n"
    },
    {
      "commit": "3726f9c38b4b27b492e378e20c52be859225e5f3",
      "tree": "23112c6c1380ee88e4762b749a1a883acc530cf1",
      "parents": [
        "1c5e415f8c4cd2cb10ad1d1cf660d17161132772"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Aug 08 15:15:29 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Aug 08 22:26:47 2014 +0000"
      },
      "message": "Revert \"Fix incorrect relocations for x86.\"\n\nBug: 16853291\nThis reverts commit 512bc5232689bec9c763c8247b59de970096ff87."
    },
    {
      "commit": "88a1f520d2d54d362dc2f29a0fad2cf0029c8918",
      "tree": "d2d8f1a51b39a7883247dbf36544621101decf3b",
      "parents": [
        "f2d8c357eec1bbc4e7441942dfc338ad1d9a207a"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Aug 07 16:21:21 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Aug 08 09:40:17 2014 -0700"
      },
      "message": "Add a way to disable backtracing in malloc debug.\n\nThe property libc.debug.malloc.nobacktrace set to non-zero disables\ngetting backtracing when using mode 1 or mode 10.\n\nBug: 16874447\n\n(cherry picked from 49de01a5be7bfb07baaea7415647d838383e1b59)\n\nChange-Id: I6bbefe5420b14991fe84c2f849222dcd7cb592bf\n"
    },
    {
      "commit": "f2d8c357eec1bbc4e7441942dfc338ad1d9a207a",
      "tree": "9c8b6a30adf29d39edf9127556c95128a3ebaf2f",
      "parents": [
        "92f0c91b82c60788b14062ca032ccc732f0fba4c",
        "651a0683ca7ba911beb776975ec893de326d62d2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Aug 08 16:16:48 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 06 23:49:29 2014 +0000"
      },
      "message": "Merge \"Remove misleading arm/arm64 PIC_SYM.\""
    },
    {
      "commit": "651a0683ca7ba911beb776975ec893de326d62d2",
      "tree": "78d45b0ecaa8e2b0cfe8ac74a2c4816c5a08c7aa",
      "parents": [
        "d994622ebf2c4b7e918d9e1f1840f9df88ee7222"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Aug 07 11:52:38 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Aug 07 11:52:38 2014 -0700"
      },
      "message": "Remove misleading arm/arm64 PIC_SYM.\n\nBug: 16823325\nChange-Id: Ic8ff3a628bb4cd71361e3a1c2cfde4b3d39c50b1\n"
    },
    {
      "commit": "92f0c91b82c60788b14062ca032ccc732f0fba4c",
      "tree": "3f58b9e1093d6dd1fbcae3cfe4e280a9c63f96d6",
      "parents": [
        "cdd2f072af5c22750e06d1613b72336ecda7e71f",
        "01bd32e0e46ab8d9b6aeda77a550ec08074728a6"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Aug 08 07:07:48 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 07 15:46:11 2014 +0000"
      },
      "message": "Merge \"Create a distinct temp directory for each run.\""
    },
    {
      "commit": "01bd32e0e46ab8d9b6aeda77a550ec08074728a6",
      "tree": "370657df52d5e3d6fb98d291bf31e754162f95b9",
      "parents": [
        "447fe1c23bc5adaded9a51d3b58f3adaf2cce7b3"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Aug 05 12:19:27 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Aug 07 19:33:22 2014 -0700"
      },
      "message": "Create a distinct temp directory for each run.\n\nModify make__NR_name so that only __ARM_NR_ is exempted from the\n__NR_ being prepended. This avoids a case where using a name starting\nwith __ but is not a valid syscall name in SYSCALLS.TXT does not generate\ncode that will compile but references the function itself and causes\nlink errors.\n\nFix all of the directory references from dir_part1 + dir_part2 to\nuse os.path.join() instead.\n\nChange-Id: Ib9527eba6f25f26a30c5cb0ad431f3f88a7683cf\n"
    },
    {
      "commit": "d994622ebf2c4b7e918d9e1f1840f9df88ee7222",
      "tree": "aa3aceda5dd6a59ac00a3372c8acc1866e563922",
      "parents": [
        "85ebcfceb62f011e0db359affefcf5570f518bd5",
        "6b6364a7fc7c3ba37ee907776a29bdc8c9793db9"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Aug 07 18:25:35 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 07 14:59:23 2014 +0000"
      },
      "message": "Merge \"Android is all-PIC/PIE.\""
    },
    {
      "commit": "6b6364a7fc7c3ba37ee907776a29bdc8c9793db9",
      "tree": "a99f06f68369f216847586459374e518109dfd90",
      "parents": [
        "447fe1c23bc5adaded9a51d3b58f3adaf2cce7b3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Aug 07 10:51:32 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Aug 07 10:54:54 2014 -0700"
      },
      "message": "Android is all-PIC/PIE.\n\nClean up the x86/x86_64 assembler. The motivator (other than reducing\nconfusion) was that asm.h incorrectly checked PIC rather than __PIC__.\n\nBug: 16823325\nChange-Id: Iaa9d45009e93a4b31b719021c93ac221e336479b\n"
    },
    {
      "commit": "512bc5232689bec9c763c8247b59de970096ff87",
      "tree": "e51f699b4bad5d59ea915bbea29dc4801eb5409c",
      "parents": [
        "d994622ebf2c4b7e918d9e1f1840f9df88ee7222"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Aug 07 10:46:42 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Aug 07 16:21:47 2014 -0700"
      },
      "message": "Fix incorrect relocations for x86.\n\nThese calls were not going through the PLT like they should have been.\n\nBug: 16853291\nChange-Id: Id70488b077256a70137c4417f21be2c2d1d4341c\n"
    },
    {
      "commit": "e380960813bbb6e05d820eb75885556a1c4bf6ac",
      "tree": "9eafb0466f8e3cdc3c24125d295e488312ac2099",
      "parents": [
        "f3868fa735ad67ec853f3db36936ca184bd5f79a"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Aug 06 14:15:01 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Aug 06 17:57:04 2014 -0700"
      },
      "message": "Do a second key cleanup in pthread_exit.\n\nDuring pthread_exit, the keys are cleaned. Unfortunately, a call to\nfree occurs after the cleanup and the memory for some of the keys\nis recreated when using jemalloc. The solution is to do the key\ncleanup twice.\n\nAlso, modify the pthread_detach__leak test to be less flaky\nwhen run on a jemalloc system.\n\nBug: 16513133\n\n(cherry picked from commit 18d93f2793fad393b6aa6eae6afe1054958339d5)\n\nChange-Id: Idb32e7f9b09e2c088d256ed9eb881df80c81ff8e\n"
    },
    {
      "commit": "51fde5b8658edc736acd272ab3d233ecc929ffbe",
      "tree": "bc6f1a1beeb033a07901cb6c6e0ea2b9fcee0b12",
      "parents": [
        "b4b7e0547da259b38b3e31dbd08cf26026cff1ee"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 15:26:13 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 17:38:01 2014 -0700"
      },
      "message": "Upgrade bionic to tzdata2014f.\n\nFrom the release notes:\n\n  Changes affecting future time stamps\n\n    Russia will subtract an hour from most of its time zones on\n    2014-10-26 at 02:00 local time.  (Thanks to Alexander Krivenyshev.)\n    There are a few exceptions: Magadan Oblast (Asia/Magadan) and\n    Zabaykalsky Krai are subtracting two hours; conversely, Chukotka\n    Autonomous Okrug (Asia/Anadyr), Kamchatka Krai (Asia/Kamchatka),\n    Kemerovo Oblast (Asia/Novokuznetsk), and the Samara Oblast and the\n    Udmurt Republic (Europe/Samara) are not changing their clocks.  The\n    changed zones are Europe/Kaliningrad, Europe/Moscow,\n    Europe/Simferopol, Europe/Volgograd, Asia/Yekaterinburg, Asia/Omsk,\n    Asia/Novosibirsk, Asia/Krasnoyarsk, Asia/Irkutsk, Asia/Yakutsk,\n    Asia/Vladivostok, Asia/Khandyga, Asia/Sakhalin, and Asia/Ust-Nera;\n    Asia/Magadan will have two hours subtracted; and Asia/Novokuznetsk\u0027s\n    time zone abbreviation is affected, but not its UTC offset.  Two\n    zones are added: Asia/Chita (split from Asia/Yakutsk, and also with\n    two hours subtracted) and Asia/Srednekolymsk (split from\n    Asia/Magadan, but with only one hour subtracted).  (Thanks to Tim\n    Parenti for much of the above.)\n\n  Changes affecting past time stamps\n\n    China\u0027s five zones have been simplified to two, since the post-1970\n    differences in the other three seem to have been imaginary.  The\n    zones Asia/Harbin, Asia/Chongqing, and Asia/Kashgar have been\n    removed; backwards-compatibility links still work, albeit with\n    different behaviors for time stamps before May 1980.  Asia/Urumqi\u0027s\n    1980 transition to UTC+8 has been removed, so that it is now at\n    UTC+6 and not UTC+8.  (Thanks to Luther Ma and to Alois Treindl;\n    Treindl sent helpful translations of two papers by Guo Qingsheng.)\n\n    Some zones have been turned into links, when they differed from\n    existing zones only for older UTC offsets where the data were likely\n    invented.  These changes affect UTC offsets in pre-1970 time stamps\n    only.  This is similar to the change in release 2013e, except this\n    time for western Africa.  The affected zones are: Africa/Bamako,\n    Africa/Banjul, Africa/Conakry, Africa/Dakar, Africa/Freetown,\n    Africa/Lome, Africa/Nouakchott, Africa/Ouagadougou, Africa/Sao_Tome,\n    and Atlantic/St_Helena.  This also affects the\n    backwards-compatibility link Africa/Timbuktu.  (Thanks to Alan\n    Barrett, Stephen Colebourne, Tim Parenti, and David Patte for\n    reporting problems in earlier versions of this change.)\n\n    Asia/Shanghai\u0027s pre-standard-time UT offset has been changed from\n    8:05:57 to 8:05:43, the location of Xujiahui Observatory.  Its\n    transition to standard time has been changed from 1928 to 1901.\n\n    Asia/Taipei switched to JWST on 1896-01-01, then to JST on\n    1937-10-01, then to CST on 1945-09-21 at 01:00, and did not observe\n    DST in 1945.  In 1946 it observed DST from 05-15 through 09-30; in\n    1947 from 04-15 through 10-31; and in 1979 from 07-01 through 09-30.\n    (Thanks to Yu-Cheng Chuang.)\n\n    Asia/Riyadh\u0027s transition to standard time is now 1947-03-14, not\n    1950.\n\n    Europe/Helsinki\u0027s 1942 fall-back transition was 10-04 at 01:00, not\n    10-03 at 00:00.  (Thanks to Konstantin Hyppönen.)\n\n    Pacific/Pago_Pago has been changed from UTC-11:30 to UTC-11 for the\n    period from 1911 to 1950.\n\n    Pacific/Chatham has been changed to New Zealand standard time plus\n    45 minutes for the period before 1957, reflecting a 1956 remark in\n    the New Zealand parliament.\n\n    Europe/Budapest has several pre-1946 corrections: in 1918 the\n    transition out of DST was on 09-16, not 09-29; in 1919 it was on\n    11-24, not 09-15; in 1945 it was on 11-01, not 11-03; in 1941 the\n    transition to DST was 04-08 not 04-06 at 02:00; and there was no DST\n    in 1920.\n\n    Africa/Accra is now assumed to have observed DST from 1920 through\n    1935.\n\n    Time in Russia before 1927 or so has been corrected by a few seconds\n    in the following zones: Europe/Moscow, Asia/Irkutsk, Asia/Tbilisi,\n    Asia/Tashkent, Asia/Vladivostok, Asia/Yekaterinburg,\n    Europe/Helsinki, and Europe/Riga.  Also, Moscow\u0027s location has been\n    changed to its Kilometer 0 point.  (Thanks to Vladimir Karpinsky for\n    the Moscow changes.)\n\n(cherry-pick of 0dc2c1db6fc84b4526f2a5f8d73e1187500f2300.)\n\nBug: 16168653\nChange-Id: I23827254bcf50dd07a2192ed34b02224d73e07a0\n"
    },
    {
      "commit": "13bab43337242094663d6f699ad996ddc99ec582",
      "tree": "d6d1c009d71464edc399a0a4c74c08a4998cab43",
      "parents": [
        "3a238ae7620298608e1d463901051c397e4f8a2f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 15:23:11 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 17:31:48 2014 -0700"
      },
      "message": "Fix the tzdata update tools.\n\nThe recent libcore ZoneInfo changes mean that we can no longer\ncompile libcore\u0027s ZoneInfo against the RI. Luckily, the field in\nour data file that we needed ZoneInfo for isn\u0027t actually used.\nThis change removes our dependence on libcore.\n\nI\u0027ve left the field in to avoid a file format change. We can remove\nthe field if/when we next have a real need to bump the file format.\n\n(cherry-pick of 90cb5ffb85a9bc2e725824b3ca8db932d02c45db.)\n\nBug: 16168653\nChange-Id: Iedad2252c2b49f4d8bb2c7d9078b39b622444ca7\n"
    },
    {
      "commit": "9d2a05a6dda800d0f1fcb1d9ffe12bc3b82c0f73",
      "tree": "df2a38f3d1df1de8eff3d7cb7b4b7ef49365d94e",
      "parents": [
        "bb91a1b845f7c8b3b09d07fe467aa32d2aeddc4f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 28 16:16:38 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 13:20:41 2014 -0700"
      },
      "message": "Revert \"Add a hack to \u003cstdlib.h\u003e until we can fix libvpx.\"\n\nThis reverts commit 3fb5097a7eec40404760c304b36c8b657b374cab.\nlibvpx is now fixed.\n\n(cherry-pick of 2be1be47aa9b63568fe6ce1e0a4029b37d90764d.)\n\nBug: 15598056\nChange-Id: Icca974e667f92206505f484bd291726eb0150f68\n"
    },
    {
      "commit": "28285f85a1c15c5b500b78ed63f12dd8eddb8ac9",
      "tree": "c0001d2d3ca85b5b8069ea568d6ea02a55188ffe",
      "parents": [
        "8b91980e4c139558f9cca4e9a0980dad07c06e68"
      ],
      "author": {
        "name": "Dehao Chen",
        "email": "dehao@google.com",
        "time": "Tue Aug 05 15:23:00 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 11:43:38 2014 -0700"
      },
      "message": "Workaround b/16818336 which fails build under aggressive inlining.\n\n(cherry-pick of 7aa27e1c1a53afe28f6180fd1fc50d096cabea7b.)\n\nChange-Id: Ifcd596714c427a2ec39502b9c0af9082ded91884\n"
    },
    {
      "commit": "8b91980e4c139558f9cca4e9a0980dad07c06e68",
      "tree": "53262ac65a9b8d4ee7983650d809f4f4c46f92b0",
      "parents": [
        "afc8672387438f9c8926a12831f43a6dd1f59323",
        "1628eb1d43008c52b00ec98d10c4fd9e8b6fc7c5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 17:55:27 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 06 17:20:04 2014 +0000"
      },
      "message": "Merge \"Explain how wcswcs ended up in ndk_cruft.cpp.\""
    },
    {
      "commit": "1628eb1d43008c52b00ec98d10c4fd9e8b6fc7c5",
      "tree": "dbc976246dd99c44e949e410290283fd6dd882e1",
      "parents": [
        "4ad5066e1de326e5db46df18eeade9a88bc11bec"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 10:47:33 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 10:47:33 2014 -0700"
      },
      "message": "Explain how wcswcs ended up in ndk_cruft.cpp.\n\nChange-Id: Ie45148095b2d5c3896c0df623d5d06a700c33c70\n"
    },
    {
      "commit": "df85f50b82efc96e348c3d88e67b7bcdb263921f",
      "tree": "5f7b193eb6b1d5fdc53d2310e1f7c248bdb06ba7",
      "parents": [
        "de69069fcfee8d89dfc70da374760ef0c29fe0a4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 05 17:07:46 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 06 09:03:52 2014 -0700"
      },
      "message": "Add an obvious comment to \u003cstdio.h\u003e for fixincludes.\n\nWe don\u0027t want GCC\u0027s fixincludes to touch our \u003cstdio.h\u003e because we\nwant to support multiple platform versions with one toolchain. Give\nthem a nice easy unambiguous string to look for.\n\nBug: http://code.google.com/p/android/issues/detail?id\u003d73728\nChange-Id: I15cb9a2c9eb0a44b0965dc2139f224f2b6e68ea1\n"
    },
    {
      "commit": "9eae8405e8f70e489f2fe350a0212ab8114cbd17",
      "tree": "f8ea39de4693eeadc5ad8505e36f8362b870d508",
      "parents": [
        "a7ef8188e24446d41c5abbe9addf55cc6a128968"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Aug 05 14:46:03 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Aug 05 14:46:03 2014 -0700"
      },
      "message": "Fixes build.\n\nThis change somehow went missing from the vfork change.\n\nChange-Id: I807a2072080eac20601c694e85ba5723220289d8\n"
    },
    {
      "commit": "6a918870bab1a55a5f57dd7954abd9a8a27c1bc2",
      "tree": "fa02049d5e70ded2d921311a4aa1b0af09bf22bf",
      "parents": [
        "447fe1c23bc5adaded9a51d3b58f3adaf2cce7b3"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Aug 05 20:53:31 2014 +0000"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Aug 05 14:11:38 2014 -0700"
      },
      "message": "Revert \"Replaces vfork() implementation with fork()\"\n\nWe\u0027re getting cold feet on this one... let\u0027s put it back.\n\nThis reverts commit 210331d9762037afb9b5ed8413079c6f65872df9.\n\nChange-Id: I6b0d3c2b1dbf7f1dc9566979a91b7504c2189269\n"
    },
    {
      "commit": "b6cc8e00cd562bd0f81fe44a6bc646540a862f32",
      "tree": "f4630dd8581b62020996f5f30636e593ac79c9b4",
      "parents": [
        "36bacd237de931c48714d1a8aa4aa9522283e407"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Jul 31 11:31:03 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Jul 31 11:31:03 2014 -0700"
      },
      "message": "Fix mbsrtowcs(3) src param for finished string.\n\nA mistake I made while cleaning this up the first time through.\nmbstrtowcs(3) sets the src param to null if it finishes the string.\n\nChange-Id: I6263646e25d9537043b7025fd1dd6ae195f365e2\n"
    },
    {
      "commit": "1aec7c1a35b2d03038b194967d5ebdc8e2c24b80",
      "tree": "977211860df02be4f4c0843cf231ec6c3da88ee6",
      "parents": [
        "0f7ed163cf6c1fe6d71a1d7e5fb6d0989213be85"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jul 30 10:53:48 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jul 30 17:09:46 2014 -0700"
      },
      "message": "Proper MB_CUR_MAX.\n\nPreviously this was hard coded to 4. This is only the case for UTF-8\nlocales.\n\nAs a side effect, this properly reports C.UTF-8 as the default locale\ninstead of C.\n\nChange-Id: I7c73cc8fe6ffac61d211cd5f75287e36de06f4fc\n"
    },
    {
      "commit": "0f7ed163cf6c1fe6d71a1d7e5fb6d0989213be85",
      "tree": "c182980fbe2b350af3760de535c3ea806eba3e8f",
      "parents": [
        "83b9826e683db30e9b359737253b87ef8b3ba3df",
        "e03e1eac0b7682884b6628df1305d34299680cb4"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jul 30 23:25:50 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jul 30 20:40:05 2014 +0000"
      },
      "message": "Merge \"Fix memchr with a zero length.\""
    },
    {
      "commit": "e03e1eac0b7682884b6628df1305d34299680cb4",
      "tree": "cd92bbdbf9b9ae464da7b46d25c01fe6bf5c1ad9",
      "parents": [
        "4ad5066e1de326e5db46df18eeade9a88bc11bec"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jul 30 16:06:56 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jul 30 16:06:56 2014 -0700"
      },
      "message": "Fix memchr with a zero length.\n\nThe memchr implementation for 64 bit fails if these conditions occur:\n\n- The buffer is 32 byte aligned.\n- The buffer contains the character in the first byte.\n- The count sent in is zero.\n\nThe function should return NULL, but it\u0027s not.\n\nBug: 16676625\nChange-Id: Iab33cc7a8b79920350c72f054dff0e0a3cde69ce\n"
    },
    {
      "commit": "4ad5066e1de326e5db46df18eeade9a88bc11bec",
      "tree": "1bbf954ccd36b4ddf710fb7d51aac967b6efe8fe",
      "parents": [
        "17886971ffc758270bb3da3fecec86fa5b2bb3c3",
        "861c0ef37bcfcae56d88572cb01c18bcfe1faded"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jul 30 02:16:16 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jul 28 22:45:44 2014 +0000"
      },
      "message": "Merge \"Use libunwindbacktrace for debug malloc code.\""
    },
    {
      "commit": "861c0ef37bcfcae56d88572cb01c18bcfe1faded",
      "tree": "f63fc703a50b23213537962e4f60519f8b34db47",
      "parents": [
        "a7dc7600fe1be1f3fd61856b407bb7065307e711"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 24 17:52:23 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jul 29 18:10:00 2014 -0700"
      },
      "message": "Use libunwindbacktrace for debug malloc code.\n\nCreate a method of disabling the debug allocation code paths so that\nit\u0027s possible to use the libunwindbacktrace library without any\nmodifications.\n\nUse this path to create and destroy the maps for the process. It\u0027s not\nstricly necessary in the init code since the symbols are not modified\nuntil after the initialize calls.\n\nAlso, remove the debug_XXX source files that doesn\u0027t need to be in libc.so.\n\nFix the maps reading code since it was completely broken for 64 bit.\n\nBug: 16408686\n\nChange-Id: I6b02ef6ce26fdb7a59ad1029e7cbba9accceb704\n"
    },
    {
      "commit": "a7dc7600fe1be1f3fd61856b407bb7065307e711",
      "tree": "e9255c5f3358a393b7cdc56d7709a4970bb9d5d0",
      "parents": [
        "52f8271fa9fd3f84849465f3c978580fbed866c1",
        "4916706cfe590eb06c9b5bd4bd402ce056034d51"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 29 17:43:10 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jul 28 22:45:44 2014 +0000"
      },
      "message": "Merge \"Fix linkage of grantpt(3).\""
    },
    {
      "commit": "4916706cfe590eb06c9b5bd4bd402ce056034d51",
      "tree": "75e0434f53123a7f34ffb405b84899bbacc80b38",
      "parents": [
        "50a9630cc26cbc1e38e3ddc589f04fa5cd91697b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 25 17:24:00 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 25 19:55:23 2014 -0700"
      },
      "message": "Fix linkage of grantpt(3).\n\nAlso clean up the implementation of all the pty functions, add tests,\nand fix the stub implementations of ttyname(3) and ttyname_r(3).\n\nBug: https://code.google.com/p/android/issues/detail?id\u003d58888\nChange-Id: I0fb36438cd1abf8d4e87c29415f03db9ba13c3c2\n"
    },
    {
      "commit": "f4c1a36a4500bc7f12e3065be3da4e8669ee011d",
      "tree": "22654356b6c7febe5ad131e6bd4f9f13c3818d21",
      "parents": [
        "2b591b37420b4186bda7fa823b9058d4b19565f6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 29 16:43:55 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 29 16:57:47 2014 -0700"
      },
      "message": "Remove declarations for things that don\u0027t exist.\n\nThe \u003cgrp.h\u003e ones prevent gdb from building out of the box.\n\nChange-Id: I0efbffad2215cfcd75b4d442dfc972444b51d97c\n"
    },
    {
      "commit": "a406ee6d5f616192e9a13afad6ac6a9969814fc1",
      "tree": "bc9d1575ddacb246d49109367b6151732fbfe19e",
      "parents": [
        "337c0cefdc4667143a1f4f2c30113b452c5d188f"
      ],
      "author": {
        "name": "Brigid Smith",
        "email": "brigidsmith@google.com",
        "time": "Mon Jul 21 15:38:06 2014 -0700"
      },
      "committer": {
        "name": "Brigid Smith",
        "email": "brigidsmith@google.com",
        "time": "Mon Jul 28 19:38:08 2014 -0700"
      },
      "message": "Added a bionic systrace class and tracing to pthread_mutex.cpp.\n\nbionic_systrace.h contains an implementation of tracing that\ncan be used with systrace.py and its associated viewer.  pthread_mutex\nnow uses this tracing to track pthread_mutex contention, which can be\nenabled by using the \"bionic\" command line option to systrace.\n\nBug: 15116468\nChange-Id: I30ed5b377c91ca4c36568a0e647ddf95d4e4a61a\n"
    },
    {
      "commit": "50a9630cc26cbc1e38e3ddc589f04fa5cd91697b",
      "tree": "22b53e57c4f7b9621ce12d9b4fdb4c2a6129a728",
      "parents": [
        "a4c14fda9176678cadb65fb53f503fda6668f8d1",
        "905e6d58aaf515bf237e62078f8a321920fe4c6b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 25 22:01:28 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 24 20:55:36 2014 +0000"
      },
      "message": "Merge \"Start hiding \"private/bionic_time.h\".\""
    },
    {
      "commit": "905e6d58aaf515bf237e62078f8a321920fe4c6b",
      "tree": "07ee9fad11490db7e30bc27e359d5d1adf950cef",
      "parents": [
        "123172ae370fe51e2d1fc26fe0aafa095af52919"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 25 11:55:59 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 25 12:03:51 2014 -0700"
      },
      "message": "Start hiding \"private/bionic_time.h\".\n\nBug: 15765976\nChange-Id: Ibd9cf07067ec8dffe9fda6c3d498d4ab90708220\n"
    },
    {
      "commit": "1abb8bd21d64c2bd21258469b688483f821974d5",
      "tree": "53bbf37102d4f12e095eab1816506e7b84153479",
      "parents": [
        "123172ae370fe51e2d1fc26fe0aafa095af52919"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jul 25 11:24:03 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jul 25 11:24:03 2014 -0700"
      },
      "message": "en_US.UTF-8 is also supported.\n\nChange-Id: Ic35fad3596dc5e24ee8ae35543a274a471f27bb2\n"
    },
    {
      "commit": "79310994d2b3826a10598f7e7795acb5edb42a20",
      "tree": "34a7eec7841aaf4dc12eb33fe6309d078f672819",
      "parents": [
        "c7706a02ad90ab73f3a056040d2c4a3464ab1ab1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 30 15:05:09 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 30 15:19:29 2014 -0700"
      },
      "message": "Implement \u003csys/fsuid.h\u003e.\n\nChange-Id: I1e5e50444a1b5a430ba5b5d9b8b1d91219af5e92\n"
    },
    {
      "commit": "c7706a02ad90ab73f3a056040d2c4a3464ab1ab1",
      "tree": "177c6035b2ef52cb779fb38f1688e74f6dfd0002",
      "parents": [
        "18a1bbe6e18770694d489f2e140e779dc59fde86",
        "bc5a3ec6df66d2456667ddf1d6dfaf623552169d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 30 22:15:43 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 29 21:36:05 2014 +0000"
      },
      "message": "Merge \"[MIPSR6] Use C-coded string ops on mips32r6/mips64r6\""
    },
    {
      "commit": "40a521744825b6060960c296d5fb3da4c6593d94",
      "tree": "b9736886f5ca89daf4bf6cca05e090315a006dcd",
      "parents": [
        "4ad5066e1de326e5db46df18eeade9a88bc11bec"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 30 14:48:10 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 30 14:49:40 2014 -0700"
      },
      "message": "Only wipe TLS for user-supplied stacks.\n\nBug: 16667988\nChange-Id: Id180ab2bc6713e1612386120a306db5bbf1d6046\n"
    },
    {
      "commit": "d6f614a4e16b0fcf4a4fba748bf21fc0017d3619",
      "tree": "0c867acec33e9182579f155e52cdcb52feb49f4d",
      "parents": [
        "8dbe3f0f51f0cd26c22df82bdef9a2f8caea7ef6",
        "3e424d0a241f8ae5194514dabc4ad899f5a5416d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 24 22:11:05 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 24 22:07:52 2014 +0000"
      },
      "message": "Merge \"Implement twalk(3), add unit tests.\""
    },
    {
      "commit": "3e424d0a241f8ae5194514dabc4ad899f5a5416d",
      "tree": "b206a209b235ba16e560b514766853c1ac908c22",
      "parents": [
        "467e49be70231f55bd7ba908407b4413294d3bfc"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 23 16:02:26 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 24 14:55:29 2014 -0700"
      },
      "message": "Implement twalk(3), add unit tests.\n\nI\u0027ve also added insque(3) and remque(3) (from NetBSD because the OpenBSD\nones are currently broken for non-circular lists).\n\nI\u0027ve not added the three hash table functions that should be in this header\nbecause they operate on a single global hash table and thus aren\u0027t likely\nto be useful.\n\nBug: https://code.google.com/p/android/issues/detail?id\u003d73719\nChange-Id: I97397a7b921e2e860fd9c8032cafd9097380498a\n"
    },
    {
      "commit": "bc5a3ec6df66d2456667ddf1d6dfaf623552169d",
      "tree": "2f51584e75c74e72638ed319fa198bcd717a2075",
      "parents": [
        "4d421901e587fd1563da94baf59b015017c01b91"
      ],
      "author": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Thu Jul 10 15:24:27 2014 -0700"
      },
      "committer": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Wed Jul 23 14:00:21 2014 -0700"
      },
      "message": "[MIPSR6] Use C-coded string ops on mips32r6/mips64r6\n\nThe existing assembler code uses deprecated lwl/lwr/swl/swr ops.\nReplacing those with misalignment-forgiving lw/sw ops may\ninvolve careful performance tuning.\n\nChange-Id: I47a042f7b22b87d7d52e46c29c44b1db1ba8b693\n"
    },
    {
      "commit": "21972b61ec0572395c5684eebc6cc7b3a4c9e3be",
      "tree": "d785a99a7302ac6453011a26b395bc8ea5b1b337",
      "parents": [
        "8c66fd798ed5b7cefe1568d9a000d01b69d29dd9"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 28 12:24:22 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 28 12:33:07 2014 -0700"
      },
      "message": "syscall(3)\u0027s return type should be long.\n\nThis doesn\u0027t require us to change any of the syscall implementations\nbecause (a) the LP32 ones have sizeof(int) \u003d\u003d sizeof(long) anyway,\nwhich is how we never noticed this bug before and (b) the LP64 ones\nall use a 64-bit register for the result (and for the syscall number\ntoo).\n\nBug: https://code.google.com/p/android/issues/detail?id\u003d73952\nChange-Id: I9866c3579a7a94de27bfbe80ad7a822c3183c7fb\n"
    },
    {
      "commit": "f1e83cc34a58761fc7bc5178c6f283db85d6057a",
      "tree": "bfdd6078020a74f855f320fbcb87f60de7bd47e6",
      "parents": [
        "1a918d9be83013cdc8e194edf35b5295eba4ab1c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 25 20:31:47 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 28 09:43:21 2014 -0700"
      },
      "message": "Use vsnprintf(3) in syslog(3).\n\nIt seemed like a clever trick to use the internal log message formatting\ncode in syslog(3), but on reflection that means you can\u0027t (for example)\nformat floating point numbers. This patch switches us over to using good\nold vsnprintf(3), even though that requires us to jump through a few hoops.\n\nThere\u0027s no obvious way to unit test this, so I wrote a little program and\nran that.\n\n(cherry-pick of b1b60c30bf321c0fc02264b953b5c16c49d34457.)\n\nBug: 14292866\nChange-Id: I9c83500ba9cbb209b6f496067a91bf69434eeef5\n"
    },
    {
      "commit": "39d903aea901cd29a4eef3a82c2dbda59b5bc292",
      "tree": "0bc1734cb02f86b03c7749e8dfd86af62fa5a59b",
      "parents": [
        "50a9630cc26cbc1e38e3ddc589f04fa5cd91697b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 25 15:50:31 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 25 15:50:31 2014 -0700"
      },
      "message": "Remove localtime_tz and strftime_tz.\n\nThis also brings our copy of strftime.c much closer to upstream, though\nwe still have several GNU extensions and hacks to deal with Android32\u0027s\nbroken time_t.\n\nBug: 15765976\nChange-Id: Ic9ef36e8acd3619504ecc4d73feec2b61fd4dfa1\n"
    },
    {
      "commit": "ba23bd0a409bb0e43c57dabee96b2ae52481d5b7",
      "tree": "28aee3c30260e7386ab212e9dacf335797d93ab4",
      "parents": [
        "7d22a4519610f830178bbff32d961a2784354397"
      ],
      "author": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Thu Jul 24 10:56:54 2014 -0700"
      },
      "committer": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Thu Jul 24 18:04:21 2014 +0000"
      },
      "message": "[MIPS] Drop soft-fp targets\n\nChange-Id: I583bf8242d3034ebfc48548499cdb3316094c8e3\n"
    },
    {
      "commit": "7d22a4519610f830178bbff32d961a2784354397",
      "tree": "3cd58468d9463b71076fda0b70aacff9786a9f66",
      "parents": [
        "f9650757493060d950cc28c5a58acdcdd41f02e9",
        "dd37251c473e1483faba0fd5aaf30e7a55582e8a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 24 03:57:12 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jul 23 18:45:08 2014 +0000"
      },
      "message": "Merge \"[MIPSR6] setjmp supports mips32r6 and FP64A/FPXX reg models\""
    },
    {
      "commit": "dd37251c473e1483faba0fd5aaf30e7a55582e8a",
      "tree": "e944658c6ea3eafc732d7362dae7e8ce49206137",
      "parents": [
        "4d421901e587fd1563da94baf59b015017c01b91"
      ],
      "author": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Mon Jul 14 15:30:14 2014 -0700"
      },
      "committer": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Wed Jul 23 13:57:30 2014 -0700"
      },
      "message": "[MIPSR6] setjmp supports mips32r6 and FP64A/FPXX reg models\n\nSave and restore floating point registers via 64-bit\nload/stores when possible.  Use assembler\u0027s builtin macro\nops to generate pairs of 32-bit load/stores on Mips I cpus.\n\nSome cpus or FR modes have only 16 even-numbered dp fp regs.\nThis is exposed by _MIPS_FPSET, defined by existing compilers.\n\nChange-Id: I7f617a3ffea8da41c402ef3a68ab32c91d3d7622\n"
    },
    {
      "commit": "afe6360627ef3f0e9bc8f45535fbfae3354f3ae0",
      "tree": "81d3cf23f17e54ad6362ed474f6f0fb822574ffd",
      "parents": [
        "467e49be70231f55bd7ba908407b4413294d3bfc"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 23 11:38:38 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 23 11:38:38 2014 -0700"
      },
      "message": "Fix belated review comments on syslog change.\n\nBug: 14292866\nChange-Id: I3cd92084cb55b5673f6ba62d51952941b79deb51\n"
    },
    {
      "commit": "5d2f86f36341b76f84770d8966d7686a59555ae9",
      "tree": "f38155b2fb16467111705ef96adcb30b7b3afd98",
      "parents": [
        "ea42a6caea9d5cb5a92939ba0696856306b1d56b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 23 11:10:48 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 23 11:10:48 2014 -0700"
      },
      "message": "Fix generate-NOTICE to cope better with BSD __COPYRIGHT macros.\n\nChange-Id: I99f9d2e0a28342663cec6aed483e1a23c12e5e87\n"
    },
    {
      "commit": "ea42a6caea9d5cb5a92939ba0696856306b1d56b",
      "tree": "8839def1f56ae447aab3af3d28e62f9f8229a056",
      "parents": [
        "e26ac7f776c4011d17e7609efafa116ac4db25ff",
        "3758a244cf758046b40f630a11aed41e68c9cfc2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 23 16:37:52 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 22 16:25:43 2014 +0000"
      },
      "message": "Merge \"Fix a couple of bugs in generate-NOTICE and regenerate the NOTICE files.\""
    },
    {
      "commit": "3758a244cf758046b40f630a11aed41e68c9cfc2",
      "tree": "0865c62cfa06f9d0c6d5d3c5406835a5cced92b2",
      "parents": [
        "4d421901e587fd1563da94baf59b015017c01b91"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 22 21:24:47 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 22 21:29:00 2014 -0700"
      },
      "message": "Fix a couple of bugs in generate-NOTICE and regenerate the NOTICE files.\n\nChange-Id: Id6fcb74292e661504d0758bfce24abdc18cb8d32\n"
    },
    {
      "commit": "ca70453e84a88405d30f64d603f9a9b5f53f1243",
      "tree": "110680a9c44afc8945b9b2ebaa721cadb880a3bc",
      "parents": [
        "79b5a396178e798af4ba9b327b884ae014f15bb2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 22 20:21:31 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 22 20:21:31 2014 -0700"
      },
      "message": "Remove the unused swab.S.\n\nChange-Id: Id30eac5a21b649d6a039a0d7ca0496177fbfb571\n"
    },
    {
      "commit": "f541650828f75b3dab22c9c0caab845be78b80fc",
      "tree": "d437c324bf4f5d3f5477e76afc89ab78df0b0f00",
      "parents": [
        "4d421901e587fd1563da94baf59b015017c01b91"
      ],
      "author": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Wed Jul 16 12:29:34 2014 -0700"
      },
      "committer": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Tue Jul 22 14:27:48 2014 -0700"
      },
      "message": "[MIPS] Allow united mipsel and mips64el gcc toolchain\n\nExplicitly tell 32-bit links that they are doing 32-bit links.\nThis is needed when using united 32-bit and 64-bit toolchains.\nThis is harmless when using older separate 32-only toolchains.\n\nChange-Id: I70cbd3f5867e59b1f6f829793444242fb0894aa6\n"
    },
    {
      "commit": "4d421901e587fd1563da94baf59b015017c01b91",
      "tree": "bc8d44e08bfb7cca6a7f1edd86930d8c62fcade4",
      "parents": [
        "925d388e24945afb17f66d5c132f993e6a0d4fee",
        "2b67d7dee09852789d9ac7d8972ed6cdb2c18430"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 22 01:59:20 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jul 21 15:45:37 2014 +0000"
      },
      "message": "Merge \"Use upstream OpenBSD\u0027s arc4random.\""
    },
    {
      "commit": "2b67d7dee09852789d9ac7d8972ed6cdb2c18430",
      "tree": "a9a5165ceb108943a62dd251c2aeeccd2f96ae23",
      "parents": [
        "1fb90a8aa0086f7e4f7960a5b916b8605a9a3c96"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 18 15:57:41 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 21 14:38:16 2014 -0700"
      },
      "message": "Use upstream OpenBSD\u0027s arc4random.\n\nThe getentropy_linux.c is lightly modified to build on Android, but we\u0027re now\ncompletely in sync with upstream OpenBSD\u0027s arc4random implementation.\n\nChange-Id: If32229fc28aba908035fb38703190d41ddcabc95\n"
    },
    {
      "commit": "925d388e24945afb17f66d5c132f993e6a0d4fee",
      "tree": "3ca96fb9e334eb836c7000bb03feacf1b709ee07",
      "parents": [
        "b828eaeb4512baba6d43a56da682bd7329079822",
        "3ad8ecb64e9dd5614169232b84a93eb3b8aa32d7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 22 01:47:48 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jul 19 23:20:08 2014 +0000"
      },
      "message": "Merge \"Rewrite syslog(3) to use Android logging.\""
    },
    {
      "commit": "3ad8ecb64e9dd5614169232b84a93eb3b8aa32d7",
      "tree": "f756f624e7cc5bb019465444881deb6ffbc2dfe6",
      "parents": [
        "1fb90a8aa0086f7e4f7960a5b916b8605a9a3c96"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 21 16:35:24 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 21 16:56:48 2014 -0700"
      },
      "message": "Rewrite syslog(3) to use Android logging.\n\nSince we don\u0027t have syslogd on Android and you can\u0027t run one on a non-rooted\ndevice, it\u0027s more useful if syslog output just goes to the regular Android\nlogging system.\n\nBug: 14292866\nChange-Id: Icee7f088b97f88ccbdaf471b98cbac7f19f9210a\n"
    },
    {
      "commit": "ee7f1b5946dffa3aa95394b8cf6f15527f1068eb",
      "tree": "483b793c397fa80ba119f84358a868671bf1dc3e",
      "parents": [
        "1fb90a8aa0086f7e4f7960a5b916b8605a9a3c96"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jul 21 17:16:30 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jul 21 17:16:30 2014 -0700"
      },
      "message": "There is no _MIN for unsigned types.\n\nChange-Id: I49c38e51197b750210bdbf28c9cf6db30452a206\n"
    },
    {
      "commit": "1fb90a8aa0086f7e4f7960a5b916b8605a9a3c96",
      "tree": "15032f013bcf2f4b96c346f70fa0a801d6cb3793",
      "parents": [
        "e9731387f46938dd73fcda0193460b33655400c4",
        "6b55ba54eff4657cffe053b71e1c9cce2944a8a9"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jul 21 18:47:05 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 17 22:34:19 2014 +0000"
      },
      "message": "Merge \"Fix mbsrtowcs(3)\u0027s handling of len parameter.\""
    },
    {
      "commit": "6b55ba54eff4657cffe053b71e1c9cce2944a8a9",
      "tree": "cec574487f5fe5c039a9b2acd90ea4dbe22e8066",
      "parents": [
        "7dd126a38ca501818b07927f310dcc0f531c0f1f"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Sun Jul 20 11:51:26 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jul 21 11:45:48 2014 -0700"
      },
      "message": "Fix mbsrtowcs(3)\u0027s handling of len parameter.\n\nThe len parameter is a _maximum_ length. The previous code was treating\nit as an exact length, causing the following typical call to fail:\n\n    mbsrtowcs(out, \u0026in, sizeof(out), state); // sizeof(out) \u003e strlen(in)\n\nChange-Id: I48e474fd54ea5f122bc168a4d74bfe08704f28cc\n"
    },
    {
      "commit": "97e31dedf056b07bcfcd46c49b60bf0798c60843",
      "tree": "376eeda115899cee701483913620a0a261b56351",
      "parents": [
        "7dd126a38ca501818b07927f310dcc0f531c0f1f"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Sun Jul 20 11:49:46 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jul 21 11:10:00 2014 -0700"
      },
      "message": "__libc_fatal should print a newline to stderr.\n\nChange-Id: I088dc880d7488a65beac8cda95f530f3db41f112\n"
    },
    {
      "commit": "9c07aee83b4ebbf2dba8e23d6896683187b9724e",
      "tree": "b9defb3829557ad1d794a0f4e919e5559ec35b2a",
      "parents": [
        "3c2b71ad5612721c7073a4396cdad2c00e86ba54"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 18 15:55:41 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 18 16:15:32 2014 -0700"
      },
      "message": "Clean up some misinformation around prctl.\n\nprctl shouldn\u0027t be in \u003cunistd.h\u003e.\n\nChange-Id: I29609fc91c033e1ad143b75d9b4eb17aefbd63d6\n"
    },
    {
      "commit": "6425327c3278137d153b8a7505f97d2f5f058d49",
      "tree": "89601d76e7adb7fa4e2629444d9318068825bcc1",
      "parents": [
        "d18b87f38de8644acdcd1a112bd06d3a70d2ea1d"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jul 18 12:26:45 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jul 18 14:16:51 2014 -0700"
      },
      "message": "Use the mmap/munmap for allocation routines.\n\nTo avoid any issues calling malloc related routines, use mmap/munmap.\nSpecifically, this avoids any problems when this is compiled into a\nmalloc debug shared library.\n\nChange-Id: Iae2d197145da43dc103ad6024357d8cc2374378f\n"
    },
    {
      "commit": "d18b87f38de8644acdcd1a112bd06d3a70d2ea1d",
      "tree": "83b787d14832a328906913b27e881833016d7734",
      "parents": [
        "76282482dbb05bf97a834d20b3ccf98de3f5a31d",
        "8a3d1ca183e19d849728318fe8b0d36856fa000f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 18 00:17:29 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 17 22:33:42 2014 +0000"
      },
      "message": "Merge \"Remove SIOCKILLADDR from \u003csys/socket.h\u003e.\""
    },
    {
      "commit": "8a3d1ca183e19d849728318fe8b0d36856fa000f",
      "tree": "cf1501291aa53c434adbdcfa5dab9e52421d0844",
      "parents": [
        "6bf42ddc7962dec56840eb370bfe7b0469a4efb1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 17:10:02 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 17:10:02 2014 -0700"
      },
      "message": "Remove SIOCKILLADDR from \u003csys/socket.h\u003e.\n\nChange-Id: I6b64a9abe01c786a9ec26aee1517cb981a4860fb\n"
    },
    {
      "commit": "9f165d24f00c3bd4337ef719105bfb36bfa00a8b",
      "tree": "020c6cfafd62de69a87e295a5013870352485621",
      "parents": [
        "6bf42ddc7962dec56840eb370bfe7b0469a4efb1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 17:12:35 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 17:12:35 2014 -0700"
      },
      "message": "Remove PR_SET_TIMERSLACK_PID from \u003csys/prctl.h\u003e.\n\nChange-Id: Ie70f23c80e8473ac9617b74967d7c84709f5b00d\n"
    },
    {
      "commit": "2f9c6e38b8f59ea6e53e95e062e04dc987ac67f3",
      "tree": "357f52fa44154578044df31cf4ee3e281d206201",
      "parents": [
        "169e2bf6bd092ea3599cfe3426766988ec66658a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 15:09:17 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 15:09:17 2014 -0700"
      },
      "message": "Fix private/bionic_name_mem.h build breakage.\n\nChange-Id: I8fe9c63dbbb5911721ca56791c0bff4bdf403314\n"
    },
    {
      "commit": "d7453860a6b06e7d4a960c20792ce6f0b6cc5f3a",
      "tree": "eb16bdf461a93257bf1f16a7e7eabb36f52a4e46",
      "parents": [
        "43363ab7202a935e12cf6a38d32a48433bdc3705"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 14:26:33 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 14:26:33 2014 -0700"
      },
      "message": "Remove non-standard prctl constants from \u003csys/prctl.h\u003e.\n\nAlso remove __bionic_name_mem which has exactly one caller, and is only\never expected to be used in this one place.\n\nChange-Id: I833744f91e887639f5b2d1269f966ee9032af207\n"
    },
    {
      "commit": "43363ab7202a935e12cf6a38d32a48433bdc3705",
      "tree": "b0230c07aac21781e1f124876629a164f4dc299f",
      "parents": [
        "94f84d36a9f16030546a667bab6c66a59e41e4bd",
        "8b002362d996859ebfc8588d6859a9a79203dc27"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Jul 17 00:41:03 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jul 16 23:31:38 2014 +0000"
      },
      "message": "Merge \"Define atomic_charN_t only if charN_t is supported.\""
    },
    {
      "commit": "8b002362d996859ebfc8588d6859a9a79203dc27",
      "tree": "956126751b812cbba9b829bc81167207e72d4ba7",
      "parents": [
        "385bb1ededa734e88bafb8aaf817e9a984bf0d18"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed Jul 16 11:33:48 2014 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed Jul 16 17:31:05 2014 -0700"
      },
      "message": "Define atomic_charN_t only if charN_t is supported.\n\nSome platform code is apparently compiled with switches that do\nnot support char16_t and char32_t.  This caused stdatomic.h to fail\nto compile.  This CL makes stdatomic.h usable in those environments.\n\nChange-Id: Ie5a17f20b8b545c97128d00605b4eabd2a6bfe3e\n"
    },
    {
      "commit": "98b088dce70a2625d5cfa1872e427af5f06bfd99",
      "tree": "700f61f789e13229ca9300c6eecdf212a7936596",
      "parents": [
        "f13aa6fc5b66d1c98b7fd4b43e20515033707e56"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 16 15:18:54 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 16 16:07:10 2014 -0700"
      },
      "message": "ptrace(3) should be varargs.\n\nBug: 16352070\nChange-Id: Ied72e6e79eaf912fc93fc49ae7637af321a31a59\n"
    },
    {
      "commit": "625993dfbb085a3cde7492eda8ec1cdc1ee39a78",
      "tree": "4385fee1dde6d90f42c616a2afc6766824f72835",
      "parents": [
        "770d0f6177ca1ad242b509151fb612f07ef8a07b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 15 16:53:13 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 16 14:27:43 2014 -0700"
      },
      "message": "Use VDSO for clock_gettime(2) and gettimeofday(2).\n\nBug: 15387103\nChange-Id: Ifc3608ea65060c1dc38120b10b6e79874f182a36\n"
    },
    {
      "commit": "64035c4a4b52ce87398e3a5945ad6b755c8f35b1",
      "tree": "268f0dbec0287a0053d5067d31e2af9b845610c3",
      "parents": [
        "52023cb725ade3a4ace8631af8d6df5b47dc4def",
        "ea271fdf2671707ed29bc6b564f544d2489115ff"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jul 16 02:08:18 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 15 20:47:30 2014 +0000"
      },
      "message": "Merge \"Add gen syscalls step to instructions.\""
    },
    {
      "commit": "ea271fdf2671707ed29bc6b564f544d2489115ff",
      "tree": "fa062ffbabbd1c5746e2ec1f79f6d97564d7e29e",
      "parents": [
        "51c914b7fd0994f09ef11e9038f2b1df4b909358"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jul 15 19:02:33 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jul 15 19:02:33 2014 -0700"
      },
      "message": "Add gen syscalls step to instructions.\n\nAlso, fix incorrect path to some tools.\n\nChange-Id: I409fc02d7077f0d2811d90be19550e70f5d73c0e\n"
    },
    {
      "commit": "3fa60e10bcbfb8c7d94aeefc427640371683c920",
      "tree": "3d09a932a104bba5aa8d13d6de76760c0c762cab",
      "parents": [
        "51c914b7fd0994f09ef11e9038f2b1df4b909358"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 15 18:39:27 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 15 18:39:27 2014 -0700"
      },
      "message": "Regenerate the syscalls list after the uapi update.\n\nChange-Id: I117c5b18f735376dd3ab5061018dc7db9c046202\n"
    },
    {
      "commit": "27047faf283cb9d3d025a984cd9934fd2c404407",
      "tree": "d54a48f6fbfa2beb35823089794e0fd04bde8eeb",
      "parents": [
        "5656a0c4943a9b14baa4fc135980f91591723156"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Jul 14 18:47:23 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jul 15 12:33:48 2014 -0700"
      },
      "message": "Fix BIONIC_ROUND_UP_POWER_OF_2 for 64 bit.\n\nThere were two bugs here:\n\n- For 64 bit values, this did not properly round up.\n- The macro rounded to the power of 2 less than value, not to the power\n  of 2 greater than value.\n\nChange-Id: If8cb41536a9d2f5c1bc213676f1e67a7903a36b0\n"
    },
    {
      "commit": "e612add0516b1b6dd83f3ea1a1446cd6b8c2f7e5",
      "tree": "0929f020c172dd38fcc89fcc41cf91b3ee3f96b6",
      "parents": [
        "ee3608f9d3259a0ef22a27932a3f5149fb2763c8"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jul 14 15:48:02 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jul 14 15:48:02 2014 -0700"
      },
      "message": "Remove isascii_l(3).\n\nHad intended to remove this one before submitting the locale changes,\nbut forgot. It isn\u0027t a standard ctype function, so we don\u0027t need it.\n\nChange-Id: Ie9c09fa6c61b1101b5992fa06da30e373a0c6bf7\n"
    },
    {
      "commit": "a167eef5482d4a89d4277ec74f57adbe38052813",
      "tree": "53cfbccf1f41116a46996951eb08b6f00fb1fd09",
      "parents": [
        "673bff01aed0c08991b98841ed0bfad78a589672"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 14 14:41:47 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 14 15:13:30 2014 -0700"
      },
      "message": "Fix visibility for a bunch more symbols.\n\nBug: 11156955\nBug: 15291317\nChange-Id: I664f25cce7c17085a101d6593d8e01525a1f6a90\n"
    },
    {
      "commit": "673bff01aed0c08991b98841ed0bfad78a589672",
      "tree": "9d97ebd099e97d25702dc44d5861a22e8c6bb263",
      "parents": [
        "4ae938698c89e9e3c79008d9a833db726779accd",
        "76c241b091b4d9d9a9237d40e814e52ce2917f47"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 14 19:19:58 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jul 14 17:20:33 2014 +0000"
      },
      "message": "Merge \"Implement rand/srand in terms of random/srandom.\""
    },
    {
      "commit": "76c241b091b4d9d9a9237d40e814e52ce2917f47",
      "tree": "fb7139355285a3b9efcabd6009b8f2d36024a9fe",
      "parents": [
        "83ce99d8b7e2b15b2169e6e6e18e871ad35abb6c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 14 11:57:03 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 14 12:02:22 2014 -0700"
      },
      "message": "Implement rand/srand in terms of random/srandom.\n\nCode developed for glibc or older versions of bionic might expect more\nrandomness than the BSD implementation provides.\n\nBug: 15829381\nChange-Id: Ia5a908a816e0a5f0639f514107a6384a51ec157e\n"
    },
    {
      "commit": "4ae938698c89e9e3c79008d9a833db726779accd",
      "tree": "1f7f3c3e8c2e1042263cd03b3016518bcd8e84e8",
      "parents": [
        "91f2074e5f4e475d7c88d9cdaeb7dcdc9d9ff882",
        "4f0b67a8dbf0e1d8b1dae42358553fb8d14456d4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 14 19:15:32 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jul 14 17:15:23 2014 +0000"
      },
      "message": "Merge \"Sync upstream-openbsd.\""
    },
    {
      "commit": "4f0b67a8dbf0e1d8b1dae42358553fb8d14456d4",
      "tree": "3c6403a39b402071fe1757014b57a7d898012450",
      "parents": [
        "83ce99d8b7e2b15b2169e6e6e18e871ad35abb6c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 14 11:22:59 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 14 11:22:59 2014 -0700"
      },
      "message": "Sync upstream-openbsd.\n\nChange-Id: I5b9961a57e2ff05f63bd218c130bf8347850b9be\n"
    },
    {
      "commit": "53c3c271dc9927dd280981fc23409af60f460007",
      "tree": "4a04122167583b9994204372bbc549a8174b9611",
      "parents": [
        "83ce99d8b7e2b15b2169e6e6e18e871ad35abb6c"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Jul 11 12:59:16 2014 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Jul 14 12:05:16 2014 -0700"
      },
      "message": "Upstream atexit\n\nChange-Id: Ia454a2181b5058ed9783dc02b6b1805d0e4d2715\n"
    },
    {
      "commit": "2ba2888cac2f04daff7bbaf032d0df7a095b00c3",
      "tree": "d34ec98c0c25c770e8f81cafa8732ec661851e08",
      "parents": [
        "57a5b3380a8834ecb4a32d01433a3127454443d7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 11 21:10:15 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 11 21:11:21 2014 -0700"
      },
      "message": "Define SIOCKILLADDR which isn\u0027t in the common kernel uapi headers.\n\nChange-Id: I8760950d13a9625aa543e76bc9d6cd86ac782c2e\n"
    },
    {
      "commit": "263325d4b0c4c0e2933cb6428475ced16f0a86d5",
      "tree": "2b445382f013080f59e3f1709a049b8241a2f639",
      "parents": [
        "b8e82b5e729a1f6e30ee9593b2dbcbb3ad623874"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 11 19:54:55 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 11 19:54:55 2014 -0700"
      },
      "message": "Define three prctl constants that went missing from uapi.\n\nChange-Id: Ib81846ddefe9a75e02151c6592ed99b1f8ec5858\n"
    },
    {
      "commit": "385bb1ededa734e88bafb8aaf817e9a984bf0d18",
      "tree": "ac60c16b4dbbb393d3f9ddf2f862c4c740e48194",
      "parents": [
        "96502e273eea49c95899af57fa578c8055b9618c",
        "8c20c13100d159ff505af9e6e19cab30f368a074"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jul 11 22:58:55 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 10 20:49:23 2014 +0000"
      },
      "message": "Merge \"Add optimized memchr implementation from newlib\""
    },
    {
      "commit": "8c20c13100d159ff505af9e6e19cab30f368a074",
      "tree": "10682365383810eb7d1b793f0a01bddc15494422",
      "parents": [
        "d028b6209cde7929e6d0613cbd92cc7b766d3d09"
      ],
      "author": {
        "name": "Bernhard Rosenkränzer",
        "email": "Bernhard.Rosenkranzer@linaro.org",
        "time": "Fri Jul 11 00:17:07 2014 +0200"
      },
      "committer": {
        "name": "Bernhard Rosenkränzer",
        "email": "Bernhard.Rosenkranzer@linaro.org",
        "time": "Fri Jul 11 00:17:07 2014 +0200"
      },
      "message": "Add optimized memchr implementation from newlib\n\nAdd NEON optimized memchr adapted from newlib\n\nChange-Id: I91b2fafa243e4ab35fa56bb6171d48433c947cfd\nSigned-off-by: Bernhard Rosenkränzer \u003cBernhard.Rosenkranzer@linaro.org\u003e\n"
    }
  ],
  "next": "b8e82b5e729a1f6e30ee9593b2dbcbb3ad623874"
}
