)]}'
{
  "log": [
    {
      "commit": "722d01a991f6ddc629488660e806350336e35826",
      "tree": "c3814ed60ca3b34372ab6a38e28a8143dd6adc80",
      "parents": [
        "51366e9b16c3bc3ea6d200be66f561cc516fc995"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Dec 08 15:16:37 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Dec 08 15:16:37 2016 -0800"
      },
      "message": "Fix icu4c calling on x86.\n\nSome of the function pointer types were wrong, and x86 cares if you\nsay `int` when you meant `int8_t` (because it feels at liberty to\nleave the top bits dirty and ignore them, both sides need to agree\nwhich they\u0027re dealing with).\n\nAlso slightly improve the wcstoimax and wcstoumax tests, since my\ninvestigation started there.\n\nBug: http://b/33451822\nTest: tests pass on x86, arm, and arm64\nChange-Id: I553193962f0cb993666f9f8e415990bba5b669e1\n"
    },
    {
      "commit": "fc0d48078a162f50d36965b8c018fed1d766516c",
      "tree": "3841a2762b9fc2851945fed86124f318610f7e39",
      "parents": [
        "53cad4bedac6a8d74b7f3650977a893a8c394e81"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Dec 06 11:10:09 2016 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Dec 06 11:15:24 2016 -0800"
      },
      "message": "loader: stop linking libdl/c/m into the loader\n\nThis is to prevent situations when libgcc.a calls into incorrect\nimplementation of dl_iterate_phdr.\n\nBug: http://b/27106625\nTest: build \u0026\u0026 run bionic-unit-tests --getst_filter\u003ddl*:Dl*\nChange-Id: I4cba8c4a156f91f17ba3d95c39cb80f9b70c9d8f\n"
    },
    {
      "commit": "40d51f0d282f94ea240c4f35df8f4e79aaae5132",
      "tree": "15f9c7ecc2aba3f86d74d2d2b4e153867754bce4",
      "parents": [
        "f8b4ff4aa1c1a855627b8dc36f0675d69ab9109d"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Mon Dec 05 10:42:12 2016 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Mon Dec 05 12:45:10 2016 +0900"
      },
      "message": "Remove all system properties references\n\nTest: as follows\n    - build\n    - flash\n    - runtest -x system/netd/tests/netd_integration_test.cpp\nBug: 33308258\nChange-Id: I59526cb91e91b35a63ba6b413d444712568463e4\n"
    },
    {
      "commit": "f8b4ff4aa1c1a855627b8dc36f0675d69ab9109d",
      "tree": "08d415c92e8008104cd11fd76574816be320c70e",
      "parents": [
        "14998554dd325abd432cf0f0ea07bf4a1f6b2c07",
        "6eb8fb5f86b09f00d1b1781963fbbfcc3aa5d145"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 05 00:01:34 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 05 00:01:34 2016 +0000"
      },
      "message": "Merge \"Remove obsolete #include and comment.\""
    },
    {
      "commit": "6eb8fb5f86b09f00d1b1781963fbbfcc3aa5d145",
      "tree": "75102ede517de6b93a98a5d0325ef3ebbdc6525e",
      "parents": [
        "b2d36b4ec7de0b8cb88622c0398d8d9a7302ee6f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 02 17:43:34 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Dec 02 17:51:56 2016 -0800"
      },
      "message": "Remove obsolete #include and comment.\n\nBug: http://b/33308258\nTest: builds\nChange-Id: Id6bbdae536a12134899fa57ea799f488d018db00\n"
    },
    {
      "commit": "14998554dd325abd432cf0f0ea07bf4a1f6b2c07",
      "tree": "6ec3a44c675418524e47907bbc3a2210d6a22c74",
      "parents": [
        "297ad4cbb835416d7659a4f41393cbd234a3c511",
        "0e4cdff76bc6e4cb82d7d91ff6baa80a0b1c26d4"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 02 23:55:54 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 02 23:55:55 2016 +0000"
      },
      "message": "Merge \"Don\u0027t flush the per-netid cache when adding nameservers.\""
    },
    {
      "commit": "f634655e6453e7d7ec453faa16cf4c97e4a5c630",
      "tree": "ef75cd449ddf401e084a49f90bdb28109b58c6c9",
      "parents": [
        "4511a59ab461745ec8f0d520645aa88ad8390aba"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Dec 02 12:02:03 2016 -0800"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Dec 02 13:03:30 2016 -0800"
      },
      "message": "Fix wcsto* where strings begin with whitespace.\n\nThe libc++ tests caught this.\n\nTest: adb shell /data/nativetest/bionic-unit-tests/bionic-unit-tests\nBug: None\nChange-Id: I14864e006f6cf9de3f96acac6aa3eb235894f2b1\n"
    },
    {
      "commit": "0e4cdff76bc6e4cb82d7d91ff6baa80a0b1c26d4",
      "tree": "4b93b7298800d391ee0c0067c3cefc399df8070e",
      "parents": [
        "4511a59ab461745ec8f0d520645aa88ad8390aba"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Tue Nov 08 18:06:57 2016 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 02 04:28:43 2016 +0900"
      },
      "message": "Don\u0027t flush the per-netid cache when adding nameservers.\n\nThis wasn\u0027t really necessary in the \u003e\u003d Lollipop architecture.\n\nTest: netd_integration_test fails (fixing separately)\nBug: 32517984\nChange-Id: I8115bfe913ae6609f64b55161a1c8e28ce2619cf\n"
    },
    {
      "commit": "cf922ff804a00fab3bc81b418053eb5f595f1c58",
      "tree": "0fa724ee1eab2905f9228681febb7074b2eeb5bb",
      "parents": [
        "68ddf5cad39de9d43b9f3b0f14e85153ce07fe52",
        "9af74907d1eaa4e970770715b1aa424b25242260"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Dec 01 03:08:44 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 01 03:08:44 2016 +0000"
      },
      "message": "Merge \"Clean up \u003csys/limits.h\u003e a bit.\""
    },
    {
      "commit": "68ddf5cad39de9d43b9f3b0f14e85153ce07fe52",
      "tree": "acb2ced64adb06f38c960c70ca87d53de96acdc7",
      "parents": [
        "f347046f2dcc1900224370bb9a4f8580a25c2a16",
        "4bf55226623801fab4751bc0736a07e044d00b49"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 30 23:06:26 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 30 23:06:26 2016 +0000"
      },
      "message": "Merge \"Abort harder.\""
    },
    {
      "commit": "f347046f2dcc1900224370bb9a4f8580a25c2a16",
      "tree": "e0778a5cbc06cb6f7a199cfac8a0fc73e8e1f7e9",
      "parents": [
        "f563ae89be76fbe43a0299ed17485abd06927b6a",
        "bc232b9f3430734c5fcd965962e80cc2a6d2a31e"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Wed Nov 30 21:34:04 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 30 21:34:05 2016 +0000"
      },
      "message": "Merge changes Iade6a185,Iab3050bd\n\n* changes:\n  Cleanup: replace sanitize:never with address:false.\n  Add __libc_arc4random_unlimited_entropy.\n"
    },
    {
      "commit": "f563ae89be76fbe43a0299ed17485abd06927b6a",
      "tree": "e7474c908f4c8fe55845f8f2f98c28e855fb7d6e",
      "parents": [
        "04a3b24d7e11cf330e3bb637641966ce951cb387",
        "063e86ace8df5e00f69d99f6d9d138a7ab17df1f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 30 19:43:29 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 30 19:43:30 2016 +0000"
      },
      "message": "Merge \"Ship all the UAPI bits.\""
    },
    {
      "commit": "04a3b24d7e11cf330e3bb637641966ce951cb387",
      "tree": "817ddd754c348bb7f15a3863d2f415a234156194",
      "parents": [
        "fa1a85d0031c1846f7c2a6137c614f6a12dd2279",
        "753361a981b473886b0df4558f3c8c9f2f8ef4cc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 30 19:26:05 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 30 19:26:06 2016 +0000"
      },
      "message": "Merge \"Correct the return types of readv and writev.\""
    },
    {
      "commit": "9af74907d1eaa4e970770715b1aa424b25242260",
      "tree": "f1fe75fc71843b7123bf80ede7e55b57440bcc47",
      "parents": [
        "609880c12f009bba9bca696df1d6796eb4aba5ad"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 18:06:34 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 30 09:06:53 2016 -0800"
      },
      "message": "Clean up \u003csys/limits.h\u003e a bit.\n\n\u003csys/limits.h\u003e shouldn\u0027t even exist, but leave it in for backwards\ncompatibility.\n\nEverything that seems legit moves to \u003climits.h\u003e, though it still seems\nlike a lot of that ought to come from the compiler instead (there\u0027s even\nan angry rant in the clang header to that effect).\n\nUnfortunately, we\u0027ve long exposed [a copy and paste of] the contents\nof \u003cfloat.h\u003e from \u003climits.h\u003e and \u003csys/limits.h\u003e. This patch preserves\nthat for backwards compatibility, but at least switches us over to\nusing the real \u003cfloat.h\u003e instead.\n\nBug: http://b/32776472\nTest: builds\nChange-Id: I2d5b3b5237b3a0442195e99bb967c076ce484f35\n"
    },
    {
      "commit": "fa1a85d0031c1846f7c2a6137c614f6a12dd2279",
      "tree": "ed8d084df93ed051a0688432dac858a6987f381e",
      "parents": [
        "609880c12f009bba9bca696df1d6796eb4aba5ad",
        "745e45556568b3def6d028982008951791efe5c1"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Nov 30 11:16:38 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 30 11:16:38 2016 +0000"
      },
      "message": "Merge \"Update timezone data to 2016j\""
    },
    {
      "commit": "4bf55226623801fab4751bc0736a07e044d00b49",
      "tree": "38365d7202df1459e15a0eae01a1e1144f0177ea",
      "parents": [
        "bd734f07167b9e24cd292e669717795f83d10157"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 16:59:26 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 22:02:25 2016 -0800"
      },
      "message": "Abort harder.\n\nSome PoS internal system can\u0027t cope with more than 4 stack frames,\nso the fact that our abort(3) implementation takes 4 frames by itself\nmakes it useless.\n\nRe-reading POSIX, it only says \"behaves as if\", so the previous\nimplementation chain wasn\u0027t mandatory and we can just go straight to\ncalling tgkill...\n\nBefore:\n\n     #00 pc 0000000000069be4  /system/lib64/libc.so (tgkill+8)\n     #01 pc 0000000000066d50  /system/lib64/libc.so (pthread_kill+64)\n     #02 pc 0000000000028110  /system/lib64/libc.so (raise+24)\n     #03 pc 000000000001d4ec  /system/lib64/libc.so (abort+52)\n\nAfter:\n\n     #00 pc 0000000000069bc8  /system/lib64/libc.so (tgkill+8)\n     #01 pc 000000000001d4c8  /system/lib64/libc.so (abort+80)\n     #02 pc 0000000000001494  /system/xbin/crasher64 (_ZL9do_actionPKc+872)\n     #03 pc 00000000000010e0  /system/xbin/crasher64 (main+88)\n\nThis is less useful on 32-bit ARM because there there\u0027s an extra trampoline\nfrom an assembler abort(3) implementation, so you\u0027ll still only get one\nmeaningful stack frame. But every other architecture will now get two!\n\nBut wait!\n\nIt turns out that the assembler hack isn\u0027t needed any more. Here we are\nunwinding just fine all the way through the 32-bit ARM crasher:\n\nBefore (with direct call to tgkill but still using the assembler):\n\n     #00 pc 00049e7c  /system/lib/libc.so (tgkill+12)\n     #01 pc 00019c6f  /system/lib/libc.so (__libc_android_abort+50)\n     #02 pc 000181f8  /system/lib/libc.so (abort+4)\n     #03 pc 00001025  /system/xbin/crasher (_ZL9do_actionPKc+656)\n     #04 pc 00017721  /system/lib/libc.so (__libc_init+48)\n     #05 pc 00000b38  /system/xbin/crasher (_start+96)\n\nAfter:\n\n     #00 pc 00049e6c  /system/lib/libc.so (tgkill+12)\n     #01 pc 00019c5f  /system/lib/libc.so (abort+50)\n     #02 pc 00001025  /system/xbin/crasher (_ZL9do_actionPKc+656)\n     #03 pc 00017721  /system/lib/libc.so (__libc_init+48)\n     #04 pc 00000b38  /system/xbin/crasher (_start+96)\n\n(As you can see, the fact that we see __libc_init rather than main was true\nwith the assembler stub too, so that\u0027s not a regression even if it does seem\nodd...)\n\nBug: N/A\nTest: ran crasher64\nChange-Id: I9dd5b214c495604c8b502c7ec0de3631080d8c29\n"
    },
    {
      "commit": "609880c12f009bba9bca696df1d6796eb4aba5ad",
      "tree": "1f56652db13d03ea145fb4ffc8724018eb581744",
      "parents": [
        "3b6b2f7c2d922888e1644355b6cb03bef363b691",
        "8f0e42fda6e5c19c3f06d8ba022501f6f480313b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 30 05:49:03 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 30 05:49:03 2016 +0000"
      },
      "message": "Merge \"Fix getpriority/setpriority types.\""
    },
    {
      "commit": "3b6b2f7c2d922888e1644355b6cb03bef363b691",
      "tree": "7f554c60f50299889bdcf0e6f53b17adb19636a4",
      "parents": [
        "b99b6762b44f50bb3aa6d9ee4bce527ab7c71065",
        "79a8f4b2c9b5096c90608018b0d3ba0cb6216ea8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 30 05:42:53 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 30 05:42:54 2016 +0000"
      },
      "message": "Merge \"Fix return type of sync(2).\""
    },
    {
      "commit": "b99b6762b44f50bb3aa6d9ee4bce527ab7c71065",
      "tree": "52d27f52520749bb1ad67a5f17fe02785409bfb4",
      "parents": [
        "bd734f07167b9e24cd292e669717795f83d10157",
        "7ec52b12efc1c4ed9cd83ba8c95fab5bbf39aaf4"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Nov 30 05:32:06 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 30 05:32:06 2016 +0000"
      },
      "message": "Merge \"Enable libc/libdl/libm/linker for host bionic\""
    },
    {
      "commit": "585fc3e5541ca8764820b5a15196dc2811541941",
      "tree": "736f251691429ad4bbcc825b53162df11150ac39",
      "parents": [
        "bd734f07167b9e24cd292e669717795f83d10157"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Nov 10 16:26:44 2016 -0800"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Tue Nov 29 15:26:08 2016 -0800"
      },
      "message": "Add __libc_arc4random_unlimited_entropy.\n\nLet the caller know when libc has an entropy source and arc4random is safe.\nThis is useful for the callers that want entropy, but don\u0027t absolutely need it.\n\nBug: http://b/27729263\nTest: booted angler-userdebug w/ safestack\nChange-Id: Iab3050bd19f23518e1676629573eebc656ba1090\n"
    },
    {
      "commit": "79a8f4b2c9b5096c90608018b0d3ba0cb6216ea8",
      "tree": "b8a6264664b4a214bc65ca33bc998f98598ac3ed",
      "parents": [
        "11b362d284b49e070813cd459584ea3dabb20b1e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 15:16:08 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 15:16:08 2016 -0800"
      },
      "message": "Fix return type of sync(2).\n\nBug: N/A\nTest: builds\nChange-Id: Ie93f1e8609baf2939c809f673b96248a384695ee\n"
    },
    {
      "commit": "8f0e42fda6e5c19c3f06d8ba022501f6f480313b",
      "tree": "66b46d97df20982bf1c86dbbea9bab952aba3170",
      "parents": [
        "11b362d284b49e070813cd459584ea3dabb20b1e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 15:10:29 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 15:14:11 2016 -0800"
      },
      "message": "Fix getpriority/setpriority types.\n\nBug: N/A\nTest: builds\nChange-Id: Ica099bae04a0260871783452811a54672094ba4a\n"
    },
    {
      "commit": "bd734f07167b9e24cd292e669717795f83d10157",
      "tree": "792553a647477a2a57612c45afaac7df43c80752",
      "parents": [
        "86841573ed240e113adba82e97d586d568b9a8b2",
        "a57ca0da69ab9a3f870a584ba1ddab9af432c639"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 23:05:31 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 29 23:05:31 2016 +0000"
      },
      "message": "Merge \"Use icu4c to implement \u003cwctype.h\u003e.\""
    },
    {
      "commit": "753361a981b473886b0df4558f3c8c9f2f8ef4cc",
      "tree": "a3b5de27e8a7005a02bd30c452ed98158da2d884",
      "parents": [
        "11b362d284b49e070813cd459584ea3dabb20b1e"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Nov 29 14:26:15 2016 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Nov 29 14:26:15 2016 -0800"
      },
      "message": "Correct the return types of readv and writev.\n\nreadv and writev should return ssize_t, not int.\n\nBug: none\nTest: `m checkbuild` on bullhead\nChange-Id: I934c2e8cb7bf76384b63cedfeab88e2f6b65971a\n"
    },
    {
      "commit": "7ec52b12efc1c4ed9cd83ba8c95fab5bbf39aaf4",
      "tree": "091ac4e81ecc619f8116a3f229ad10f8c47e017d",
      "parents": [
        "11b362d284b49e070813cd459584ea3dabb20b1e"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Mon Nov 28 17:02:25 2016 -0800"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Nov 29 21:09:05 2016 +0000"
      },
      "message": "Enable libc/libdl/libm/linker for host bionic\n\nDisables debuggerd integration unless building for android.\n\nBug: 31559095\nTest: Diff out/soong/build.ninja before/after, only change is moving\n      linker\u0027s libdebuggerd_client static lib to the beginning of the\n      list.\nTest: lunch aosp_arm64-eng; mmma -j bionic\nChange-Id: I62e725f7a9b98b7fe31637d0a835fd5846b0aff0\n"
    },
    {
      "commit": "a57ca0da69ab9a3f870a584ba1ddab9af432c639",
      "tree": "1e26c4f0e54f3db93ce18f04f49076de6cb4bdee",
      "parents": [
        "a5c16983a65e2169174a0e77a54c0ce650f87b48"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 17 18:18:08 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 19:19:30 2016 +0000"
      },
      "message": "Use icu4c to implement \u003cwctype.h\u003e.\n\nPretty useless, because the POSIX APIs are useless for actually\ninternationalization, but it lets us put this to bed for good.\n\nBug: http://b/18492914\nTest: bionic tests\nChange-Id: I4dd0aff66c44b5547039be3ffea806c865b9014a\n"
    },
    {
      "commit": "063e86ace8df5e00f69d99f6d9d138a7ab17df1f",
      "tree": "575cb992c6eacdf2bc947bfbfb05a4abd297c5f6",
      "parents": [
        "1eb0ecb5960a11b04bc36fdf85894e00ce1a1897"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Nov 29 11:09:12 2016 -0800"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Nov 29 11:17:58 2016 -0800"
      },
      "message": "Ship all the UAPI bits.\n\nTest: make ndk\nBug: None\nChange-Id: I24507846fb62b5844e06d7a424497a5ffc0357d1\n"
    },
    {
      "commit": "86841573ed240e113adba82e97d586d568b9a8b2",
      "tree": "a581beccee52a1fdfd1005090779ddbd27ba0912",
      "parents": [
        "11b362d284b49e070813cd459584ea3dabb20b1e",
        "fc8e688c322a28803b62eb5bff3c842a440bb2b5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 29 19:16:08 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 29 19:16:09 2016 +0000"
      },
      "message": "Merge \"Implement \u003clanginfo.h\u003e.\""
    },
    {
      "commit": "745e45556568b3def6d028982008951791efe5c1",
      "tree": "30ce6c62812216a372eb0e869de6469811bbba7c",
      "parents": [
        "11b362d284b49e070813cd459584ea3dabb20b1e"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Nov 29 14:46:05 2016 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Nov 29 17:08:22 2016 +0000"
      },
      "message": "Update timezone data to 2016j\n\nIANA changes:\n\nBriefly: Saratov, Russia moves from +03 to +04 on 2016-12-04.\n\n  Changes to future time stamps\n\n    Saratov, Russia switches from +03 to +04 on 2016-12-04 at 02:00.\n    This hives off a new zone Europe/Saratov from Europe/Volgograd.\n    (Thanks to Yuri Konotopov and Stepan Golosunov.)\n\n  Changes to past time stamps\n\n    The new zone Asia/Atyrau for Atyraū Region, Kazakhstan, is like\n    Asia/Aqtau except it switched from +04/+05 to +05/+06 in spring\n    1999, not fall 1994.  (Thanks to Stepan Golosunov.)\n\n  Changes to past time zone abbreviations\n\n    Asia/Gaza and Asia/Hebron now use \"EEST\", not \"EET\", to denote\n    summer time before 1948.  The old use of \"EET\" was a typo.\n\nBug: 33136357\nChange-Id: I6875bfa35b5d28839b6f4c3272fd9a1715b17aba\nTest: CtsLibcoreTestCases / CtsBionicTestCases\n"
    },
    {
      "commit": "ecebb49ac636b90b3db48b7375c26c07c95fd104",
      "tree": "ed9e333921aeb6de3a82e3f32c8317ca7bdf9cb3",
      "parents": [
        "1eb0ecb5960a11b04bc36fdf85894e00ce1a1897"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Nov 28 11:09:49 2016 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Nov 28 12:49:36 2016 -0800"
      },
      "message": "Add cortex-a7 specific routines.\n\nTest: Changed angler target to use cortex-a7 and I compiled.\nTest: Booted this version on angler and ran bionic-unit-tests.\n\nChange-Id: Ice7f6ea38a2569582161a8e659d7877918c1a45a\n"
    },
    {
      "commit": "ae693ad06cbde6049d962aeea03e285d67caa58b",
      "tree": "cc0da92b41be8c3d7e3545027bfa0dfd53836487",
      "parents": [
        "d39380cc4d3e9fdd2942da0aaafe939c38b6331e"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Wed Nov 23 10:41:35 2016 -0800"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Wed Nov 23 15:10:52 2016 -0800"
      },
      "message": "bionic: make NONBLOCK call to getrandom\n\nBy default getrandom() blocks if the entropy pool has not yet been initialized.\nThis will be an issue when init was first executed in some kernels.\n\nThis CL makes a check of getrandom readyness, by adding the GRND_NONBLOCK flag.\nIn such case, getrandom() does not block returns -1 with errno set to EAGAIN.\n\nTest: on M/S devices\nBug: 33059407\nChange-Id: I2a2ba8372a5e1c336852ba2ab77cdaac03c90389\n"
    },
    {
      "commit": "fc8e688c322a28803b62eb5bff3c842a440bb2b5",
      "tree": "afd7c15b513b9ed246f7b1cbb34de3004c5e53e0",
      "parents": [
        "a5c16983a65e2169174a0e77a54c0ce650f87b48"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Nov 18 16:27:29 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Nov 19 11:46:54 2016 -0800"
      },
      "message": "Implement \u003clanginfo.h\u003e.\n\nPOSIX locale only, as usual.\n\nThe GNU YESSTR and NOSTR extensions return the empty string in the C locale,\nso I haven\u0027t bothered supporting them.\n\nBug: http://b/1401872\nTest: bionic tests\nChange-Id: I6846839e4f9f1812344ed5dce0b93f83c0c20eb3\n"
    },
    {
      "commit": "c2395be74a69ef43f53aa6505af4df78bb03df7c",
      "tree": "6a3b0d1a67dd93d53c3704489f106148c01b01b7",
      "parents": [
        "a7e74f09b8db4dbe5ca8c74603f74dc45911aef7",
        "ac81fe8657119c265edcc2f05b3e5b7c5b17ae9f"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Nov 18 21:33:17 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 18 21:33:18 2016 +0000"
      },
      "message": "Merge \"Enable malloc debug using environment variables\""
    },
    {
      "commit": "ac81fe8657119c265edcc2f05b3e5b7c5b17ae9f",
      "tree": "99a6e825926829bb7c8d955cbc96ae1777691ef9",
      "parents": [
        "8945d5e43a25737f3f888a90742cc918b1124a05"
      ],
      "author": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Fri Aug 26 15:54:59 2016 +0100"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Nov 17 13:13:27 2016 -0800"
      },
      "message": "Enable malloc debug using environment variables\n\nPreviously malloc debug can be enabled only using global settings\naccessible to the root user only. This CL adds a new option to enable\nit using environment variables making it possible to use it with pure\nnative (shell) applications on production builds (from shell user) and\nprepares it for using it from logwrapper on production devices.\n\nRemove the old environment variable and property since they are not\nnecessary.\n\nTest: Enable malloc debug using environment variable and verify\nTest: that it only affects the commands launched from the shell.\nTest: Enable malloc debug using the property variable and verify\nTest: that it affects all commands.\nTest: Run all unit tests in 32 bit and 64 bit.\nChange-Id: Iecb75a3471552f619f196ad550c5f41fcd9ce8e5\n"
    },
    {
      "commit": "a5c16983a65e2169174a0e77a54c0ce650f87b48",
      "tree": "1e2afb4c99341581ab9ad07e0b415b2372fbce36",
      "parents": [
        "3613c20c59f931caa7d5411e4350306a4d6ad1e0",
        "f76a21a1854f56a28415e0fd87a8f43a2abcab94"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Nov 17 20:06:05 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 17 20:06:05 2016 +0000"
      },
      "message": "Merge \"Fix iswlower/iswupper.\""
    },
    {
      "commit": "5bc78c8bcd0c1e634c04029309ede3ec05f2d424",
      "tree": "ba41f009cdf5fb27c766b4efe05c4cbb566d2a85",
      "parents": [
        "8945d5e43a25737f3f888a90742cc918b1124a05"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 16 11:35:43 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 16 16:55:42 2016 -0800"
      },
      "message": "Add and use constants for the Android API levels.\n\nTest: bionic tests still pass\nChange-Id: If1b619cfc9db1d3f5d91f14f2ace71058dca0c4a\n"
    },
    {
      "commit": "f76a21a1854f56a28415e0fd87a8f43a2abcab94",
      "tree": "938b6959121d8d2224d3878f2a452c6ee613a50d",
      "parents": [
        "8945d5e43a25737f3f888a90742cc918b1124a05"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 16 15:19:08 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 16 15:19:08 2016 -0800"
      },
      "message": "Fix iswlower/iswupper.\n\nThe previous conditions were just plain wrong.\n\nTest: bionic tests\nChange-Id: Ia6d98207b1ff98ea4c6f619912e4bcdb8a7fdd24\n"
    },
    {
      "commit": "bd15515cfc0219963123bcf982782100ad0f6085",
      "tree": "2e43343429f3f163eeb134dec8a1d31a069c452a",
      "parents": [
        "7afafce8312e97f5f1f2cf99b4641a800055066e",
        "a19bc2d4edfc261bdccfc5f855c50e83477b3757"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Nov 16 18:59:02 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 16 18:59:02 2016 +0000"
      },
      "message": "Merge \"Fix uninitialized variable usage.\""
    },
    {
      "commit": "a19bc2d4edfc261bdccfc5f855c50e83477b3757",
      "tree": "2cb3b588486f4d25f0574499fe6a1913e56cacbf",
      "parents": [
        "f97b27a9c06a61206dd1edbbfc5e11b2a293b462"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Nov 15 14:04:16 2016 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Nov 16 10:55:20 2016 -0800"
      },
      "message": "Fix uninitialized variable usage.\n\nIf the dladdr call fails, then info.dli_fname will be unitialized.\nMake sure that this can\u0027t happen.\n\nBug: 32907235\n\nTest: Enabled malloc debug on an angler and verified that function names\nTest: still work.\nChange-Id: I738e66d9f37bce07bc4c10f1f9bac11fbfdae2c7\n"
    },
    {
      "commit": "0741d8d82da447dcc119fefbcd27a1e101047034",
      "tree": "244c45ce4dbb434009a4a997a7730b2b8bd2acb3",
      "parents": [
        "d5aa03600e796b894bec7662852f5715bed9e19e"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Tue Nov 15 16:42:53 2016 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Nov 15 16:53:37 2016 -0800"
      },
      "message": "Fix getrandom syscall checking\n\nTest: angler\nBug: 32838381\n(cherry-picked from commit 46289b4c0211fc48d8719b385a7e56d765510ebd)\n\nChange-Id: I102ffa26d7f39a8d3572b31f04b66ae31a9e752c\n"
    },
    {
      "commit": "d5aa03600e796b894bec7662852f5715bed9e19e",
      "tree": "6e50c3645299007f8ac4f48bab79ed1f81c421af",
      "parents": [
        "f97b27a9c06a61206dd1edbbfc5e11b2a293b462",
        "4ce94d297eaa1f41ce3db20d70bedaa432238c84"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Nov 15 23:38:01 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 15 23:38:01 2016 +0000"
      },
      "message": "Merge \"Don\u0027t pack relocations in libc.so\""
    },
    {
      "commit": "4ce94d297eaa1f41ce3db20d70bedaa432238c84",
      "tree": "fdd78bb848983f270b7644b914f7a891ee86c1d3",
      "parents": [
        "cd9ce19e9ce34db6201bdb054c40c3b9e766d2d8"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Nov 15 13:15:43 2016 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Nov 15 15:35:31 2016 -0800"
      },
      "message": "Don\u0027t pack relocations in libc.so\n\nIc9125cc1bc4c9ba9eb20d030de72e3ce1fb86fa6 disabled relocation packing\nin libc.so, but the flag was dropped when we switched to Android.bp\nin Ib0ba2d28bff88483b505426ba61606da314e03ab.\n\nBug: 20645321\nBug: 20655855\nBug: 32750616\nTest: builds\nTest: inspect out/build-aosp_angler.ninja\nTest: run app that crashes with packed libc.so\nChange-Id: Ib0630f2e342afa543bb88303fec8f9695ac583e9\n"
    },
    {
      "commit": "f97b27a9c06a61206dd1edbbfc5e11b2a293b462",
      "tree": "e3a486ebb7ce76048260ccf3f5dc8a97ac83cd32",
      "parents": [
        "b3321c961452f69650e4a6bd2a7db317a80b3234",
        "98c6688d64f7eee601e0acc82adf01f64775e6ac"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 15 19:04:25 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 15 19:04:25 2016 +0000"
      },
      "message": "Merge \"Differentiate the wctype functions we need to improve.\""
    },
    {
      "commit": "b3321c961452f69650e4a6bd2a7db317a80b3234",
      "tree": "9471f536d800a1ca4bb71a638edd11eb1a2496bd",
      "parents": [
        "cd9ce19e9ce34db6201bdb054c40c3b9e766d2d8",
        "78b8a1430debfb9361e425e52e8366409b9e5cd2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 15 00:54:08 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 15 00:54:09 2016 +0000"
      },
      "message": "Merge changes I72d37b7c,I7d254a10,I2e967acf\n\n* changes:\n  versioner: use a virtual filesystem for input files.\n  versioner: cache -cc1 flags generated by the clang Driver.\n  versioner: refactor to use CompilerInstance directly.\n"
    },
    {
      "commit": "98c6688d64f7eee601e0acc82adf01f64775e6ac",
      "tree": "2504086b9e2b9fcde64f3ffd6603ca257dde7724",
      "parents": [
        "84e269d5af7f6ae82afb066a6b69674180d44d2d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 14 12:55:59 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 14 12:55:59 2016 -0800"
      },
      "message": "Differentiate the wctype functions we need to improve.\n\nSome of these are genuinely fine as-is.\n\nTest: bionic tests still pass\nChange-Id: Iab6d86d818dcc5857e7932a9effa04001195386f\n"
    },
    {
      "commit": "cd9ce19e9ce34db6201bdb054c40c3b9e766d2d8",
      "tree": "29e8e89a658da5234a7b95bb454261040b1f037f",
      "parents": [
        "84e269d5af7f6ae82afb066a6b69674180d44d2d",
        "a170d9bfc5fd34097a184bb0ca4d2b459fd93bd1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 11 22:20:17 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 11 22:20:18 2016 +0000"
      },
      "message": "Merge changes I7f32dc9f,I9d88ddb1\n\n* changes:\n  Revert \"Revert \"Attempt to use arc4random where getauxval(AT_RANDOM) is used.\"\"\n  Revert \"Revert \"Update getentropy_linux.c from upstream.\"\"\n"
    },
    {
      "commit": "a170d9bfc5fd34097a184bb0ca4d2b459fd93bd1",
      "tree": "272823099dddc33188abc094c4902f8dd274e55d",
      "parents": [
        "98d655ce964a9c5ca8d80b54fd88f1fbb2dbb212"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Nov 10 16:08:29 2016 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Nov 10 17:02:45 2016 -0800"
      },
      "message": "Revert \"Revert \"Attempt to use arc4random where getauxval(AT_RANDOM) is used.\"\"\n\nThis reverts commit 60d052dda600f26fdb6180ac1a2c53e97df5a58a.\n\nBug: http://b/27729263\nChange-Id: I7f32dc9f9a1f21fda3213f10da940821e1bdd63f\n"
    },
    {
      "commit": "98d655ce964a9c5ca8d80b54fd88f1fbb2dbb212",
      "tree": "a8f285eb142bac9a0a46d2c10b56701fdca2356f",
      "parents": [
        "42eb0b255507ca4d3b4e94b7756c15ab742261c0"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Nov 10 16:08:20 2016 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Nov 10 17:02:37 2016 -0800"
      },
      "message": "Revert \"Revert \"Update getentropy_linux.c from upstream.\"\"\n\nThis reverts commit b3fbee449c314aee4bdc2f1720a931ea56c32f62.\n\nBug: http://b/27729263\nChange-Id: I9d88ddb11466d203514ae805f4681c92e4b63c24\n"
    },
    {
      "commit": "16016df79f846d6d21266c3b1dce1e7c24dc4be1",
      "tree": "848d465210b468dbcdb9b94a2519b40a256bf323",
      "parents": [
        "42eb0b255507ca4d3b4e94b7756c15ab742261c0"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Nov 07 18:27:16 2016 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Nov 09 13:50:07 2016 -0800"
      },
      "message": "versioner: refactor to use CompilerInstance directly.\n\nThis will make it easier to switch over to a virtual filesystem,\nwhich should drastically improve performance.\n\nThis also fixes an issue with warning/error reporting.\n\nBug: http://b/32748936\nTest: python run_tests.py\nChange-Id: I2e967acf75db29c95f3a03f4f94cccd22c367ad5\n"
    },
    {
      "commit": "8bfaac0f8ad5f280d1f893fe682e007dd0820692",
      "tree": "7ef8d9c77682ba3abd7a1ee3c5c4857c5480fb42",
      "parents": [
        "bfc6ce6424488b199cf58cf478c405ac6308c346",
        "f6a21bfac5abf7c6fc121ca1caa78528690a25dd"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Nov 08 20:59:42 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 08 20:59:42 2016 +0000"
      },
      "message": "Merge \"Eliminate deadlock in forked child due to delayed resetting mutex lock\""
    },
    {
      "commit": "bfc6ce6424488b199cf58cf478c405ac6308c346",
      "tree": "ddb16bf4200bd0927094a5b421376bfb4e315617",
      "parents": [
        "59a3439fe8d767130c8574e18c97e996c21f98e2",
        "ff5f17bc8acfd0c1382fa0fb4a1fe53102a32d49"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 08 01:05:47 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 08 01:05:48 2016 +0000"
      },
      "message": "Merge \"Remove bogus OPEN_MAX and CHILD_MAX constants.\""
    },
    {
      "commit": "ff5f17bc8acfd0c1382fa0fb4a1fe53102a32d49",
      "tree": "29c689cf8a18177689bb4e169d024434cf4cb9a0",
      "parents": [
        "2560a2703d1ab6df6d5f25ca9ff0c907de984885"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 07 14:03:00 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 07 14:03:00 2016 -0800"
      },
      "message": "Remove bogus OPEN_MAX and CHILD_MAX constants.\n\nThese are BSD-isms that don\u0027t make sense on Linux but do lead people astray.\n\nBug: http://b/32678775\nTest: builds \u0026 boots\nChange-Id: If6d3636f5f8d1b392b08c997dba2afde61b31fb6\n"
    },
    {
      "commit": "75097b1220c4d5851501736c79c2348adaee8cf2",
      "tree": "c53965b20c963294b3ae1ac23f70378c5b1decb3",
      "parents": [
        "2560a2703d1ab6df6d5f25ca9ff0c907de984885"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Nov 04 11:39:16 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Nov 07 13:12:38 2016 -0800"
      },
      "message": "Add legacy inlines for fenv APIs.\n\nTest: make native\n      Copied into the NDK and ran ndk/checkbuild.py\nBug: None\n\nChange-Id: I3d1e9317952ad23145a1f5221e347a16ebad4b0d\n"
    },
    {
      "commit": "2560a2703d1ab6df6d5f25ca9ff0c907de984885",
      "tree": "1282913e13845e6a461aa7dd69a278be484408b6",
      "parents": [
        "9957485378f8eef13f1abff56b8cff09b4fa45e6",
        "60dc6b2840ed9eb420a5783b904cdba8b9fc4f81"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Nov 07 19:12:38 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 07 19:12:38 2016 +0000"
      },
      "message": "Merge changes I660ddce6,Ic58d0481,I5d45aa72\n\n* changes:\n  Mark LIBC_DEPRECATED as platform-only.\n  Remove _ZTV9type_info from the version script.\n  Run genversion-scripts.py.\n"
    },
    {
      "commit": "9957485378f8eef13f1abff56b8cff09b4fa45e6",
      "tree": "aaa6f161d52e07776a683d4e02c7fc4cb920bd2f",
      "parents": [
        "a3ab8ebedd40774aec86c9d42173045eb58842ed",
        "5bde25f61a33bd4881d4bc015be787a07443cc25"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Nov 07 16:42:55 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 07 16:42:55 2016 +0000"
      },
      "message": "Merge \"Fix cortex-a53 inclusion of files.\""
    },
    {
      "commit": "a3ab8ebedd40774aec86c9d42173045eb58842ed",
      "tree": "00522d6f8be06931ca6bd3b63e45632d61103bd5",
      "parents": [
        "95780f2b42963380afd51ffa1bd7948a7fc26285",
        "eb596533e3fbe6a17b65ea0228946499c8da6b84"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 07 16:33:35 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 07 16:33:35 2016 +0000"
      },
      "message": "Merge \"Fix format macros for fast16 and fast32 int types.\""
    },
    {
      "commit": "275659a0fdb07b3327881a875a1c93155a25a9bc",
      "tree": "aad5d4d1dc8ba998999a9c6808ff5925e5836447",
      "parents": [
        "147fdb4724b58efed40327d3537425574fc56730",
        "4c015e209da33ccb30e4576363ef4777b69dd6d9"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Nov 07 11:11:13 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 07 11:11:13 2016 +0000"
      },
      "message": "Merge \"Update timezone data to 2016i.\""
    },
    {
      "commit": "5bde25f61a33bd4881d4bc015be787a07443cc25",
      "tree": "59a9eed84b1ae96550ec53bc13d5789933056da9",
      "parents": [
        "f1649d92f7869331ea1c4db7f2bb189489af03e6"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Sun Nov 06 23:35:15 2016 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Sun Nov 06 23:36:32 2016 -0800"
      },
      "message": "Fix cortex-a53 inclusion of files.\n\nI accidentally broken the cortex-a53 because it directly includes files\nfrom cortex-a15. Rather than revert that part, just copy over the files\nthat are needed directly so we don\u0027t run into this in the future.\n\nTest: Built the aosp_angler-userdebug target using cortex-a53 as the\nTest: arm target. Then built the bionic unit tests and ran them on\nTest: an angler.\n\nChange-Id: Id89e240b31f94e99f5076e1de973a9344486ec35\n"
    },
    {
      "commit": "f6a21bfac5abf7c6fc121ca1caa78528690a25dd",
      "tree": "3fe32d243b3fede11b25398e85a10aff1a5599c3",
      "parents": [
        "42eb0b255507ca4d3b4e94b7756c15ab742261c0"
      ],
      "author": {
        "name": "Mingwei Shi",
        "email": "mingwei.shi@intel.com",
        "time": "Thu Nov 03 14:53:45 2016 +0000"
      },
      "committer": {
        "name": "Mingwei Shi",
        "email": "mingwei.shi@intel.com",
        "time": "Mon Nov 07 03:32:57 2016 +0000"
      },
      "message": "Eliminate deadlock in forked child due to delayed resetting mutex lock\n\nFor some program implementation, the pattern like below, calling \npthread_atfork to register atfork interfaces.\n\n    pthread_atfork(\u0026atfork_prepare, \u0026atfork_parent, \u0026atfork_child);\n\nWhen the program is expected to reopen the shared library\u0027s handle \ninherited from parent in child process. Maybe, dlclose is called in \natfork_child to release the shared library handle before reopen it. \nThen, dlclose will indrectly call _cxa_finalize and finaly call \n__unregister_atfork when dso is not NULL.\n\n    atfork_child() -\u003e dlclose() -\u003e __on_dlclose() \n    \t-\u003e __cxa_finalize() -\u003e __unregister_atfork(dso)\n\nIn __unregister_atfork, firstly, it try to hold the g_atfork_list_mutex \nlock to operate the g_atfork_list. Due to the registered atfork_child is\nexecuted before resetting g_atfork_list_mutex lock in child, the child \nprocess will be blocked here because of deadlock.\n\nTest: bionic-unit-tests32 --gtest_filter\u003dpthread.pthread_atfork_child_with_dlclose \nwithout the fixing, the test will be timeout.\n\nChange-Id: I35d3001682c836e0955d6d681bc5f9297fad0c7b\nSigned-off-by: Mingwei Shi \u003cmingwei.shi@intel.com\u003e\nSigned-off-by: Qiming Shi \u003cqiming.shi@intel.com\u003e\nSigned-off-by: Chao Xie \u003cchao.xie@intel.com\u003e\n"
    },
    {
      "commit": "f41032a3e2da87d51a161da8bbcec8ae9f254bdd",
      "tree": "bab889b74e1d9b5068b92021c0fe0e911f6ea556",
      "parents": [
        "bf67936b4b23ff75f4de7976848b425d74ca2de8",
        "e462117087b5fa34ec6c1ca22c84b2a34b9ab95c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Nov 05 01:24:13 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Nov 05 01:24:14 2016 +0000"
      },
      "message": "Merge \"Set __get_thread()-\u003etid as part of clone().\""
    },
    {
      "commit": "57e094f30a3c53185d4acb1791522cd767bdc2c6",
      "tree": "fc21def4f370b817dbfffe84b1df5a99f12690af",
      "parents": [
        "832ccc266731951f009ec8fbf6e9a27b8ade71cb"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Nov 04 16:48:53 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Nov 04 16:51:45 2016 -0700"
      },
      "message": "Remove _ZTV9type_info from the version script.\n\nWe broke this ABI in L:\nhttps://android-review.googlesource.com/c/95071/.\n\nThis ABI break is now in over half of all devices, so it\u0027s more\ncorrect to not have it than it is to have it. It\u0027s also worth noting\nthat this was only ever in ARM and MIPS; it was never in x86.\n\nTest: make native\nBug: None\nChange-Id: Ic58d048191f72d58fe72a2691bebbbfeda14bdf1\n"
    },
    {
      "commit": "832ccc266731951f009ec8fbf6e9a27b8ade71cb",
      "tree": "719a9b43756171eae1868627b9a6350027853742",
      "parents": [
        "bf67936b4b23ff75f4de7976848b425d74ca2de8"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Nov 04 15:05:30 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Nov 04 16:29:16 2016 -0700"
      },
      "message": "Run genversion-scripts.py.\n\nI forgot to run this after adding NDK info to libstdc++.\n\nTest: make native\nBug: None\nChange-Id: I5d45aa7207b9eb548a233442aa0e3ab77d98baeb\n"
    },
    {
      "commit": "e462117087b5fa34ec6c1ca22c84b2a34b9ab95c",
      "tree": "96e177dcdd36a2cc1874481819da3abee2829200",
      "parents": [
        "42eb0b255507ca4d3b4e94b7756c15ab742261c0"
      ],
      "author": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Thu Nov 03 15:00:53 2016 -0400"
      },
      "committer": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Fri Nov 04 16:57:20 2016 -0400"
      },
      "message": "Set __get_thread()-\u003etid as part of clone().\n\nThis was previously done only in fork() and pthread_create(), but this left raw\nclone() with an invalid cached tid. Since the tid is used for pthread routines,\nthis led to unstable behavior after clone().\n\nTest: ltp clone01 (see bug for more)\nTest: mmma bionic/tests\nTest: bionic-unit-tests-static --gtest_filter\u003d*fork*:*clone*\n\nBug: 32612735\nBug: 32305649\nChange-Id: I30eae5a8024b4c5da65476fcadfe14c6db35bb79\n"
    },
    {
      "commit": "4c015e209da33ccb30e4576363ef4777b69dd6d9",
      "tree": "e578dbcfffdb371124d4160dd213ca72d277e412",
      "parents": [
        "aea8407ad5c7e559c4cc6a05e46e37fa22f81d35"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Nov 04 16:23:47 2016 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Nov 04 16:23:47 2016 +0000"
      },
      "message": "Update timezone data to 2016i.\n\nIANA changes:\n\n  Briefly: Cyprus split into two time zones on 2016-10-30, and Tonga\n  reintroduces DST on 2016-11-06.\n\n  Changes to future time stamps\n\n    Pacific/Tongatapu begins DST on 2016-11-06 at 02:00, ending on\n    2017-01-15 at 03:00.  Assume future observances in Tonga will be\n    from the first Sunday in November through the third Sunday in\n    January, like Fiji.  (Thanks to Pulu ʻAnau.)  Switch to numeric\n    time zone abbreviations for this zone.\n\n  Changes to past and future time stamps\n\n    Northern Cyprus is now +03 year round, causing a split in Cyprus\n    time zones starting 2016-10-30 at 04:00.  This creates a zone\n    Asia/Famagusta.  (Thanks to Even Scharning and Matt Johnson.)\n\n    Antarctica/Casey switched from +08 to +11 on 2016-10-22.\n    (Thanks to Steffen Thorsen.)\n\n  Changes to past time stamps\n\n    Several corrections were made for pre-1975 time stamps in Italy.\n    These affect Europe/Malta, Europe/Rome, Europe/San_Marino, and\n    Europe/Vatican.\n\n    First, the 1893-11-01 00:00 transition in Italy used the new UT\n    offset (+01), not the old (+00:49:56).  (Thanks to Michael\n    Deckers.)\n\n    Second, rules for daylight saving in Italy were changed to agree\n    with Italy\u0027s National Institute of Metrological Research (INRiM)\n    except for 1944, as follows (thanks to Pierpaolo Bernardi, Brian\n    Inglis, and Michael Deckers):\n\n      The 1916-06-03 transition was at 24:00, not 00:00.\n\n      The 1916-10-01, 1919-10-05, and 1920-09-19 transitions were at\n      00:00, not 01:00.\n\n      The 1917-09-30 and 1918-10-06 transitions were at 24:00, not\n      01:00.\n\n      The 1944-09-17 transition was at 03:00, not 01:00.  This\n      particular change is taken from Italian law as INRiM\u0027s table,\n      (which says 02:00) appears to have a typo here.  Also, keep the\n      1944-04-03 transition for Europe/Rome, as Rome was controlled by\n      Germany then.\n\n      The 1967-1970 and 1972-1974 fallback transitions were at 01:00,\n      not 00:00.\n\nBug: 32629043\nTest: CtsIcuTestCases / CtsLibcoreTestCases / CtsBionicTestCases\nChange-Id: Ica473348c063d2d0372b30ce6d184742db042c05\n"
    },
    {
      "commit": "aea8407ad5c7e559c4cc6a05e46e37fa22f81d35",
      "tree": "fdcc3ac51190aadab349cbdf3b1dde7f227944fd",
      "parents": [
        "42eb0b255507ca4d3b4e94b7756c15ab742261c0",
        "fe1af1a64b88bdb58cca7015d426af8c5b1a80d9"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Nov 03 22:40:16 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 03 22:40:16 2016 +0000"
      },
      "message": "Merge \"Small cleanup of cortex-a15 code.\""
    },
    {
      "commit": "42eb0b255507ca4d3b4e94b7756c15ab742261c0",
      "tree": "a45c73f20070f7c40fbd52f798d3a086977699b6",
      "parents": [
        "654287fd73f468f2bf7310be594d2ac764b43cfa",
        "e749abe9ab6dfaf9be17097f97080ee9c2f67c5d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 02 19:56:09 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 02 19:56:10 2016 +0000"
      },
      "message": "Merge changes I751520a1,I5762e815\n\n* changes:\n  Add legacy inline for wait4.\n  Revert \"Add legacy inlines for locale aware APIs.\"\n"
    },
    {
      "commit": "fe1af1a64b88bdb58cca7015d426af8c5b1a80d9",
      "tree": "19247921eb8a2648a2f321b39df018cb3fc667ea",
      "parents": [
        "8c22ff76e263db28afbfb08c2d59a46a76707d99"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Nov 01 14:25:57 2016 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Nov 01 14:28:22 2016 -0700"
      },
      "message": "Small cleanup of cortex-a15 code.\n\nRemove new version of the cortex-a15 that caused a regression. We are never\ngoing to revisit that code, and it is only confusing things.\n\nAlso remove the setting of MEMCPY_BASE and use the correct include\ndirectly.\n\nTest: Compiled angler with 32 bit arch as cortex-a15. Ran 32 bit bionic\nTest: unit tests on angler.\n\nChange-Id: I9372c01758fd7a596849c87b1a3f805bb477c94f\n"
    },
    {
      "commit": "e749abe9ab6dfaf9be17097f97080ee9c2f67c5d",
      "tree": "f2ee3a35af85b6cefd39a8cc8955789422ef2be3",
      "parents": [
        "a3ce418ca6ad440d19c98e15132a76a877eb0bdc"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Oct 31 20:12:03 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Oct 31 20:20:25 2016 -0700"
      },
      "message": "Add legacy inline for wait4.\n\nThis wasn\u0027t added to Android until android-18. Note that the reason\nI\u0027m adding an inline here even though I just reverted a bunch of\ninlines in the previous commit is because this was an inline in the\nlegacy NDK headers. If it was in the old headers, it needs to be in\nthe unified headers. If it wasn\u0027t, it needs to be in\nlibandroid_support.\n\nTest: ./tools/update_headers.py \u0026\u0026 make ndk \u0026\u0026 make native\n      # Copied into working directory for unified headers NDK work.\n      ndk/checkbuild.py\n      ndk/run_tests.py --force-unified-headers\nBug: None\n\nChange-Id: I751520a1df34b3edb5c59b4bd47170c4634a1883\n"
    },
    {
      "commit": "a3ce418ca6ad440d19c98e15132a76a877eb0bdc",
      "tree": "58f66cc6dc1d48da0d67a0c409a3f534ed90f1e3",
      "parents": [
        "9b908c8e36a6e644d5c42a7ed549ae7d4ab57667"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Oct 31 16:20:47 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Oct 31 16:47:22 2016 -0700"
      },
      "message": "Revert \"Add legacy inlines for locale aware APIs.\"\n\nWe can\u0027t really add these to the unified headers yet since we\u0027re\nstill using the old headers as well, and libandroid_support needs to\nwork with both. These functions are already defined in\nlibandroid_support, so when using unified headers we\u0027ll get duplicate\ndefinitions.\n\nThis was only going to be a temporary solution anyway. Instead we\u0027ll\njust rely on libandroid_support (and eventually its rewrite) to handle\nthese.\n\nThis reverts commit 6576a3749bd3805508294bfcac3d9658fc0f8d6e.\n\nTest: ./tools/update_headers.py \u0026\u0026 make ndk \u0026\u0026 make native\n      # Copied into working directory for unified headers NDK work.\n      ndk/checkbuild.py\n      ndk/run_tests.py --force-unified-headers\nBug: None\n\nChange-Id: I5762e815e2030c89d7f2540df08dd67b6c2d10a5\n"
    },
    {
      "commit": "8c22ff76e263db28afbfb08c2d59a46a76707d99",
      "tree": "4a49511083a75acc5ab05768a3e2c632da1282c0",
      "parents": [
        "9b908c8e36a6e644d5c42a7ed549ae7d4ab57667",
        "a4edf7a57cf818d19546c86b74146335468ea53f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Oct 29 02:09:55 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Oct 29 02:09:56 2016 +0000"
      },
      "message": "Merge \"Fix gettid() after clone().\""
    },
    {
      "commit": "9b908c8e36a6e644d5c42a7ed549ae7d4ab57667",
      "tree": "87021c3276796b81dba00b95a8a0bd0c04526faf",
      "parents": [
        "b1d98da378154cef6df238a7e20ce3e911e5649f",
        "e6ee960aeff9d543839cd84b38ce599942bca26e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 28 17:23:48 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 28 17:23:49 2016 +0000"
      },
      "message": "Merge \"Replace .align with .balign for clarity\""
    },
    {
      "commit": "a4edf7a57cf818d19546c86b74146335468ea53f",
      "tree": "1199a22df4fe7e794399611016d0a6cf7561b497",
      "parents": [
        "bd839d100d1c4802cf53f3d27bb73e6032719762"
      ],
      "author": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Tue Oct 25 10:29:02 2016 -0400"
      },
      "committer": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Fri Oct 28 12:14:23 2016 -0400"
      },
      "message": "Fix gettid() after clone().\n\nThe tid is cached in the pthread_internal_t and is properly re-set after fork()\nand pthread_create(). But after a plain clone() the value is stale from the\nparent.\n\nTest: mmma bionic/tests\nTest: bionic-unit-tests-static --gtest_filter\u003d*fork*:*clone*\nTest: m checkbuild tests\nTest: angler boots\n\nBug: 32305649\nChange-Id: I026d416d1537484cd3e05c8493a35e5ed2acc8ed\n"
    },
    {
      "commit": "e6ee960aeff9d543839cd84b38ce599942bca26e",
      "tree": "e96cfb59cb203354956fb03116f3c41d92b76ebd",
      "parents": [
        "bd839d100d1c4802cf53f3d27bb73e6032719762"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Oct 27 02:32:47 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Oct 27 05:11:56 2016 -0700"
      },
      "message": "Replace .align with .balign for clarity\n\nTest: run bionic-unit-tests\nChange-Id: Icb43cc47e41d58fe3cb71986e05b3134022f895c\n"
    },
    {
      "commit": "eb596533e3fbe6a17b65ea0228946499c8da6b84",
      "tree": "4000afc9e630b8fa45184e3595112ef820ab5fb2",
      "parents": [
        "7409b9cfed78ca730e437a8690527dfc8cf31b64"
      ],
      "author": {
        "name": "Xiaolei Yu",
        "email": "dreifachstein@gmail.com",
        "time": "Tue Oct 25 22:10:51 2016 +0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 26 17:52:38 2016 -0700"
      },
      "message": "Fix format macros for fast16 and fast32 int types.\n\nAlso change original format test to cover all cases.\n\nTest: bionic unit tests\nChange-Id: I2995145562c02918e0b596c008e63459912447ab\n"
    },
    {
      "commit": "beb879662470fb01f8062c173d9e6fc1b76988ee",
      "tree": "554ffa8777d6eb8029e9f74f2df9996c95bea7df",
      "parents": [
        "7409b9cfed78ca730e437a8690527dfc8cf31b64"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 26 17:01:32 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 26 17:01:58 2016 -0700"
      },
      "message": "Use ENTRY_PRIVATE in __bionic_clone assembler.\n\nBug: N/A\nTest: bionic tests\nChange-Id: Ic651d628be009487a36d0b2e5bcf900b981b1ef9\n"
    },
    {
      "commit": "689ba18e11e12d831bb036d34d7aa73d857a5093",
      "tree": "a4777b041d11d1d154a32fe97de1907083df6a17",
      "parents": [
        "268b3d8878e6b22a57fe52b127aa4bcdbf7c2c2b",
        "9bf2497c4aaf2bd405b275de872aacc3f2c78bdd"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 26 15:33:11 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Oct 26 15:33:12 2016 +0000"
      },
      "message": "Merge \"_FILE_OFFSET_BITS\u003d64\u0027s posix_fallocate should be posix_fallocate64.\""
    },
    {
      "commit": "9bf2497c4aaf2bd405b275de872aacc3f2c78bdd",
      "tree": "a3fb2cb8008aa60f5c979a65973c0d2a06e1c118",
      "parents": [
        "5e6eb761fcc3df72dd3aca9fef8ab859b98b0e9c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 25 14:13:32 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 25 14:13:32 2016 -0700"
      },
      "message": "_FILE_OFFSET_BITS\u003d64\u0027s posix_fallocate should be posix_fallocate64.\n\nBug: found when reproducing http://b/32331571\nTest: \"toybox fallocate -l 3m /data/local/tmp/new\" on LP32\nChange-Id: I4ec5835813b9556d824a12ad650bdf55698ea539\n"
    },
    {
      "commit": "268b3d8878e6b22a57fe52b127aa4bcdbf7c2c2b",
      "tree": "f13e148fbe472be848fb7e8f17f98f882c234849",
      "parents": [
        "e0baade272a531a42dfa0a1c32769097be8ef653",
        "08bfe4f351eaee3b956419186c6bc2b3b967560f"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Oct 25 08:28:11 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 25 08:28:11 2016 +0000"
      },
      "message": "Merge \"Update timezone data to 2016h.\""
    },
    {
      "commit": "e0baade272a531a42dfa0a1c32769097be8ef653",
      "tree": "0e10d313ad80a45380f8585553c7462a6a060032",
      "parents": [
        "5e6eb761fcc3df72dd3aca9fef8ab859b98b0e9c",
        "4da06c0d64fd2b4680fb4123f21a6fc8720e1c1e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 25 04:43:19 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 25 04:43:20 2016 +0000"
      },
      "message": "Merge \"Don\u0027t scan .swp files for copyright headers.\""
    },
    {
      "commit": "4da06c0d64fd2b4680fb4123f21a6fc8720e1c1e",
      "tree": "f9e55149e92c9f97df4fe1d3cb3a52dec3f25855",
      "parents": [
        "bd839d100d1c4802cf53f3d27bb73e6032719762"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 17:34:42 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 17:34:42 2016 -0700"
      },
      "message": "Don\u0027t scan .swp files for copyright headers.\n\nThese are binary files, so that\u0027s not a good idea.\n\nBug: N/A\nTest: N/A\nChange-Id: If5e98df4bbbbac8a15a953be043df7d05c2b409a\n"
    },
    {
      "commit": "5e6eb761fcc3df72dd3aca9fef8ab859b98b0e9c",
      "tree": "a7712415a8221c895e5a1cbfb16d3ba75ceedc99",
      "parents": [
        "ac96f6affcaaa58556f9e7371e3cdea33215eb3c",
        "53de874c3cd5b8aa243546bb1c206f5a709db1fd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 25 00:33:43 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 25 00:33:43 2016 +0000"
      },
      "message": "Merge \"The default locale \"\" should be a UTF-8 locale.\""
    },
    {
      "commit": "53de874c3cd5b8aa243546bb1c206f5a709db1fd",
      "tree": "982316adf0c878fb85bf7c4579a04c4f631424dc",
      "parents": [
        "bd839d100d1c4802cf53f3d27bb73e6032719762"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 14:50:31 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 14:50:31 2016 -0700"
      },
      "message": "The default locale \"\" should be a UTF-8 locale.\n\n\"ls -q\" (or \"adb shell -tt ls\") was mangling non-ASCII because mbrtowc\nwas returning multibyte characters as their individual bytes. This was\nbecause toybox asks for \"\" rather than \"C.UTF-8\", and for some reason\nwe were interpreting that as \"C\" rather than \"C.UTF-8\".\n\nTest: bionic tests, ls\nChange-Id: Ic60e3b90cd5fe689e5489fad0d5d91062b9594ed\n"
    },
    {
      "commit": "dfb74c5f597542c7587a4144eb31b143d82a2281",
      "tree": "6518b6dbd451d3359c9daec78867a66481dc77fd",
      "parents": [
        "bd839d100d1c4802cf53f3d27bb73e6032719762"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 12:53:17 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 12:57:55 2016 -0700"
      },
      "message": "Minor copyright header unification.\n\nRegenerating the NOTICE file the other day left me scratching my head at\nvarious \"how do they differ?\" cases, resolved by this patch.\n\nTest: N/A\nChange-Id: I4230bfa1d7ec842a4b9fb8c73dd3b39443d74054\n"
    },
    {
      "commit": "08bfe4f351eaee3b956419186c6bc2b3b967560f",
      "tree": "dd890c96d2b5e2ba9e013593190ad4b0f8a1754d",
      "parents": [
        "bd839d100d1c4802cf53f3d27bb73e6032719762"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Oct 21 14:35:42 2016 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Oct 21 14:38:27 2016 +0100"
      },
      "message": "Update timezone data to 2016h.\n\nIANA update relating to the data as follows:\n\nThe 2016h release of the tz code and data is available. Its primary\nmotivation is to update to the new rules for Palestine, where 2016g\nbecomes incorrect starting about four hours from now (sorry, we\ndidn\u0027t get much notice). More generally, the 2016h release reflects\nthe following changes, which were either circulated on the tz mailing\nlist or are relatively minor technical or administrative changes:\n\n  Changes to future time stamps\n\n    Asia/Gaza and Asia/Hebron end DST on 2016-10-29 at 01:00, not\n    2016-10-21 at 00:00.  (Thanks to Sharef Mustafa.)  Predict that\n    future fall transitions will be on the last Saturday of October\n    at 01:00, which is consistent with predicted spring transitions\n    on the last Saturday of March.  (Thanks to Tim Parenti.)\n\n  Changes to past time stamps\n\n    In Turkey, transitions in 1986-1990 were at 01:00 standard time\n    not at 02:00, and the spring 1994 transition was on March 20, not\n    March 27.  (Thanks to Kıvanç Yazan.)\n\n  Changes to past and future time zone abbreviations\n\n    Asia/Colombo now uses numeric time zone abbreviations like \"+0530\"\n    instead of alphabetic ones like \"IST\" and \"LKT\".  Various\n    English-language sources use \"IST\", \"LKT\" and \"SLST\", with no\n    working consensus.  (Usage of \"SLST\" mentioned by Sadika\n    Sumanapala.)\n\nBug: 32320380\nTest: Ran CtsLibcoreTestCases, CtsBionicTestCases and ICU tests\nChange-Id: I0286e7feac65f43518741d9ae18960e1adb888fb\n"
    },
    {
      "commit": "bd839d100d1c4802cf53f3d27bb73e6032719762",
      "tree": "6456ca7f920ec38e6238aa34e056976afbfb7f2d",
      "parents": [
        "93a988debb1b54993e03e2ac2b31ee8039a73c04",
        "9259265fc2331c819d3b460ee18010b49315349a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 20 22:12:39 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 20 22:12:40 2016 +0000"
      },
      "message": "Merge changes from topic \u0027ndk-headers-licenses\u0027\n\n* changes:\n  Add license to ndk_headers modules.\n  One NOTICE file to rule them all.\n"
    },
    {
      "commit": "93a988debb1b54993e03e2ac2b31ee8039a73c04",
      "tree": "7ef2efa41e7b02e335cd9034f72e79e980da34f0",
      "parents": [
        "94b428c80af1b8b4ec2d3e7b8cb3736ed8ac0f0b",
        "32d5592a6930ba4b05cbbed1b3e933d71cf7e794"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 20 22:07:55 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 20 22:07:58 2016 +0000"
      },
      "message": "Merge \"Update our notice files as a pre-upload step.\""
    },
    {
      "commit": "edecce3ac20ba4bdacda9e85e7fab30162549438",
      "tree": "89d75638cab5253bd7f3b524acef62b2bc5e0c0a",
      "parents": [
        "6901ca2799b6514b6513f4b4c2ef22e571191a94",
        "3037ea43fccf5ec64537c3ee024bc726ee723c01"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 20 19:34:56 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 20 19:34:56 2016 +0000"
      },
      "message": "Merge \"Fix stdin/stdout/stderr for pre-M.\""
    },
    {
      "commit": "9259265fc2331c819d3b460ee18010b49315349a",
      "tree": "9e71d822c301a2e985686f16b53d0e1cf577124e",
      "parents": [
        "c30862fdbc99eaf4c3859e915846e2ef316b1a47"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 20 01:42:54 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 20 11:52:05 2016 -0700"
      },
      "message": "Add license to ndk_headers modules.\n\nTest: make ndk\nBug: None\nChange-Id: I0e9a39def2be9cd81369843906f6d7c180d17045\n"
    },
    {
      "commit": "c30862fdbc99eaf4c3859e915846e2ef316b1a47",
      "tree": "8fed9a6b9eec7c4b4b7ccce1ea51e8053835463c",
      "parents": [
        "32d5592a6930ba4b05cbbed1b3e933d71cf7e794"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 20 11:45:16 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 20 11:48:55 2016 -0700"
      },
      "message": "One NOTICE file to rule them all.\n\nGenerate a single NOTICE file rather than one per library. All the\nheaders come from libc these days anyway.\n\nTest: tools/update_notice.sh\nBug: None\nChange-Id: I127da185fdabc2815042e19aea74c507ec108f46\n"
    },
    {
      "commit": "32d5592a6930ba4b05cbbed1b3e933d71cf7e794",
      "tree": "a9ba300bc3b59322a8cb4044bda22a830f3f86e9",
      "parents": [
        "d8244214751f9b48e60e69910c4e7175f8fab1ac"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 20 10:34:47 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 20 11:27:50 2016 -0700"
      },
      "message": "Update our notice files as a pre-upload step.\n\nAlso updates the license files, since apparently they\u0027re out of date.\n\nTest: repo upload --cbr .\nBug: None\nChange-Id: Ic8d855a7ee5185c4933da699292868e02ef79531\n"
    },
    {
      "commit": "3037ea43fccf5ec64537c3ee024bc726ee723c01",
      "tree": "830fda3221eb1207bb837f78298032be2d2c1706",
      "parents": [
        "d8244214751f9b48e60e69910c4e7175f8fab1ac"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 06 15:46:45 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 20 10:10:45 2016 -0700"
      },
      "message": "Fix stdin/stdout/stderr for pre-M.\n\nThis wasn\u0027t an array of pointers, it was an array of structs.\nUnfortunately we need a complete type to index into the struct for\nstdin/stdout/stderr, so add a phony struct that matches the size and\nalignment of `struct __sFILE`. This property is guaranteed by the\nstatic_asserts in libc/bionic/struct_file_test.cpp.\n\nTest: mma\nBug: http://b/30465923\nChange-Id: I8ce851dd64a261703bb44f9b5cd23b7caff4dd68\n"
    },
    {
      "commit": "73c44a4738fdb615eaede1d0ab21fc3de59105ab",
      "tree": "af209ee2d4f9f17e8aa253681f553c6ef7bac383",
      "parents": [
        "d8244214751f9b48e60e69910c4e7175f8fab1ac"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 19 09:27:02 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 19 09:28:21 2016 -0700"
      },
      "message": "Fix our _POSIX_* macros to declare barriers and spin locks.\n\nWe have these now.\n\nTest: ran tests\nChange-Id: Ie7b479061ecec19c8b35ea81e04debfd8323d94a\n"
    },
    {
      "commit": "22950687eeec07bf5075f5edaac7774857b2147f",
      "tree": "75148134ef17e8728df3e43880ae9755653c92ba",
      "parents": [
        "49ef8c822f1bfa6559782efce0f0813f0967ea29"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 14 12:15:32 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 14 14:35:26 2016 -0700"
      },
      "message": "Fix ifaddrs error handling.\n\nAn NLMSG_ERROR packet includes an errno value that we should use. Also report\nfailures to create a socket immediately, rather than falling through to the\nsend and reporting EBADF.\n\nBug: http://b/32145516\nBug: http://b/31038971\nTest: bionic ifaddr tests on ryu (with broken kernel) and flounder\nChange-Id: I84c480c5b75077eb90d40426a9d66d7bffbd3d51\n"
    },
    {
      "commit": "da01fa620ccce26ae22ebcb51a239ec68ea7b32c",
      "tree": "1e7a9ac66d9db92f022e282f44eb8105c7eb667e",
      "parents": [
        "0e6aa81999c89af2c2e6b0fef1ab21eb4da09892"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 11 12:58:40 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 11 13:07:44 2016 -0700"
      },
      "message": "Allocate all arc4random data on the same page.\n\nSaves one dirty page per process.\n\nTest: bionic unit tests, reboot, manual check of /proc/*/maps\nChange-Id: Ibbcafa955d60e43f4cb735fa484c6868aa357cd5\n"
    },
    {
      "commit": "2c8a26d8bf1e42992925458723f4d565224ffc92",
      "tree": "ac234a80971bc91591577d52dd9516c21af00a94",
      "parents": [
        "e89385743e30fdbcb7ccf87caff71b354872922b",
        "df31aff4e98437e47fe88090d8116632b80c4f43"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 11 06:01:17 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 11 06:01:17 2016 +0000"
      },
      "message": "Merge \"Migrate libstdc++ to ndk_library.\""
    },
    {
      "commit": "59bde2e8f4dacc059beb7269b86b276ec091ad57",
      "tree": "77ad07c47fe0b5d69b57babf1d034c1ae4ef3b57",
      "parents": [
        "1ba0e27462ff1b2e80457d6cb100b448afe6d10e"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Oct 07 13:21:03 2016 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Oct 07 13:21:03 2016 -0700"
      },
      "message": "Use STDERR_FILENO instead of opening /dev/stderr.\n\n/dev/stderr is a symlink to /proc/self/fd/2, so this only has different\nbehavior when we\u0027re out of file descriptors, or when STDERR_FILENO is in\na different state (it\u0027s not at the end, it\u0027s not writable, etc.).\n\nTest: mma\nChange-Id: Ie99688d810218eca8482ff060373e88c4e001824\n"
    },
    {
      "commit": "df31aff4e98437e47fe88090d8116632b80c4f43",
      "tree": "694bfdc4682b1b035838d444d7a11e57db5f729c",
      "parents": [
        "e35872605b2cd8ebadb7984a93ee38c42aafdffd"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 06 15:50:41 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Oct 06 15:50:41 2016 -0700"
      },
      "message": "Migrate libstdc++ to ndk_library.\n\nTest: make checkbuild\nBug: http://b/30465923\nChange-Id: I3b75b4e7fa652c83846c5978f9908e8b32d43aa7\n"
    },
    {
      "commit": "4edd651ed32ba3f09ace7529b5fb85f46cae508f",
      "tree": "46020283bf96ea0bae2e3cb1cc4181a6520197cc",
      "parents": [
        "0bee605aab0668083824473819f0ef2a5a5a45ee"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 03 16:46:33 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 03 16:46:33 2016 -0700"
      },
      "message": "Add missing O_CLOEXEC and TEMP_FAILURE_RETRY to localtime.c.\n\nFollow-on change from http://b/31848040.\n\nTest: *time* tests.\nChange-Id: I3f1c9ce19b90f6f8c1ac6e0753e3fed0ff63c0b4\n"
    },
    {
      "commit": "81c46fc10fa60fd341f11024d8d3f26ff2c69082",
      "tree": "3d7ab14836caafda998bbd584d1c26c01858276f",
      "parents": [
        "d6096307991c3bae2b3fcfbab8632e406cc84669"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 03 12:29:30 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 03 12:45:13 2016 -0700"
      },
      "message": "Fix tzdata loading.\n\nAndroid uses one large file of tzdata, so the \"read up to the maximum\npossible length of a valid tzfile\" code in upstream localtime.c is\nbroken: there is always data after the current tzfile (even the\nlast tzfile is followed by the zone.tab data). This patch passes the\nexact length through to the read(2) call so we don\u0027t over-read, rather\nthan have to rewrite upstream code that measures back from the \"end\" of\nthe tzfile.\n\nThe old code failed the existing time.strftime_null_tm_zone test after\nupdating to tzdata2016g.\n\nBug: http://b/31848040\nTest: time.strftime_null_tm_zone\nChange-Id: Iee059b5a8c051bd4952cfd80f02b00d83e489d5e\n"
    },
    {
      "commit": "e131f6cf33c4d99522e762d6365a3f2b75037875",
      "tree": "4055c506a6554aff30d253b76a9cebbf68872bb8",
      "parents": [
        "b81ade620359582c509229a56f17cc1feeb0dd9e"
      ],
      "author": {
        "name": "Joachim Sauer",
        "email": "jsauer@google.com",
        "time": "Fri Sep 30 16:36:51 2016 +0100"
      },
      "committer": {
        "name": "Joachim Sauer",
        "email": "jsauer@google.com",
        "time": "Fri Sep 30 16:49:38 2016 +0100"
      },
      "message": "Update timezone data to 2016g.\n\nThe 2016g release of the tz code and data is available. It reflects the\nfollowing changes, which were either circulated on the tz mailing list\nor are relatively minor technical or administrative changes:\n\n  Changes to future time stamps\n\n    Turkey switched from EET/EEST (+02/+03) to permanent +03,\n    effective 2016-09-07.  (Thanks to Burak AYDIN.)  Use \"+03\" rather\n    than an invented abbreviation for the new time.\n\n    New leap second 2016-12-31 23:59:60 UTC as per IERS Bulletin C 52.\n    (Thanks to Tim Parenti.)\n\n  Changes to past time stamps\n\n    For America/Los_Angeles, spring-forward transition times have been\n    corrected from 02:00 to 02:01 in 1948, and from 02:00 to 01:00 in\n    1950-1966.\n\n    For zones using Soviet time on 1919-07-01, transitions to UT-based\n    time were at 00:00 UT, not at 02:00 local time.  The affected\n    zones are Europe/Kirov, Europe/Moscow, Europe/Samara, and\n    Europe/Ulyanovsk.  (Thanks to Alexander Belopolsky.)\n\n  Changes to past and future time zone abbreviations\n\n    The Factory zone now uses the time zone abbreviation -00 instead\n    of a long English-language string, as -00 is now the normal way to\n    represent an undefined time zone.\n\n    Several zones in Antarctica and the former Soviet Union, along\n    with zones intended for ships at sea that cannot use POSIX TZ\n    strings, now use numeric time zone abbreviations instead of\n    invented or obsolete alphanumeric abbreviations.  The affected\n    zones are Antarctica/Casey, Antarctica/Davis,\n    Antarctica/DumontDUrville, Antarctica/Mawson, Antarctica/Rothera,\n    Antarctica/Syowa, Antarctica/Troll, Antarctica/Vostok,\n    Asia/Anadyr, Asia/Ashgabat, Asia/Baku, Asia/Bishkek, Asia/Chita,\n    Asia/Dushanbe, Asia/Irkutsk, Asia/Kamchatka, Asia/Khandyga,\n    Asia/Krasnoyarsk, Asia/Magadan, Asia/Omsk, Asia/Sakhalin,\n    Asia/Samarkand, Asia/Srednekolymsk, Asia/Tashkent, Asia/Tbilisi,\n    Asia/Ust-Nera, Asia/Vladivostok, Asia/Yakutsk, Asia/Yekaterinburg,\n    Asia/Yerevan, Etc/GMT-14, Etc/GMT-13, Etc/GMT-12, Etc/GMT-11,\n    Etc/GMT-10, Etc/GMT-9, Etc/GMT-8, Etc/GMT-7, Etc/GMT-6, Etc/GMT-5,\n    Etc/GMT-4, Etc/GMT-3, Etc/GMT-2, Etc/GMT-1, Etc/GMT+1, Etc/GMT+2,\n    Etc/GMT+3, Etc/GMT+4, Etc/GMT+5, Etc/GMT+6, Etc/GMT+7, Etc/GMT+8,\n    Etc/GMT+9, Etc/GMT+10, Etc/GMT+11, Etc/GMT+12, Europe/Kaliningrad,\n    Europe/Minsk, Europe/Samara, Europe/Volgograd, and\n    Indian/Kerguelen.  For Europe/Moscow the invented abbreviation MSM\n    was replaced by +05, whereas MSK and MSD were kept as they are not\n    our invention and are widely used.\n\n  Changes to zone names\n\n    Rename Asia/Rangoon to Asia/Yangon, with a backward compatibility link.\n    (Thanks to David Massoud.)\n\nTest: Ran CTS modules CtsLibcoreTestCases and CtsBionicTestCases.\nBug: 31848040\nChange-Id: I1e652ce2e428d44ba143e4ca9630fd2dc46087e4\n"
    }
  ],
  "next": "b81ade620359582c509229a56f17cc1feeb0dd9e"
}
