)]}'
{
  "log": [
    {
      "commit": "697f42afdb8606f5ba431e72db065692bf61ffff",
      "tree": "900725232ca9b11d2f415544bdaea867123fbf19",
      "parents": [
        "03e9c498d4909d1f791800cae0d59db63a348328"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 14 17:00:05 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 14 17:00:05 2017 -0700"
      },
      "message": "Hide various mbstate implementation details.\n\n...by inlining them.\n\nAlso fix a couple of harmless bugs in passing. I\u0027ve added tests, but in\nboth cases I don\u0027t think it was actually possible to hit the bad behavior:\nwe\u0027d hit another test and fail immediately after in an externally\nindistinguishable way.\n\nBug: N/A\nTest: readelf\nChange-Id: I8466050b0bfe2b7b94c76b383cf10c1d9d28debd\n"
    },
    {
      "commit": "a35293534f1aa481cc299b1c092e6619806e17f7",
      "tree": "b064397a1acb02d9767871fb48341b07ae86d1df",
      "parents": [
        "2d585e0070f33ec86a5d5decf9642ee9f2501324"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 13 10:20:41 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 13 10:20:41 2017 -0700"
      },
      "message": "Fix unistd._POSIX_macros_smoke test.\n\nWe now claim _POSIX2_VERSION, but the test wasn\u0027t updated.\n\nBug: N/A\nTest: ran tests\nChange-Id: Idb3369b3df4b964f585597f0d37962ae619322d2\n"
    },
    {
      "commit": "95d8fb1e843bee1b94df7027ac21d8ef570c7740",
      "tree": "94ef63462e5f8089002a0d2ebf617e0c7351e1bf",
      "parents": [
        "ddefae7ba92c40d60f2401e010e7789bee6f260d"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "labath@google.com",
        "time": "Fri Jul 07 11:42:34 2017 +0100"
      },
      "committer": {
        "name": "Pavel Labath",
        "email": "labath@google.com",
        "time": "Mon Jul 10 12:52:35 2017 +0000"
      },
      "message": "sys_ptrace_test: Better detect missing HW support\n\nIf the hardware debug support is missing from the CPU, the kernel can\nend up in the state where it reports that it supports N(\u003e0) watchpoints,\nbut the \"maximum supported watchpoint size\" is zero.\n\nThis is not a really sensible API, but it is what we have. I\u0027m going to\nspeak to folks upstream about whether we can have it report something\nmore sensible, but that will take a while (if ever).\n\nSo, for the time being, detect this situation and treat it as if no\nhardware watchtpoints/breakpoints are supported.\n\nTest: bionic-unit-tests --gtest_filter\u003d\"sys_ptrace.*\"\nChange-Id: Id6a013c9bec8d8b450b4a36c28431f6b7fd15879\nBug: 63116544\n"
    },
    {
      "commit": "1de6d0bb8a003f8d3b30948029a264a28d59fe9d",
      "tree": "99bd6618c8cc9655b19a8aae88bba64c28516a18",
      "parents": [
        "0ff813fb484662feed81d17c2baa21e08f003f31",
        "02fdd0570e6246381adc2d8ff9c9a990f5b79506"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 06 22:20:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 06 22:20:34 2017 +0000"
      },
      "message": "Merge \"Make \u003csys/ttydefaults.h\u003e more usable.\""
    },
    {
      "commit": "02fdd0570e6246381adc2d8ff9c9a990f5b79506",
      "tree": "6e3ec64e7a3b24062f097f7d9e456e2f070de2a8",
      "parents": [
        "f45bc14d5497c30bd43e22d025e3b88812b2baa4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 06 10:33:15 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 06 10:33:15 2017 -0700"
      },
      "message": "Make \u003csys/ttydefaults.h\u003e more usable.\n\n* TTYDEF_OFLAG referred to the BSD OXTABS constant instead of the Linux XTABS,\n  so references to it wouldn\u0027t compile.\n\n* CEOL was incorrect (compared to `stty -a`).\n\n* ttydefchars wouldn\u0027t compile (removed rather than attempt to fix something\n  of unclear utility).\n\nBug: http://b/63145226\nTest: new test\nChange-Id: I823e5eaab789cafd2eeea03f77ea553346822f74\n"
    },
    {
      "commit": "b9797fe91c77d149e82f13734b6b15d386daa610",
      "tree": "e34e30f17b3bede84c1ca5120ac26d91a1c8058d",
      "parents": [
        "f45bc14d5497c30bd43e22d025e3b88812b2baa4"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jul 05 22:36:20 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jul 05 22:36:20 2017 -0700"
      },
      "message": "Bionic: Add ziparchive test dependency\n\nAdd missing dependency.\n\nBug: 37342627\nTest: m\ntest: mmma bionic\nChange-Id: I43ae69a007f0e8745db5721296f457b3e58206dd\n"
    },
    {
      "commit": "db6ab3d5ecfe9934cb91a09bc4ccdbf2d15b49fc",
      "tree": "09f7a5f2644cc262e0b5c8e426e30480524a56a4",
      "parents": [
        "82d746fb39465e78088aeb11a5dc178cf264d0c0"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Jun 27 11:02:51 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Jun 27 11:02:51 2017 -0700"
      },
      "message": "Enable dlfcn.dt_runpath_absolute_path in glibc tests\n\ndlfcn.dt_runpath_absolute_path no longer fails when\nrunning bionic-unit-tests on glibc\n\nBug: http://b/25320359\nTest: bionic-unit-tests-glibc --gtest_filter\u003ddlfcn.dt*\nChange-Id: Ia0ecf43293cb0fed28516fd8cb87e7f5f2d6e648\n"
    },
    {
      "commit": "d7c52625f2da8322b4f0adb4c67674f0d66e619a",
      "tree": "a885e0530cb1a26a5a1fd0dee7477ef02dcb4833",
      "parents": [
        "b1b7eda11e4f66b608ae66945ddf87cbe31ecb47"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 20 14:26:56 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 20 14:58:16 2017 -0700"
      },
      "message": "Shave another uninteresting stack frame off aborts.\n\nWith this, stack frame 0 is the abort, not tgkill.\n\narm:\n\n     #00 pc 0001a41c  /system/lib/libc.so (abort+63)\n\narm64:\n\n     #00 pc 000000000001d75c  /system/lib64/libc.so (abort+120)\n\nAlso \"include what you use\" for \u003csys/syscall.h\u003e.\n\nBug: N/A\nTest: ran `crasher abort` and `crasher64 abort`\nChange-Id: I6517ac67b39b4133e890d52efc115071c812958b\n"
    },
    {
      "commit": "0c44c051663fc09a1d495536562f2f0eb79f28d0",
      "tree": "4492c45a42df52b585cfbedb088488ca60c0cd35",
      "parents": [
        "f0ee60a434675a2923c9c6968c8d5206ca6a6834",
        "8ad40936597c94901b6acb0b21bfe0e2a0689224"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 16 20:56:03 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 16 20:56:06 2017 +0000"
      },
      "message": "Merge \"Add #defines for some key enums.\""
    },
    {
      "commit": "8ad40936597c94901b6acb0b21bfe0e2a0689224",
      "tree": "d228db0e344a21109b07276e5282c841daa88269",
      "parents": [
        "0bd23e47067126677537a2b5bedd22dce54d92e5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 15 15:12:29 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 15 15:12:29 2017 -0700"
      },
      "message": "Add #defines for some key enums.\n\nBuilding ruby actually trips over both of these:\n\n* if the RTLD_ constants aren\u0027t #defined, it uses its own incorrect values.\n\n* if the REG_ constants aren\u0027t #defined, it confuses x86 with x86-64.\n\nIn all other places where we have enums in our headers, we already match\nexisting glibc practice.\n\nBug: http://b/62531921\nTest: builds\nChange-Id: I5b3aab25a1a24611bdc58f2eda4104a78e9f841c\n"
    },
    {
      "commit": "3a32d95e288457ad12c3e1ff2034ca0d546704e3",
      "tree": "04d8ea3325dbd6520cfd552a488a331cefca5614",
      "parents": [
        "a09953e1a8df604d4c2c5f5b3b4c86e5b97694bf"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jun 15 13:30:44 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jun 15 14:18:08 2017 -0700"
      },
      "message": "Update posix_memalign testing.\n\nMove all tests into stdlib_test.cpp since that\u0027s where the definition lives\nin bionic.\n\nAdd a sweep test and a various size test.\n\nTest: Run new unit tests on glibc and angler.\nChange-Id: Ief1301f402bea82ce90240500dd6a01636dbdbae\n"
    },
    {
      "commit": "7f6bcc478083e25627838cb5de7e8efbc9468a55",
      "tree": "cc4895cd8c88e88c8c938f6a8ac7b76480706932",
      "parents": [
        "87d1df9f70016725ce100860fdc847a76322636d",
        "e452cb1ff30b3539dc66a18e9b59fe5e8d337ecc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 14 00:44:31 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 14 00:44:33 2017 +0000"
      },
      "message": "Merge \"Remove `volatile` from the `__errno` declaration.\""
    },
    {
      "commit": "e452cb1ff30b3539dc66a18e9b59fe5e8d337ecc",
      "tree": "60593768f5b380f5a3a45caa026ea9cb208876c0",
      "parents": [
        "15eaaddef9fffda1209e9cc576b47b0f6e0cb379"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 13 14:43:53 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 13 16:02:07 2017 -0700"
      },
      "message": "Remove `volatile` from the `__errno` declaration.\n\nThis breaks code that declares `errno` itself for whatever crazy reason:\n\n  b.c:22:12: error: conflicting types for \u0027__errno\u0027\n  extern int errno;\n             ^\n  /usr/local/google/ndkports/toolchain/bin/../sysroot/usr/include/errno.h:47:20: note: expanded from macro \u0027errno\u0027\n  #define  errno   (*__errno())\n                     ^\n  /usr/local/google/ndkports/toolchain/bin/../sysroot/usr/include/errno.h:44:15: note: previous declaration is here\n  volatile int* __errno(void) __attribute_const__;\n                ^\n\nBug: N/A\nTest: built various bits of GNU source\nChange-Id: I27c03bf3bde419a001f98f1ea6c267c847f31271\n"
    },
    {
      "commit": "4b1a3992de7803d4c082867ea1168efeaa85cc5d",
      "tree": "1b6754e8b4fb5da7adb2e5ec33df1844984a3d6f",
      "parents": [
        "2d36be5912f04c29d0cad15bd37849a10a93e74d"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri May 19 10:13:08 2017 -0700"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Jun 13 18:49:54 2017 +0000"
      },
      "message": "libc: Sync qsort(3) with FreeBSD revision r318515.\n\nr279663: enhance to handle 32-bit aligned data on 64-bit systems\n\nr279666: qsort(3): small style(9) cleanups.\n\nr288030: Use ANSI C prototypes.  Eliminates -Wold-style-definition\nwarnings.\n\nr318514: Use size_t.\n\nr318515: Reduce the possible recursion level to log2(N) by always\nrecursing on the smaller partition instead.\n\nBug: 38450217\nTest: builds, ./tests/run-on-host.sh 64\nChange-Id: Ieb622e6f54f8f6d6f62e1bdb491d3b5c8e2f9965\n"
    },
    {
      "commit": "24ed8b5fbfa35cc461545e5b69fded356ea62f23",
      "tree": "f3d6f66cff5f6813fdd7cc5e995717a18476902e",
      "parents": [
        "498b4de964b5d38952acfe2d1823c13f20a641d3"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Jun 02 14:57:49 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Jun 02 14:58:44 2017 -0700"
      },
      "message": "Explain why we have a test that FALLOC_FL_PUNCH_HOLE is missing.\n\nChange-Id: I7388f2e0bc419f195247a1d3e73195cb4d199d5c\nTest: none\n"
    },
    {
      "commit": "cd510cbed9dc1e1b65b9d34676fdf6d85101f22c",
      "tree": "8546acbe8ef79aa92ea066249794a7229c21280e",
      "parents": [
        "6be65c135b1720353f0c2e472a5e01261a737cd1"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed May 31 15:07:41 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed May 31 23:45:15 2017 +0000"
      },
      "message": "Make dl_iterate_phdr return correct name for first entry\n\nTest: bionic-unit-tests --gtest_filter\u003dlink*\nChange-Id: Ib3f1e0fbc76fed9a5f27ffdd9bbf847a3e8d3665\n"
    },
    {
      "commit": "6be65c135b1720353f0c2e472a5e01261a737cd1",
      "tree": "92da5754ab1eca0b8b6d395084e4486fd61e670a",
      "parents": [
        "f6a5afcb62817502b91720b4dd2cd7166b9a9a6b",
        "5059939c87f4806a8c9f67cfbd1a4f9fe2d4e59c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 26 18:04:26 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri May 26 18:04:28 2017 +0000"
      },
      "message": "Merge \"Enable exporting the non-uapi scsi headers.\""
    },
    {
      "commit": "5059939c87f4806a8c9f67cfbd1a4f9fe2d4e59c",
      "tree": "982bc3947088a422d6e51f05ee15afff6fb7e5cf",
      "parents": [
        "025fb33c9dbae35ce343d3f15cbf642518f82893"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 25 17:13:32 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 25 19:17:55 2017 -0700"
      },
      "message": "Enable exporting the non-uapi scsi headers.\n\nCallers are supposed to #include \u003cscsi/sg.h\u003e but if we tell soong to add\nbionic/libc/kernel/android/ to the include path, the uapi headers in there\nwould be (unintentionally) accessible as either \u003clinux/name.h\u003e or\n\u003cuapi/linux/name.h\u003e.\n\nBug: N/A (hit while upgrading strace to 4.17)\nTest: builds\nChange-Id: I8d47dd51da688c38f747a255d401dfb2c209c805\n"
    },
    {
      "commit": "f008a11ef2ed42d4eb66a55e5ce89748daf674da",
      "tree": "fe92f00eae5acd7e594a6c3bd039e03097d7d866",
      "parents": [
        "f58179cda5a905f405efac4f116f5205e3b01611"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu May 25 14:02:03 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu May 25 14:27:37 2017 -0700"
      },
      "message": "Relax flaky _SC_AVPHYS_PAGES check in sys_sysinfo_test\n\nThe number of available physical pages is not constant and can\npotentially change between calls to get_avphys_pages and\nsysconf(_SC_AVPHYS_PAGES) calls.\n\nRelax the assert to check that sconf(_SC_AVPHYS_PAGES) \u003c\u003d phys_pages.\n\nBug: http://b/31502852\nTest: build and run bionic-unit-tests\nChange-Id: Ibf8873d2151d93239391d2638dfbf055b70cde3a\n"
    },
    {
      "commit": "1f66c6d078922454a0a0c2f3a2141caf925ed9cf",
      "tree": "67e2896666fb8bcf748879d4e4123e07ac3a3112",
      "parents": [
        "81a5b6f5585c056a5fe6f05fab1e39824c23256b",
        "468c8086e6f28b9342d3f89ed89f185ab5bb775a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 24 07:13:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 24 07:13:36 2017 +0000"
      },
      "message": "Merge \"Fix _POSIX_THREAD_PROCESS_SHARED.\""
    },
    {
      "commit": "6718e0309e78be4b92850e0f22af5d8b8e3d662a",
      "tree": "d91bdf7cc4f59228bf63f45a32506d1cdbe02d0c",
      "parents": [
        "6e7f14d9f707c295765e119800acfa0621a347cb"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Mon May 22 17:36:16 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Mon May 22 17:36:16 2017 -0700"
      },
      "message": "Move libdlext_... to NATIVE_TESTS instead of ETC\n\nETC did end up causing problems, since it\u0027s not per-arch. But\nSHARED_LIBRARIES isn\u0027t correct either, since the build system tries to\nread shared libraries as ELF files (to create the toc files).\n\nNATIVE_TESTS is slightly better -- they are not libraries, so we don\u0027t\nattempt to generate toc files, but they are considered per-arch.\n\nBug: 38463793\nTest: Run CtsBionicTestCases\nChange-Id: I01b4b093359e0c39eb2f8639d5c5dde9e304ed20\n"
    },
    {
      "commit": "468c8086e6f28b9342d3f89ed89f185ab5bb775a",
      "tree": "e04a6353962ea85f199c283e21b28b4caf4325ee",
      "parents": [
        "f06535035ef6e48aeacc37819ea7182416275216"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat May 20 12:47:14 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat May 20 13:11:14 2017 -0700"
      },
      "message": "Fix _POSIX_THREAD_PROCESS_SHARED.\n\nWe\u0027ve had pthread_*_setpshared for long enough that there are no\n__INTRODUCED_IN guards.\n\nFound because fio\u0027s configure script was confused by this.\n\nBug: N/A\nTest: ran tests\nChange-Id: I07b4d937741e4dcd7e615f2371b17c827341917a\n"
    },
    {
      "commit": "8fbd15a6d0818916a821bc2138208f0251c9754f",
      "tree": "9c80ba145936baaddfa2d7214696adae710db015",
      "parents": [
        "f06535035ef6e48aeacc37819ea7182416275216",
        "497ad30d7d76721adab8830a76e72bcc9a840ba5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 19 18:24:08 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri May 19 18:24:09 2017 +0000"
      },
      "message": "Merge \"Make `union semun` usable.\""
    },
    {
      "commit": "497ad30d7d76721adab8830a76e72bcc9a840ba5",
      "tree": "62ec1976efb39168023cc66892c47a1e20b5acf4",
      "parents": [
        "7ff7ed1c7de40059f1f21f59eed338603bec08e0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 18 15:05:26 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 18 15:05:26 2017 -0700"
      },
      "message": "Make `union semun` usable.\n\nThis is a bit bogus because it\u0027s been removed from glibc (though not\nthoroughly) and is never useful on Android (because the system calls\nin question are compiled out of Android kernels, and SELinux would\ndisallow them even if you weren\u0027t running an Android kernel). This\nalso means that on glibc you need to include \u003clinux/sem.h\u003e for this\nand on bionic you need \u003csys/sem.h\u003e (and for either if you #include\nthe other file, you won\u0027t get this union).\n\nBug: https://github.com/android-ndk/ndk/issues/400\nTest: added new test\nChange-Id: I47f721da77515531f616d6ad8479bfbc9b60ee47\n"
    },
    {
      "commit": "f06535035ef6e48aeacc37819ea7182416275216",
      "tree": "20edfc7e5904f21d454131351c90ca96a5b03188",
      "parents": [
        "61073263d41e96d606121cbb3bb0c64b85305898",
        "3fa758f49c42e963985b9b99202c65c217a0bb5b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 18 02:23:36 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu May 18 02:23:37 2017 +0000"
      },
      "message": "Merge \"Fix Mac build.\""
    },
    {
      "commit": "3fa758f49c42e963985b9b99202c65c217a0bb5b",
      "tree": "1641c5638c1480ecb6a107c0694968499004883a",
      "parents": [
        "7ff7ed1c7de40059f1f21f59eed338603bec08e0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 17 17:36:08 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 17 17:36:08 2017 -0700"
      },
      "message": "Fix Mac build.\n\nBug: N/A\nTest: builds\nChange-Id: Ia3dae9f86a0aaa5431929e790f5c36f8beaf3bed\n"
    },
    {
      "commit": "b02206a6021699ac3de1079eb91af26f0860249b",
      "tree": "4a5c5b8f4a395d332e5f5ba883e9b6b013b482d1",
      "parents": [
        "7ff7ed1c7de40059f1f21f59eed338603bec08e0"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed May 17 16:47:23 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed May 17 16:49:56 2017 -0700"
      },
      "message": "Remove reference to obj/lib\n\nIt\u0027s going away, since we don\u0027t have a single library on device anymore,\nand it\u0027s simpler to keep the host looking like the device. This doesn\u0027t\nseem to need it anymore either -- the libraries are found relative to\nthe test binary.\n\nTest: bionic/tests/run-on-host.sh glibc\nChange-Id: Ie9bf6388ecd773623181ec9eadb35d6e0ba0a441\n"
    },
    {
      "commit": "7ff7ed1c7de40059f1f21f59eed338603bec08e0",
      "tree": "6d05ee84e5eec08fd4ef7472a79cfd197f397843",
      "parents": [
        "afd629582bc903cf703fb65e6131688cd72baf57",
        "5d949da8a9749d9857294de5a2919ff0e7a1ef29"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 17 22:48:53 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 17 22:48:55 2017 +0000"
      },
      "message": "Merge \"tests/utils.h should #include \u003csys/sysmacros.h\u003e\""
    },
    {
      "commit": "5d949da8a9749d9857294de5a2919ff0e7a1ef29",
      "tree": "2e4d0d5aad1cfabe1e3eaa4ce84ffe2b891428d0",
      "parents": [
        "d785b4465ead5ad26a300b0d3c05bad23515d00d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 17 11:43:39 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 17 11:43:39 2017 -0700"
      },
      "message": "tests/utils.h should #include \u003csys/sysmacros.h\u003e\n\nBug: https://github.com/android-ndk/ndk/issues/398\nTest: builds\nChange-Id: Ie81b49787d468e409db4024763f29946d3e4250f\n"
    },
    {
      "commit": "3d68fca0da3e47ca9df16e174cdbc119b3ff6048",
      "tree": "f1cb900d0d1e188b31c0d399aee0c026c08adfba",
      "parents": [
        "6fba793bc3ef89649ce41e70736f0c8a49093360"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue May 16 12:51:21 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue May 16 15:25:35 2017 -0700"
      },
      "message": "Stop using $(TARGET_OUT_INTERMEDIATE_LIBRARIES)\n\nIt\u0027s going away, so use the built versions in the per-library\nintermediate directories instead.\n\nTest: `m -j bionic-unit-tests` produces the same output before/after\nChange-Id: Ia5cd874d13129b2be89cdc26e4ec598be4003c87\n"
    },
    {
      "commit": "a1c0d2fd4ce96e123c4ae6506c9d637d747e1fe2",
      "tree": "b1f89edbd67d6b09b9cbdfb1bf03b65b2dac9ad4",
      "parents": [
        "ac58d33d343eba6a3370f541467f09802c48b24b"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon May 15 15:50:19 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon May 15 16:59:16 2017 -0700"
      },
      "message": "Add support for modifying decay timer.\n\nAdd the mallopt function, and only a single option so far.\n\nBug: 36401135\n\nTest: Built and booted bullhead.\nTest: Ran jemalloc unit tests.\nTest: Ran bionic unit tests.\nTest: Ran a test that allocated and free\u0027d a large piece of memory,\nTest: and verified that after changing the parameter, the PSS\nTest: sticks around (decay timer set to 1), the PSS is purged (decay\nTest: timer set to 0).\nChange-Id: I6927929b0c539c1023d34772d9e26bb6a8a45877\n"
    },
    {
      "commit": "cf17b487ef60aa00ff9b6873cfed50ebde7864c4",
      "tree": "380d94cf47474bd06ca561d326373f7711d6b198",
      "parents": [
        "d785b4465ead5ad26a300b0d3c05bad23515d00d"
      ],
      "author": {
        "name": "Zhenhua WANG",
        "email": "zhenhua.wang@intel.com",
        "time": "Fri May 12 13:53:51 2017 +0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 12 11:09:45 2017 -0700"
      },
      "message": "test: check unbounded memory leak in pthread detach\n\nIn pthread_leak.detach test, compare the memory usage after two same\nscenarios - all children threads have exited. Thus, test emulated by\nNativeBridge, which may reserve a memory pool, will pass if it\u0027s not\nunbounded leak.\n\nBug: https://issuetracker.google.com/37920774\nTest: CtsBionicTestCases\nChange-Id: Ia51aa67bacb588284747652b36ea5d8e85bea832\n"
    },
    {
      "commit": "828b9e162feaaa75692aa697649f40228df1695f",
      "tree": "c8859e5456fa11bdf53680030f793d3c4533dbc4",
      "parents": [
        "a93fcd039407955262e623d24c3f76e0fff91fb7"
      ],
      "author": {
        "name": "wy",
        "email": "yawanng@google.com",
        "time": "Wed May 10 15:21:13 2017 -0700"
      },
      "committer": {
        "name": "wy",
        "email": "yawanng@google.com",
        "time": "Wed May 10 15:57:26 2017 -0700"
      },
      "message": "Fix clang-tidy perfomrance warnings.\n\nChange-Id: Ibf3d32a5ba1cb70158d857be3d20aa3d1a870341\nTest: build with WITH_TIDY\u003d1\n"
    },
    {
      "commit": "a93fcd039407955262e623d24c3f76e0fff91fb7",
      "tree": "206a86b508f767992f8c43b9bd0691df2010cd0a",
      "parents": [
        "9259c5bde600ddb69028ad3466e174d9f473ca37",
        "37b91af0f3590e577dfcef47899bca2c8f9aebf4"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 10 02:33:28 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 10 02:33:30 2017 +0000"
      },
      "message": "Merge \"greylist is no longer enabled by default.\""
    },
    {
      "commit": "9259c5bde600ddb69028ad3466e174d9f473ca37",
      "tree": "7f40fe6760f35a934f0d5e18a60f20fb5790a630",
      "parents": [
        "3c71e1ae185354e132440733282c5f4d62f6fab8",
        "c42b4bb097c6a89bd9016bcbeed08a436d591d27"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 10 02:27:56 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 10 02:27:57 2017 +0000"
      },
      "message": "Merge \"Remove known failures from arm ifunc tests\""
    },
    {
      "commit": "37b91af0f3590e577dfcef47899bca2c8f9aebf4",
      "tree": "b15cccfb4b2cb20bbdb8d0c70d7f94426e56d6a9",
      "parents": [
        "41192813232c1dbf5cb8989cd872e1a01c115245"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri May 05 22:07:05 2017 +0900"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue May 09 17:59:00 2017 -0700"
      },
      "message": "greylist is no longer enabled by default.\n\ngreylist is needed only for application namepaces. Since we started using\nlinker-namesapces for vendors and other platform apps linker should not\nenable greylist workaround by default.\n\nBug: http://b/37731053\nBug: https://issuetracker.google.com/38146125\nTest: sailfish builds and boots\nTest: bionic-unit-tests and linker-unit-tests pass\nChange-Id: Iee83db6fb1ae754f5ade18491321d9bca3b5ead4\n(cherry picked from commit e8ffe56a9c2bacc6bd880238250ad61e2bbb257b)\n"
    },
    {
      "commit": "2f030af250c92198ea2785b6f71b48611228bbea",
      "tree": "d5d93d31d22d4080f9b4b168e945470643c2d495",
      "parents": [
        "1f9e64887882b532bdd12b6fbfa80817c2b67714"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon May 08 14:24:29 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon May 08 20:10:32 2017 -0700"
      },
      "message": "Add new memchr/strrchr tests.\n\nThere are new optimizations for these functions, so adding some extra\ntesting for these routines.\n\nAlso, clean up the strchr test slightly with some extra comments.\n\nTest: Ran new tests on glibc version, and on angler.\nChange-Id: I41bf4e5e2c84295cc1ce9d2226ed57c2d228d7b8\n"
    },
    {
      "commit": "c42b4bb097c6a89bd9016bcbeed08a436d591d27",
      "tree": "3dd769dedd1f764d7a549e5a6d268d2f3bd63870",
      "parents": [
        "846924ae9583991a99a5924b2542c992d4bc094e"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed May 03 11:01:00 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed May 03 11:01:00 2017 -0700"
      },
      "message": "Remove known failures from arm ifunc tests\n\nSince clang does not produce IRELATIVE relocations\nthis test started passing when we switched away from gcc\nThis is still a problem because it now leads to\nsituation where static ifuncs become globally visible\nbut this is a different problem.\n\nTest: bionic-unit-tests --gtest_filer\u003ddl*\nChange-Id: Id27ba5093b88519c00acbc43ab8a991a671a9f51\n"
    },
    {
      "commit": "5725481f1e4cb2e2042b5469b5863023556cf2dd",
      "tree": "30e2a7d6ecee026e0993af8da6954b40bc5c17e9",
      "parents": [
        "846924ae9583991a99a5924b2542c992d4bc094e",
        "7a3681e5b6c39bc2b3b62031ca5941dbf7bc4e63"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed May 03 17:43:33 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 03 17:43:35 2017 +0000"
      },
      "message": "Merge \"Move libc_log code into libasync_safe.\""
    },
    {
      "commit": "846924ae9583991a99a5924b2542c992d4bc094e",
      "tree": "2514a8fe2183d79dbb52d422fa4db73b25f27f6e",
      "parents": [
        "6323cfad7472990bde6efe3075faf03f251040ff",
        "21975b2861d859fb580ddfba50d323740486b7bc"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed May 03 16:11:25 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 03 16:11:27 2017 +0000"
      },
      "message": "Merge \"Add ifunc for variable test-case\""
    },
    {
      "commit": "7a3681e5b6c39bc2b3b62031ca5941dbf7bc4e63",
      "tree": "78c25e2a38b7efed8db770a623a5cbfb7eaab11d",
      "parents": [
        "ca5e0f49ca5df873a20c996755175b5c9c1e2ed9"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Apr 24 17:48:32 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed May 03 08:50:43 2017 -0700"
      },
      "message": "Move libc_log code into libasync_safe.\n\nThis library is used by a number of different libraries in the system.\nMake it easy for platform libraries to use this library and create\nan actual exported include file.\n\nChange the names of the functions to reflect the new name of the library.\n\nRun clang_format on the async_safe_log.cpp file since the formatting is\nall over the place.\n\nBug: 31919199\n\nTest: Compiled for angler/bullhead, and booted.\nTest: Ran bionic unit tests.\nTest: Ran the malloc debug tests.\nChange-Id: I8071bf690c17b0ea3bc8dc5749cdd5b6ad58478a\n"
    },
    {
      "commit": "6323cfad7472990bde6efe3075faf03f251040ff",
      "tree": "5c81f31e23b8c2a69c70b577a11a0dc0da5bc272",
      "parents": [
        "3f4735fafab6d92fd5c952ef2d683886b75c5d2b",
        "f1cb669a9cd31229cc3c486a1a405fad92fe5e1d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 03 01:28:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 03 01:28:35 2017 +0000"
      },
      "message": "Merge \"Shared namespaces inherit parent ns properties\""
    },
    {
      "commit": "f1cb669a9cd31229cc3c486a1a405fad92fe5e1d",
      "tree": "8eeb45fdf477e714798efaec907e1d99548951b8",
      "parents": [
        "87a47e1bb202a26918993487db8dc82229833ef8"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon May 01 17:45:38 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue May 02 16:42:28 2017 -0700"
      },
      "message": "Shared namespaces inherit parent ns properties\n\nMake shared namespace inherit namespace links and\nsearch/permitted paths from the parent namespace.\n\nBug: http://b/37854032\nTest: bionic_unit_tests --gtest_filter\u003ddl*:Dl*\nChange-Id: I174661d4a1dd0cbe4a378179073719aa955f3592\n(cherry picked from commit ec43dd6c36d75014c4e4dc592dd67ab20033a76a)\n"
    },
    {
      "commit": "21975b2861d859fb580ddfba50d323740486b7bc",
      "tree": "5e8ed0d7e814959c24cd7bc404ff04e7e4e5419f",
      "parents": [
        "87a47e1bb202a26918993487db8dc82229833ef8"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue May 02 16:31:56 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue May 02 16:35:20 2017 -0700"
      },
      "message": "Add ifunc for variable test-case\n\nAlso move ifunc tests to clang and c++.\n\nTest: bionic-unit-tests --gtest_filter\u003ddlfcn.ifunc*\nChange-Id: I008c4fc01470c8e4d314003c03a2b63ff9bf7fd8\n"
    },
    {
      "commit": "3f4735fafab6d92fd5c952ef2d683886b75c5d2b",
      "tree": "822e53b1a5ec2047f39a61ad3cea8ba0b303139d",
      "parents": [
        "85408ef2daaf6149baf0f03d69d9376dbc8d8c54",
        "ab4cddc32934678d836483a49992f053347a320d"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue May 02 23:20:32 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 02 23:20:32 2017 +0000"
      },
      "message": "Merge \"Fix pthread_barrier_smoke test (part 2).\""
    },
    {
      "commit": "ab4cddc32934678d836483a49992f053347a320d",
      "tree": "e9607b74a7f885c79928aad5d6fd33c72f8d13ac",
      "parents": [
        "d5c04c5ebb67e4581d7d861503de111ff84c5b75"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue May 02 16:18:13 2017 -0700"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue May 02 16:18:13 2017 -0700"
      },
      "message": "Fix pthread_barrier_smoke test (part 2).\n\nBug:http://b/37652807\nTest: run bionic-unit-tests.\nChange-Id: Iaea553177956c5d08f754210273637f69d888c20\n"
    },
    {
      "commit": "85408ef2daaf6149baf0f03d69d9376dbc8d8c54",
      "tree": "18864ecc3d51137549bedfb7c7090a8b2addf8ca",
      "parents": [
        "5c7107434bfd3f937c626e506ed00238fe27ee18",
        "2d3122c90b58655cc44c9e7b9461b9de3daccb2e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 02 22:25:58 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 02 22:25:59 2017 +0000"
      },
      "message": "Merge \"Fix test compile errors after LLVM rebase\""
    },
    {
      "commit": "2d3122c90b58655cc44c9e7b9461b9de3daccb2e",
      "tree": "2ec2c29d0fff6cb4cb54da35ff4f1abe92b67292",
      "parents": [
        "dfe0fa4151eeae806e9eb52c337c449cd028c160"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Sun Apr 30 15:08:05 2017 -0700"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue May 02 21:14:42 2017 +0000"
      },
      "message": "Fix test compile errors after LLVM rebase\n\nAfter the new rebase of Clang, we now support the alloc_size attribute,\nso we can remove the warning about switching to alloc_size once Clang\nhas support.\n\nAlso fix an issue where \u0027false\u0027 is returned in a main method.\n\nTest: make cts\nBug: 37752547\nChange-Id: I32ee814aaa0338567cb8174a68d7ee1bfece2f75\n"
    },
    {
      "commit": "d5c04c5ebb67e4581d7d861503de111ff84c5b75",
      "tree": "7dc98025898decc9a49bcb316d82f6d1dd71ca4e",
      "parents": [
        "ca5e0f49ca5df873a20c996755175b5c9c1e2ed9"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue May 02 12:57:39 2017 -0700"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue May 02 12:57:39 2017 -0700"
      },
      "message": "Fix pthread_barrier_smoke test.\n\nBug: http://b/37652807\nTest: run bionic-unit-tests.\nChange-Id: Id7245223bc2a284efed6e710892b58947ef5d555\n"
    },
    {
      "commit": "fd478a8cba97680974494bc72727fba6d8136805",
      "tree": "bf7df4e0c809ea196d912553e5775ba9ce453cde",
      "parents": [
        "c15117658b9f18fad1466c0c1b238cb334966735",
        "cf44343c1a0d22795aa9b994f9c0c6576fa536b8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 01 20:17:20 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon May 01 20:17:21 2017 +0000"
      },
      "message": "Merge \"fix half-deleted comments in tests\""
    },
    {
      "commit": "cf44343c1a0d22795aa9b994f9c0c6576fa536b8",
      "tree": "a4e0094ee8861a5c9b7f45dd83bcc315b8b2de7b",
      "parents": [
        "5deddda68e780aaa26e4777378fee10d543eb719"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Mon May 01 11:15:30 2017 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Mon May 01 11:20:31 2017 -0700"
      },
      "message": "fix half-deleted comments in tests\n\nthey were half-deleted in If341a27756d608a0fa77ba6518e9bcc725f7632c.\n\nBug: None\nTest: mma\nChange-Id: I4e0c8208a7f2a55d273f4c87adca1d755dc98b77\n"
    },
    {
      "commit": "d390df1dbc038843889946555c3ea53548dcab5d",
      "tree": "36b185eec9718f38fc9cba087bce96498fd51f43",
      "parents": [
        "dfe0fa4151eeae806e9eb52c337c449cd028c160"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sun Apr 30 22:56:10 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sun Apr 30 22:56:10 2017 -0700"
      },
      "message": "Restore ELF32_ST_INFO/ELF64_ST_INFO.\n\nMistakenly removed years ago, along with its genuinely duplicated companions.\nThis patch also redefines one of those rather than use the Linux uapi header\ndefinition, which leads to signed/unsigned warnings in calling code.\n\nBug: https://github.com/android-ndk/ndk/issues/377\nTest: ran tests\nChange-Id: Ib25b17949f04969f12b945ca88ab87d080677cf9\n"
    },
    {
      "commit": "306ea559528255e19a5bcd68cc2a9b1afc2cfb27",
      "tree": "cc770ec0081c9f115be77528a457e003275bdb25",
      "parents": [
        "36d5c54b5e2f2a25280817addd628f7cbd390ee0",
        "81aad0058cd0961dfd9f3006dd979c1fdd6ca659"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Apr 27 15:40:36 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 27 15:40:37 2017 +0000"
      },
      "message": "Merge \"Compare Pss of tested library in VerifyMemorySaving\""
    },
    {
      "commit": "81aad0058cd0961dfd9f3006dd979c1fdd6ca659",
      "tree": "38822e0bbd63fcbc0e71804474aed4a73d788372",
      "parents": [
        "82f7208ac0b4e31003ddfbad4a4e64e3e0e5550d"
      ],
      "author": {
        "name": "Zhenhua WANG",
        "email": "zhenhua.wang@intel.com",
        "time": "Tue Apr 25 11:07:19 2017 +0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 26 17:06:32 2017 -0700"
      },
      "message": "Compare Pss of tested library in VerifyMemorySaving\n\nDlExtRelroSharingTest.VerifyMemorySaving verifies whether\nandroid_dlopen_ext(ANDROID_DLEXT_USE_RELRO) really saves memory.\n\nThis patch compares Pss of the tested library rather than total\nPss of the process, in case different behavior of dlopen() and\nandroid_dlopen_ext() introduces random Pss usage.\n\nTest: DlExtRelroSharingTest.VerifyMemorySaving\n\nChange-Id: I696eca736018fca5d9ec9385ac1c79ced280281d\n"
    },
    {
      "commit": "4a6202683a6f61c0d8574c43a0042ea83ba22604",
      "tree": "e201c2a3364ff3b4f79223d27a665da3f99d07e6",
      "parents": [
        "5deddda68e780aaa26e4777378fee10d543eb719"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "labath@google.com",
        "time": "Wed Apr 26 11:30:06 2017 +0100"
      },
      "committer": {
        "name": "Pavel Labath",
        "email": "labath@google.com",
        "time": "Wed Apr 26 11:33:17 2017 +0100"
      },
      "message": "watchpoint_imprecise test: set 4-byte watchpoints on 32-bit arches\n\n8-byte watchpoints are not supported on 32-bit kernels (at least on x86,\nprobably arm as well). 8-byte watchpoints are not required for this\ntest, so just decrease the size of watchpoints on these architectures.\n\nChange-Id: Ie96b4bc8ce0ad8c924ac737083cf9fe0182aee4d\nTest: bionic-unit-tests-static --gtest_filter\u003dsys_ptrace.*\nBug: 37662849\n"
    },
    {
      "commit": "5deddda68e780aaa26e4777378fee10d543eb719",
      "tree": "1db8aa1599a8ad3640683279dd6dbf59b6c86832",
      "parents": [
        "6c8881d99c0a14c2add4fb7857471d2cec8d6976",
        "7c10abb4a47139144de207433f630c4531f3835a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 24 17:52:11 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 24 17:52:13 2017 +0000"
      },
      "message": "Merge \"Add basic tests for \u003clink.h\u003e.\""
    },
    {
      "commit": "6c8881d99c0a14c2add4fb7857471d2cec8d6976",
      "tree": "4659a4558e2c8d9b6ce506a43a44481903a4ce9d",
      "parents": [
        "1328b96fafda4551c293da0a011712f86fc1a5e6",
        "ee1e0a34ae01aa01a207f00f0fe6cfb09852e44e"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Sat Apr 22 19:16:37 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Apr 22 19:16:39 2017 +0000"
      },
      "message": "Merge \"Update static functions/macro definitions.\""
    },
    {
      "commit": "ee1e0a34ae01aa01a207f00f0fe6cfb09852e44e",
      "tree": "d5f1778781d90388619c6a23977bad9f9ce6b5a8",
      "parents": [
        "627ed9162538d847ea4e530fd443570d37f57d65"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Apr 20 13:38:49 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Apr 21 20:59:53 2017 -0700"
      },
      "message": "Update static functions/macro definitions.\n\nFix the list of static functions coming from swab.h to match the\nones exported by glibc.\n\nForce the definition of __HAVE_BUILTIN_BSWAP{16,32,64}__ so the headers\nuse the builtin.\n\nAdd a unit test to guarantee that kernel header updates do not break this.\n\nTest: Built and booted angler.\nTest: Built the bionic unit tests for arm, arm64, mips, x86, x86_64.\nTest: Ran the new test on angler and glibc.\n\nChange-Id: I4ce229e3f198c204186d72bf22dd97b5cdf239e4\n"
    },
    {
      "commit": "7c10abb4a47139144de207433f630c4531f3835a",
      "tree": "0f9d3c8e295861c214961b5a3cb7b471e7bb2cde",
      "parents": [
        "e54e64bd605f74936e1b8b6f5bf525b77abba00d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 21 17:15:41 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 21 17:35:06 2017 -0700"
      },
      "message": "Add basic tests for \u003clink.h\u003e.\n\nThe dl_iterate_phdr test is new, but the exidx test is largely copy \u0026 paste\nfrom ndk_translation.\n\nBug: http://b/31556066\nTest: ran tests\nChange-Id: If754f1459ef1d789ee98a89cd2215188edca51da\n"
    },
    {
      "commit": "bf34ba364186fc1ffbeada28740640cb4498e7a0",
      "tree": "c26639a2a947bf1219eabe64af6d03a5bb316f86",
      "parents": [
        "e54e64bd605f74936e1b8b6f5bf525b77abba00d"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Apr 21 13:12:05 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Apr 21 14:45:07 2017 -0700"
      },
      "message": "loader: enable loading libraries from tmpfs\n\nThis change adds two tests for dlopen from temporary files.\n1. One Uses memfd_create() can be used to load libraries directly\nfrom memory. This requires relaxing namespace accessibility check\nin order to make this work in isolated namespaces.\n2. Another checks that open with O_TMPFILE works.\n\nBug: http://b/37245203\nTest: bionic-unit-tests --gtest_filter\u003ddl*:Dl*\nChange-Id: I3be1d7198ca17e7f1ba022a0d86c64d59a493506\n(cherry picked from commit bb8b22a087db32773f1a9cd3473061f3ad714afc)\n"
    },
    {
      "commit": "f1db8372de4cfcc7e7473b0b0dc4b9491084a935",
      "tree": "959040e3858b61e32e6d56b4b70b057db0ff12c8",
      "parents": [
        "791989d250a507e3fc5634eccbf1341d980f2916"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Apr 19 11:58:52 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Apr 19 11:58:52 2017 -0700"
      },
      "message": "Add missing required libraries\n\nTest: m\nChange-Id: Id8c8c69547fbfb0c8efe73b324c8b6dcd52aa8ca\n"
    },
    {
      "commit": "438e01940b90a2b6061a9b9809e08466e1e9faac",
      "tree": "4889c190b65be3636ee5d638db7822624abcd412",
      "parents": [
        "e4e69a174a0b4980eaff49c55c39b476cbe9b73e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 17 14:53:07 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 17 14:53:07 2017 -0700"
      },
      "message": "Un-deprecated __system_property_find_nth.\n\nNetflix was using this, and looking the header file, although\n__system_property_find_nth has been available since the beginning of time,\n__system_property_foreach only appeared in 16. So anyone who wants to run\non pre-JellyBean devices would want to use __system_property_find_nth.\n\nIt\u0027s pretty much a one-liner in terms of __system_property_foreach anyway,\nso it doesn\u0027t cost us anything to keep it.\n\nAlso restore slightly better tests than we originally removed.\n\nBug: http://b/36566667\nTest: ran tests\nChange-Id: Id268c2c2e848da17bb0a5a5420af234d9dcb829a\n"
    },
    {
      "commit": "4bd354276757b3faeacb245e441b60d5d7e532aa",
      "tree": "d22ccd4f6aea8a637b6acffde208698511882a53",
      "parents": [
        "6c0468bba71d2f853c2f9517268516ab3331053d"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Apr 10 16:52:25 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Apr 11 16:15:32 2017 -0700"
      },
      "message": "\u0027make bionic-unit-tests\u0027 now builds all the required binaries\n\nTest: make\nChange-Id: Ie2f5dffaa4a09eba6714ced8ab0043fd7446bee5\n"
    },
    {
      "commit": "c40af334c7f2e76c3a34824a17ea3803caedbd7d",
      "tree": "36caea25e52b7eb589adadee447207dc2e6dc56d",
      "parents": [
        "afb59c3e4267bf4bea73a30ea3b5bc09c5e4fb74",
        "b8ab61804cec48e4ca585f4508fb1b7c6c5a04c5"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Thu Apr 06 22:41:02 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 06 22:41:02 2017 +0000"
      },
      "message": "Merge \"Move scopeguard into android::base\""
    },
    {
      "commit": "5f8a673a7f6afc019fefdf3f01ef5889f2f01213",
      "tree": "0bb4dc991327fce0fe78005843d6d5c2c8e7df77",
      "parents": [
        "e06c69d07324f3da67aa063202e698dedd831365"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Apr 06 11:26:11 2017 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Apr 06 11:27:41 2017 -0700"
      },
      "message": "Enable FORTIFY unit tests for clang\n\nAnd add a thing to remind us to enable the malloc FORTIFY test when we\npull a new clang in.\n\nBug: 34747525\nTest: vts -m BionicUnitTests on bullhead\nChange-Id: If341a27756d608a0fa77ba6518e9bcc725f7632c\n"
    },
    {
      "commit": "e06c69d07324f3da67aa063202e698dedd831365",
      "tree": "9ea36af9600d8a1a3038c9a36d1a96b003a8c979",
      "parents": [
        "278d31d36e7a1682eef1f80aef204e4ad953c2fc",
        "590a410d29978016b2a01e8fbedaf17154743b76"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Apr 06 01:02:28 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 06 01:02:28 2017 +0000"
      },
      "message": "Merge \"Fix compare_exchange_weak tests to allow spurious failure\""
    },
    {
      "commit": "b8ab61804cec48e4ca585f4508fb1b7c6c5a04c5",
      "tree": "4a1045e4b9e30c52e6c3886de8474c0aeb2c8996",
      "parents": [
        "12021ce9cf1ec1bc47cded3402ac9a3aa7b9b396"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Wed Apr 05 16:20:29 2017 -0700"
      },
      "committer": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Wed Apr 05 16:37:07 2017 -0700"
      },
      "message": "Move scopeguard into android::base\n\nTest: boot bullhead, bionic unit tests\nChange-Id: I223249684867655ecb53713b10da41d3014f96ae\n"
    },
    {
      "commit": "590a410d29978016b2a01e8fbedaf17154743b76",
      "tree": "355cfb11f9076d6952567120ea9b57598248fe2d",
      "parents": [
        "0a40cb3872ad0382893c0ae2ff72a783054bd0d2"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Apr 04 17:34:59 2017 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed Apr 05 16:12:09 2017 -0700"
      },
      "message": "Fix compare_exchange_weak tests to allow spurious failure\n\nTest: Ran bionic unit tests on angler.\n\nBug: 36869788\nChange-Id: Ic1e0e4e409ac719d5b426391a771b4858a6149ee\n"
    },
    {
      "commit": "bd3d2088d99f45babb8a73192b53b6fd91930af3",
      "tree": "0533adb1ea5e0af98272e39ff9dc8e7fd3bdbf83",
      "parents": [
        "07807a10a2dfa85a952ee8c06188d0bc9597c184"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Apr 04 17:34:02 2017 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Apr 05 13:17:07 2017 -0700"
      },
      "message": "libc: add const-correct string.h overloads\n\nlibcxx provides const-correct overloads for a few string.h functions.\nThese overloads use clang\u0027s enable_if attribute, so they\u0027re preferred\nover our FORTIFY\u0027ed equivalents.\n\nThis weakens _FORTIFY_SOURCE\u003d2 when used with some of these functions,\nsince clang needs to see __pass_object_size in order to pass an accurate\nresult for __builtin_object_size(s, 1) at a callsite. Since those\nfunctions don\u0027t have __pass_object_size on their params, clang can\u0027t do\nthat. This makes LLVM lower the __builtin_object_size calls, which means\nwe get the same result as __builtin_object_size(s, 0).\n\nWe have to provide all of the overloads in Bionic, since enable_if is\nonly used to disambiguate overloads with (otherwise) the same type. In\nother words:\n\n// overload 1\nchar *strchr(const char *, int s) __attribute__((enable_if(1, \"\")));\n// overload 2\nchar *strchr(char *, int s);\n\nvoid foo() {\n  char cs[1] \u003d {};\n  strchr(static_cast\u003cconst char *\u003e(cs), \u0027\\0\u0027); // calls overload #1.\n  strchr(cs, \u0027\\0\u0027); // calls overload #2.\n}\n\nBug: 34747525\nTest: m checkbuild on bullhead internal master + AOSP. vts -m\nBionicUnitTests passes on both. Surprisingly, the only code that this\nseems to break is contained in Bionic.\n\nChange-Id: Ie406f42fb3d1c5bf940dc857889876fc39b57c90\n"
    },
    {
      "commit": "e3f66625e39ea578ea593c214d19028325a7fece",
      "tree": "8422cb5cce0298c57fb90b581757845ac69feed4",
      "parents": [
        "134912df4b2ad74dcb60bc691761234154fe0265",
        "6a2c7f5a68bf8a15287f9de1772bb48a359047a8"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Sun Apr 02 02:20:13 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Apr 02 02:20:13 2017 +0000"
      },
      "message": "Merge \"Fix lookup logic for linked namespaces\"\nam: 6a2c7f5a68\n\nChange-Id: I6af8cccc6ca6a18ced2f4843621563319fdc29f5\n"
    },
    {
      "commit": "6a2c7f5a68bf8a15287f9de1772bb48a359047a8",
      "tree": "87862ec8894932e9ae3213e40cac42289790851c",
      "parents": [
        "5d8b8310aaa43d7b8cb8809fdf805ba7f41df15e",
        "d3e7d088453e089b3d625b0864ccdf3c74893f18"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sun Apr 02 02:14:45 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Apr 02 02:14:47 2017 +0000"
      },
      "message": "Merge \"Fix lookup logic for linked namespaces\""
    },
    {
      "commit": "bcf3b3d86844f81c9cda835fe65355bc505ade46",
      "tree": "bf79eda07350d42e70fcb5b27c70596928f19a19",
      "parents": [
        "5b35e2b9c25e2cd031530e658c0d625722d33a1d",
        "ccec0f4c110a9f09bec995208e7cb252130835fe"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Mar 30 01:40:54 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 30 01:40:54 2017 +0000"
      },
      "message": "Merge \"Add more ptrace process resumption tests.\"\nam: ccec0f4c11\n\nChange-Id: Ia951508d38a146fb879e3a7aa34e3b1bc4d6169f\n"
    },
    {
      "commit": "ccec0f4c110a9f09bec995208e7cb252130835fe",
      "tree": "64aa612e35fe453765f5e866ee75e99d069e622a",
      "parents": [
        "12a07044dbcf98905632eb2a46973fe9d3a4ee49",
        "bc055cae450fd6cf3f210c72212523515b896363"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Mar 30 01:33:57 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 30 01:33:58 2017 +0000"
      },
      "message": "Merge \"Add more ptrace process resumption tests.\""
    },
    {
      "commit": "5b35e2b9c25e2cd031530e658c0d625722d33a1d",
      "tree": "4fc2bc62c9aefa90d99301def546400f48d19e7f",
      "parents": [
        "028a29faee3a62d9fc39a53cf312478384627652",
        "12a07044dbcf98905632eb2a46973fe9d3a4ee49"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 29 23:14:56 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 29 23:14:56 2017 +0000"
      },
      "message": "Merge \"Fix x86 system calls made from ELF preinit.\"\nam: 12a07044db\n\nChange-Id: I6377f5bcc5edfc725c923b596490aa74e55ea224\n"
    },
    {
      "commit": "12a07044dbcf98905632eb2a46973fe9d3a4ee49",
      "tree": "b94d7131f3a0e71ac3c731e7aeeb64e579278edf",
      "parents": [
        "aa0b5054c52e10a9e4b5d5dd9daa90d707164af0",
        "eb04ed506fbb0561b677d9518c9bae33f0262b03"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 29 23:08:17 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 29 23:08:18 2017 +0000"
      },
      "message": "Merge \"Fix x86 system calls made from ELF preinit.\""
    },
    {
      "commit": "d3e7d088453e089b3d625b0864ccdf3c74893f18",
      "tree": "0dac036e245c741b296a7fd611dbb98c3979c3a1",
      "parents": [
        "aa0b5054c52e10a9e4b5d5dd9daa90d707164af0"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Mar 27 14:11:02 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Mar 29 15:36:40 2017 -0700"
      },
      "message": "Fix lookup logic for linked namespaces\n\nWhen looking for already loaded libraries include\nlinked namespaces to the search, but check if\nthe library is accessible from the main namespace.\n\nBug: http://b/36008422\nBug: http://b/35417197\nBug: http://b/34052337\nBug: http://b/36660652\nBug: https://issuetracker.google.com/36636090\nTest: run bionic-unit-tests --gtest_filter\u003ddl*:Dl*\nChange-Id: Ic7c1d48114da3ca5dc6512ef03f595dd17b6ed17\n"
    },
    {
      "commit": "bc055cae450fd6cf3f210c72212523515b896363",
      "tree": "50a05d79c4798f7bcccdeb841364476e25a1ade8",
      "parents": [
        "df3b922fcf056bb76665f9c06f0c19c48ef937f9"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Mar 29 15:01:15 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Mar 29 15:02:18 2017 -0700"
      },
      "message": "Add more ptrace process resumption tests.\n\nAdd tests to verify that ptrace unlink happens immediately for unreaped\nprocesses.\n\nTest: /data/nativetest/bionic-unit-tests/bionic-unit-tests --gtest_filter\u003d\"Ptrace*\"\nTest: /data/nativetest64/bionic-unit-tests/bionic-unit-tests --gtest_filter\u003d\"Ptrace*\"\nChange-Id: I9803ee5be2a0686c21556598ecf17348df09f601\n"
    },
    {
      "commit": "eb04ed506fbb0561b677d9518c9bae33f0262b03",
      "tree": "11c004e500d83117298b0520973aab9188911af4",
      "parents": [
        "9cb82a2c6b9001f7c50cbb3465f4aabc5d7cd055"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 29 13:48:02 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 29 13:48:02 2017 -0700"
      },
      "message": "Fix x86 system calls made from ELF preinit.\n\nUsed by CFI, so broke cfi_test#early_init@x86, but I\u0027ve added a specific\ntest for this (and a similar test for getauxval from preinit, which this\npatch does not fix).\n\nBug: http://b/35885875\nTest: ran tests\nChange-Id: I43885bedfb88c0a26b4474bd3c27a87dec7bbc97\n"
    },
    {
      "commit": "72aed61800e14cea4cda079b34b81d29c648ab3a",
      "tree": "6039fe004da5395c68d7dcc908a818b1d9aaaf1f",
      "parents": [
        "bf8290dc7be1710b89ee3acaa1adabfdfe77d545",
        "fe96db819ba0254123f4960bc150ce2c104d3bc0"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Mar 24 23:06:39 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 24 23:06:39 2017 +0000"
      },
      "message": "Merge \"Disable compat_elf_hash_and_relocation_tables test for x86\"\nam: fe96db819b\n\nChange-Id: I6ff32babeeb514cd00704e797a713ac4149dc868\n"
    },
    {
      "commit": "fe96db819ba0254123f4960bc150ce2c104d3bc0",
      "tree": "f38fc4e05cab9ed8f60b842f162297dfe67b7cce",
      "parents": [
        "ad8dcd6023294b646e5a8288c0ed431b0845da49",
        "fc32dcb128efe35442830e2dcfa378f1d50fef1c"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Mar 24 23:02:54 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 24 23:02:56 2017 +0000"
      },
      "message": "Merge \"Disable compat_elf_hash_and_relocation_tables test for x86\""
    },
    {
      "commit": "fc32dcb128efe35442830e2dcfa378f1d50fef1c",
      "tree": "26c42db2eb5afa8db73ad23f0fad0b7e06ad9b39",
      "parents": [
        "e98d1e68ce37bb9238e3c50ea6b01d1057adb2eb"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Mar 24 10:58:23 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Mar 24 10:58:23 2017 -0700"
      },
      "message": "Disable compat_elf_hash_and_relocation_tables test for x86\n\nBug: http://b/36571076\nTest: run bionic-unit-tests on fugu\nChange-Id: I2f901bc99e55f15b06fe6a5b0d7a125d1b8241a8\n"
    },
    {
      "commit": "ab39630cefa422f2a856bcd42b2e4379f668f7b8",
      "tree": "73afb17d55d18bc6d69b2384fc1b3bbb37da1158",
      "parents": [
        "58b8d8c43ef0d6b9628fec73cd21737505cb30dc",
        "8f804d71d0c5313953ddb8a8596832aa0bf77cab"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Mar 23 19:15:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 23 19:15:50 2017 +0000"
      },
      "message": "Merge \"Verify at least 2 frames out of signal handler.\"\nam: 8f804d71d0\n\nChange-Id: I101d82f95345ebda7d385142301e5fa3e35daeed\n"
    },
    {
      "commit": "ac2f3dd5cbea96a2a101791b6808b9437382e184",
      "tree": "9c4fdb51a506261e21373106590df93516dc0826",
      "parents": [
        "4d099d1576105faa53b58097b4f816231f676431"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Mar 22 19:05:50 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Mar 23 09:45:10 2017 -0700"
      },
      "message": "Verify at least 2 frames out of signal handler.\n\nModify the test slightly to make sure that the unwinder properly unwinds\nthrough at least 2 frames outside of the signal handler. This guarantees\nthat if the first frame outside of the handler happens to be garbage,\nthis test will fail.\n\nBug: 34468756\n\nTest: Ran the unit tests on fugu, angler (both 32 bit and 64 bit).\nChange-Id: I6b76ac9fc1df9ed6fd5bbcc6f5fa4bf458354dff\n"
    },
    {
      "commit": "b1a44366b86a92c4870e277a34607065e7783f93",
      "tree": "6e50599bd3bf32d7cedfcf9c49663b385a2b1f82",
      "parents": [
        "96be725d4bc85ed5cf45e52b651f099c9151dd20",
        "e0561cb0c9612b844dbca2eee4032ec162ed246c"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Mar 16 20:42:01 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 16 20:42:01 2017 +0000"
      },
      "message": "Merge \"Use libbase for realpath and dirname\"\nam: e0561cb0c9\n\nChange-Id: I7fe096792674724641548d62c9c6e7041ebce85b\n"
    },
    {
      "commit": "5b2cd3a358dd45d28d794858f29f98b1d7d9d9df",
      "tree": "f5456b8b825b96381dc2069b6eb4fc3a079df007",
      "parents": [
        "b2882dd429f7a2ea925770ec7acd219edfe4aab8"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Mar 16 11:34:13 2017 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Mar 16 11:47:08 2017 -0700"
      },
      "message": "Use libbase for realpath and dirname\n\nTest: run bionic-unit-tests\nBug: http://b/31396973\nChange-Id: Ie8dc60348b9c57892a77be6a24dadb42241f6b62\n"
    },
    {
      "commit": "96be725d4bc85ed5cf45e52b651f099c9151dd20",
      "tree": "c4ddf0e281340db37122193a2db6ce39718fc7b8",
      "parents": [
        "485abd93b719cf9519f0832b77a33d395e02d0e5",
        "b2882dd429f7a2ea925770ec7acd219edfe4aab8"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Mar 16 06:49:38 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 16 06:49:38 2017 +0000"
      },
      "message": "Merge \"Split up the stack space tests into their own noinline functions.\"\nam: b2882dd429\n\nChange-Id: Id6212e053b0f4b886146224a962fd8744d5e8eb4\n"
    },
    {
      "commit": "61db9ac8da441d426a13ae59fca5256a77a06c6f",
      "tree": "3cda72b13844a3980205d920f75e5a6edc7ab0a1",
      "parents": [
        "2390f83da4c76ec627313fa565ec87236a391e5e"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Mar 15 19:42:05 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Mar 15 19:53:17 2017 -0700"
      },
      "message": "Split up the stack space tests into their own noinline functions.\n\nPrevent the compiler from being too smart and allocating a stack buffer\nat the beginning of a function.\n\nBug: http://b/36206043\nTest: 32/64-bit dynamic tests pass, static ones still don\u0027t\nChange-Id: I90c575be43a9dd6c4fefc0d8b514f1ae0405b994\n"
    },
    {
      "commit": "0531178d46f236ec011a1c1a1954c70969cdfe34",
      "tree": "49a625ae67e50eaae65765a16d9170a35cb38b02",
      "parents": [
        "3e33d38606163739195d8be42ce1e10caaa1d3e4",
        "a4db9d6f4109b3a2fdf2b50d131f524816012253"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Mar 15 22:14:01 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 15 22:14:01 2017 +0000"
      },
      "message": "Merge \"Add tests for pthread TLS leak.\"\nam: a4db9d6f41\n\nChange-Id: I595112f67b875a1f8cc841adaf9adf3c10a792b4\n"
    },
    {
      "commit": "7d15dc388a5fb3d3e6f5097232d82ab2b9fe7ad2",
      "tree": "4a9b51e2ff05f96694f2e859166f474595158b00",
      "parents": [
        "b1fe870a36d95f3064e45ff6bfedd061a860a179"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Mar 13 17:10:46 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Mar 15 13:30:05 2017 -0700"
      },
      "message": "Add tests for pthread TLS leak.\n\nAdd tests that ensure that threads don\u0027t leak memory mappings after\nthey exit.\n\nBug: http://b/36045112\nTest: /data/nativetest/bionic-unit-tests/bionic-unit-tests --gtest_filter\u003d*leak*\nTest: /data/nativetest64/bionic-unit-tests/bionic-unit-tests --gtest_filter\u003d*leak*\nChange-Id: Id0c1194b5d2bb7d89947b1ade16eb0d768d8c5b7\n"
    },
    {
      "commit": "778751ff6fa9be63e8b87404edcafad65b497607",
      "tree": "bd867ca826a9c46879622e97bf18716f69393f9c",
      "parents": [
        "5dd51fa6bf20162abcc65211f4d709b00a7e575b",
        "cf96f35dd16fdefbcb91598cdee1f6e097bb4a56"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Mar 09 22:08:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 09 22:08:30 2017 +0000"
      },
      "message": "Merge changes from topic \u0027debuggerd_fallback\u0027\nam: cf96f35dd1\n\nChange-Id: I875bbf95ca55919a5164752d2f49d5415ea6ded2\n"
    },
    {
      "commit": "415daa8cca875d348c003a95cf7c44c9231eae75",
      "tree": "0846b1476c61bb7d870fc8e031099d634c0c2e3c",
      "parents": [
        "e429bf2f696282537efb577feb7cb9fd534e7ace"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Mar 06 17:45:33 2017 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Mar 08 16:43:59 2017 -0800"
      },
      "message": "Increase signal stack size on 32-bit to 16kB.\n\nsnprintf to a buffer of length PATH_MAX consumes about 7kB of stack.\n\nBug: http://b/35858739\nTest: bionic-unit-tests --gtest_filter\u003d\"*big_enough*\"\nChange-Id: I34a7f42c1fd2582ca0d0a9b7e7a5290bc1cc19b1\n"
    },
    {
      "commit": "869aed6b0f34e3f9773c9488add85c406266a1f4",
      "tree": "56d946321e70f106c95c3c2afe955eeebe5a4dd1",
      "parents": [
        "536d0341d76fa1e6f028132db470ca7ce72a4dcf",
        "9e10b7fa44f56ef44d7d3d1fb18b4e6ec6599d7c"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Wed Mar 01 21:51:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 01 21:51:00 2017 +0000"
      },
      "message": "Merge \"Stop using __system_property_area__\"\nam: 9e10b7fa44\n\nChange-Id: I2b3add48f5d5e41e250a1024dab6fd8411447416\n"
    },
    {
      "commit": "4a92ffd3029e9e38c3a55222676a126db5a3b962",
      "tree": "433d790ddfffcfb36b0b362e8c968ee2e6197a55",
      "parents": [
        "ebceea8e85ad2897a5ce8575b81f18fdd7aa0320"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Wed Mar 01 20:36:13 2017 +0100"
      },
      "committer": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Wed Mar 01 20:43:42 2017 +0100"
      },
      "message": "Stop using __system_property_area__\n\nApparently that \"backdoor\" is no longer needed - the proper way is\nto reinitialize properties:\n    https://android-review.googlesource.com/#/c/181794/24/tests/system_properties_test.cpp\n\nAlso removes mentions of libnativehelper test (it no longer uses\n__system_property_area__) and removes useless \"extern\" declaration\n(actual use was removed long ago).\n\nTest: refactoring CL, existsing tests still pass\n\nBUG\u003d21852512\nBUG\u003d34114501\n\nChange-Id: I2223cab2fcb671ea180ad4470a7aba5c9cd20bd8\n"
    },
    {
      "commit": "ea7961b60460edbc65d1bf577b46801b11c9c493",
      "tree": "2502660820b34936fb5bd3b8d34aab80bc87aef8",
      "parents": [
        "ce9b4eb5da66cc6a07d2eb7a499b6463e630bace",
        "6e528631d1eb4779dc93098c696c3a18e6bcecfb"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Feb 28 00:47:49 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Feb 28 00:47:49 2017 +0000"
      },
      "message": "Merge \"Fix greylist exception to account for linked namespaces\"\nam: 6e528631d1\n\nChange-Id: I639c4ac215359a5c3caa6b19a2cd59ace1ff1ca4\n"
    },
    {
      "commit": "35c8e3b1251af62897a9babd693e2b1be5676160",
      "tree": "3cc1d7cfe239740c04f29d35058048bea7b47c9f",
      "parents": [
        "5f41ce25c60df2012b58846940dfac58dce50e59"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Feb 27 12:17:47 2017 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Feb 27 14:16:04 2017 -0800"
      },
      "message": "Fix greylist exception to account for linked namespaces\n\nDo not load second copy of libraries that are supposed to\nbe provided by linked namespaces. Also do not print\nerror in the log if caller tries to open shared library\nusing absolute path for apps targeting N+.\n\nBug: http://b/35454141\nBug: http://b/26833548\nBug: http://b/35338922\nTest: run bionic-unit-tests --gtest_filter\u003ddl*\nChange-Id: Icf3aeedff18d287d2ba0b3df3808b100f3ef5f7a\n"
    },
    {
      "commit": "383efd5f2eb9165d6ff93e40fb4319b8ee84ebb5",
      "tree": "03d10a0380013e4832be95e9c632fb29a44325b1",
      "parents": [
        "566d200680676af9ca9c0876ad0303d42325e0cd",
        "78e6c4ec7c3c41831629c0e70fd97861d8c098c4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Feb 25 03:14:15 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Feb 25 03:14:15 2017 +0000"
      },
      "message": "Merge \"Add tests for \u003cendian.h\u003e.\"\nam: 78e6c4ec7c\n\nChange-Id: I3593c8f899707d5e45fad839733b0dcbcc945df0\n"
    },
    {
      "commit": "78e6c4ec7c3c41831629c0e70fd97861d8c098c4",
      "tree": "db80052b369d2cbc0edc2e5ed663e7a0f0bb02e6",
      "parents": [
        "0b87362f5387f72a40357c1c94b7bb7eed48f249",
        "ba267f45d62f5b33a6bbb96147d88fbab017b4ef"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 25 03:10:18 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 25 03:10:19 2017 +0000"
      },
      "message": "Merge \"Add tests for \u003cendian.h\u003e.\""
    },
    {
      "commit": "566d200680676af9ca9c0876ad0303d42325e0cd",
      "tree": "b9b514dbc668d2b5c586b2f640f9924be8a2de77",
      "parents": [
        "2317d87e5ff7c7c31dd84c9221ffc2a9ae5d160e",
        "0b87362f5387f72a40357c1c94b7bb7eed48f249"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Sat Feb 25 02:31:13 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Feb 25 02:31:13 2017 +0000"
      },
      "message": "Merge \"loader: set PT_INTERP to itself\"\nam: 0b87362f53\n\nChange-Id: I505616f5b4223dcd6cdad396db340c81b61a87b5\n"
    },
    {
      "commit": "2a6955e040f24b31a2dfe829f47e35ac91733489",
      "tree": "e91c30cf688ab2fd0d55546042d3496f489db7de",
      "parents": [
        "5927b04ce7d9d4727a4a644f8af4040b8dab5d0a"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Feb 23 11:53:43 2017 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Feb 24 16:56:38 2017 -0800"
      },
      "message": "loader: set PT_INTERP to itself\n\nSome versions of kernel set AT_BASE to 0\nif dynamic loader does not have PT_INTERP\nset.\n\nBug: http://b/30739481\nTest: run /system/bin/linker64 and /system/bin/linker\nChange-Id: I1b67777166fe917d3ee1a97277045ca6f5db0084\n"
    },
    {
      "commit": "ba267f45d62f5b33a6bbb96147d88fbab017b4ef",
      "tree": "60de02ea20e7b3aec2047c9891a711dde41c4fb6",
      "parents": [
        "5927b04ce7d9d4727a4a644f8af4040b8dab5d0a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 24 16:19:53 2017 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 24 16:19:53 2017 -0800"
      },
      "message": "Add tests for \u003cendian.h\u003e.\n\nAlso, for the stuff that\u0027s also in \u003cnetinet/in.h\u003e as real functions,\ncheck that they\u0027re there too (and as functions rather than macros,\nsince that was historically not true).\n\nBug: http://b/28432448\nTest: ran tests\nChange-Id: I7e4ae926f7e02de3b6dd38d1953e5b3b43d44f74\n"
    }
  ],
  "next": "8c8ce57d77536972eff64805d5f0bab67e8f6211"
}
