)]}'
{
  "log": [
    {
      "commit": "b34d313d1773270a33ea521972b96ef55144fb38",
      "tree": "01f3f0e4c4d9ca98114d00e9252c5ef8d9b4abac",
      "parents": [
        "258642b7d77b5e52bd2586b7552bc388b72465c4",
        "4edbcee2c65bd38efae1411a847a6af9b22642fc"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Fri Sep 24 22:15:43 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 24 22:15:43 2021 +0000"
      },
      "message": "Merge \"Random HWASan cleanups.\""
    },
    {
      "commit": "4edbcee2c65bd38efae1411a847a6af9b22642fc",
      "tree": "1af7f53978b666aa035b49e6dba3a5d755a3217b",
      "parents": [
        "e8121199fdd83b81933eb0a558e7ea33b8bdd19e"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Fri Sep 17 14:59:15 2021 -0700"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Fri Sep 24 11:21:38 2021 -0700"
      },
      "message": "Random HWASan cleanups.\n\nMakes CtsBionicTestCases pass under HWASan.\n\nBug: 193568145\nTest: CtsBionicTestCases\nChange-Id: I38ee8a8508827c0ffee61ce33bb8c6a3f40388c9\n"
    },
    {
      "commit": "258642b7d77b5e52bd2586b7552bc388b72465c4",
      "tree": "8f5b5a122a97781db19419610d90bdfbc0fde196",
      "parents": [
        "b47aa42a1122546930628e8d36fe483f9c0a16b1",
        "b3cac0fab48fd9d33005c931e02632e290d57568"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Sep 22 00:47:17 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 22 00:47:17 2021 +0000"
      },
      "message": "Merge \"Update allocator alignment tests.\""
    },
    {
      "commit": "b3cac0fab48fd9d33005c931e02632e290d57568",
      "tree": "8f5b5a122a97781db19419610d90bdfbc0fde196",
      "parents": [
        "b47aa42a1122546930628e8d36fe483f9c0a16b1"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Sep 21 10:32:40 2021 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Sep 21 16:09:22 2021 -0700"
      },
      "message": "Update allocator alignment tests.\n\nclang was configured to force 16 byte alignments on allocations \u003e 8\nfor 64 bit. Unfortunately, we never updated our alignment test to\nverify this behavior. So this finally adds these new restrictions.\n\nIn addition, when GWP-ASan is enabled, it will take over allocations\nfrom the native allocator. In order to make sure that GWP-ASan also\nobeys these alignment checks, add a test that forces GWP-ASan on and\nruns the alignment check test.\n\nTest: Ran unit tests on a flame using scudo (both 32 bit and 64 bit).\nTest: Ran unit tests on a flame using jemalloc (both 32 bit and 64 bit).\nChange-Id: I87a20b9c2f32b9d207f36437d291ed44247dcbd1\n"
    },
    {
      "commit": "b47aa42a1122546930628e8d36fe483f9c0a16b1",
      "tree": "02404e6843fdecf0853bf98226a7fd6fc2cfb7a1",
      "parents": [
        "e8121199fdd83b81933eb0a558e7ea33b8bdd19e",
        "8f9713e2373b74b5109f6eddf110855ed4697bb2"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Sep 21 17:30:59 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Sep 21 17:30:59 2021 +0000"
      },
      "message": "Merge \"Fix broken return code of M_INITIALIZE_GWP_ASAN.\""
    },
    {
      "commit": "8f9713e2373b74b5109f6eddf110855ed4697bb2",
      "tree": "02404e6843fdecf0853bf98226a7fd6fc2cfb7a1",
      "parents": [
        "e8121199fdd83b81933eb0a558e7ea33b8bdd19e"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Sep 20 17:25:46 2021 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Sep 20 18:07:07 2021 -0700"
      },
      "message": "Fix broken return code of M_INITIALIZE_GWP_ASAN.\n\nWhen calling android_mallopt using M_INITIALIZE_GWP_ASAN, nothing\nwas being returned. Fix this, add a test, and also refactor the\ncode a bit so dynamic and static share the same code.\n\nTest: Unit tests pass in dynamic and static versions.\nTest: Passed using both jemalloc and scudo.\nChange-Id: Ibe54b6ccabdbd44d2378892e793df393978bc02b\n"
    },
    {
      "commit": "e8121199fdd83b81933eb0a558e7ea33b8bdd19e",
      "tree": "a6fd73fd149dcd211dca0888dca3f682f7cf3d3f",
      "parents": [
        "dc448a82b152cbae133c505eab527515140abfcf",
        "c7fe26aa82ecfdb9a6a5864b08de368fb4ccc166"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Sep 14 22:11:31 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Sep 14 22:11:31 2021 +0000"
      },
      "message": "Merge \"Use the BSD license for our bogus fts.h.\""
    },
    {
      "commit": "c7fe26aa82ecfdb9a6a5864b08de368fb4ccc166",
      "tree": "a6fd73fd149dcd211dca0888dca3f682f7cf3d3f",
      "parents": [
        "dc448a82b152cbae133c505eab527515140abfcf"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Sep 14 12:26:08 2021 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Sep 14 12:26:08 2021 -0700"
      },
      "message": "Use the BSD license for our bogus fts.h.\n\n...since the implementation is BSD. I missed this in the original code\nreview (and the presubmit hooks were skipped, so the machines didn\u0027t\nnotice).\n\nTest: N/A\nChange-Id: Ia9fe067c68b3ab8045d3f5dfe256f3200f102fbf\n"
    },
    {
      "commit": "dc448a82b152cbae133c505eab527515140abfcf",
      "tree": "8da22e2b05b2a1412f495abd6f8aa7257c089fd8",
      "parents": [
        "406589b9757f62328d01a8702419fcbac08c6d53",
        "de1cf85795c3141ab456baeac391f17919422f77"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Sep 10 21:12:43 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 10 21:12:43 2021 +0000"
      },
      "message": "Merge \"Use lp64 rather than explicitly saying \"arm64,x86_64\".\""
    },
    {
      "commit": "406589b9757f62328d01a8702419fcbac08c6d53",
      "tree": "58c5cf2f4d89cf1c91843e29a432f7a4caaee78a",
      "parents": [
        "41fed4d461446f537015b0e609c7d7cb21c67eff",
        "048f24ed2a0a863a59c0167cfbeff1b8a4376224"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 09 04:15:12 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 09 04:15:12 2021 +0000"
      },
      "message": "Merge changes Ifac9a59e,I213d423a\n\n* changes:\n  Export fts as a static library for use with musl\n  Compile fts.c in libc_openbsd_ndk\n"
    },
    {
      "commit": "41fed4d461446f537015b0e609c7d7cb21c67eff",
      "tree": "ed5df8631acb6d03ec6ad6766c22f8fafa4379e4",
      "parents": [
        "7672be0b3e40aad3da1d64e0ed8de07030745596",
        "e791552fbb222c9ae2b4293b34ce50be82e5b353"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 09 00:39:27 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 09 00:39:27 2021 +0000"
      },
      "message": "Merge \"Add API level define for T.\""
    },
    {
      "commit": "048f24ed2a0a863a59c0167cfbeff1b8a4376224",
      "tree": "77ffbd0cc9a05157036d3d3fd42d0d7c19bb79ed",
      "parents": [
        "69bcb8be274db9e683f73814553491f5a23d95b7"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 01 17:26:00 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 08 15:53:10 2021 -0700"
      },
      "message": "Export fts as a static library for use with musl\n\nmusl libc doesn\u0027t provide fts, but elfutils and libabigail need it.\nExport bionic\u0027s fts as a staic library that can be linked into elfutils\nand libabigail when compiling against musl.\n\nfts uses recallocarray, which musl doesn\u0027t provide, so also include\nrecallocarray.c in libfts.a.\n\nRequires minor tweaks to fts.c and a wrapper around fts.h to make them\ncompatible with musl, primarily by providing local definitions of macros\nprovided in bionic\u0027s sys/cdefs.h.\n\nBug: 190084016\nTest: m libfts\nChange-Id: Ifac9a59e7504c0c1f5f8a3a5bd3c19a13980b83c\n"
    },
    {
      "commit": "e791552fbb222c9ae2b4293b34ce50be82e5b353",
      "tree": "ed5df8631acb6d03ec6ad6766c22f8fafa4379e4",
      "parents": [
        "7672be0b3e40aad3da1d64e0ed8de07030745596"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Sep 08 14:57:46 2021 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Sep 08 14:57:46 2021 -0700"
      },
      "message": "Add API level define for T.\n\nTest: treehugger\nBug: None\nChange-Id: I7a973bbd7e8d646f45f4d860d564f9f104aab134\n"
    },
    {
      "commit": "69bcb8be274db9e683f73814553491f5a23d95b7",
      "tree": "e07d808598a9a9e9c531abbc4befcf04905754f1",
      "parents": [
        "7672be0b3e40aad3da1d64e0ed8de07030745596"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 08 13:24:16 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Sep 08 13:26:46 2021 -0700"
      },
      "message": "Compile fts.c in libc_openbsd_ndk\n\nfts.c is from openbsd and has compatibility macros to make it compile\nas part of bionic.  Move it into libc_openbsd_ndk where it will\nget the workarounds from -include openbsd-compat.h instead.\n\nTest: m libc\nChange-Id: I213d423af8f010e39460b611e902acbf3561ae7a\n"
    },
    {
      "commit": "de1cf85795c3141ab456baeac391f17919422f77",
      "tree": "7d94130af2240301638f8958c8b7c5304384fc4e",
      "parents": [
        "15681db86e8b350a98efdb6ebe748bb4682090a5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Sep 07 09:17:14 2021 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Sep 07 09:17:14 2021 -0700"
      },
      "message": "Use lp64 rather than explicitly saying \"arm64,x86_64\".\n\nWe\u0027d missed a couple, but these seem to be the last...\n\nTest: treehugger\nChange-Id: Ic9808c5171b6c826d2d251c14687142280331efd\n"
    },
    {
      "commit": "7672be0b3e40aad3da1d64e0ed8de07030745596",
      "tree": "1b477f0081b666ba724c807aacaae89913966524",
      "parents": [
        "563e60e32adf7f427af03075a6fb800e723025f1",
        "3a39c0bc431ec36416225d4b9a85fa8cacb16836"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Sep 02 20:27:08 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 02 20:27:08 2021 +0000"
      },
      "message": "Merge \"Update to v5.14 kernel headers.\""
    },
    {
      "commit": "3a39c0bc431ec36416225d4b9a85fa8cacb16836",
      "tree": "1b477f0081b666ba724c807aacaae89913966524",
      "parents": [
        "563e60e32adf7f427af03075a6fb800e723025f1"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Sep 02 00:03:38 2021 +0000"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Sep 02 00:03:38 2021 +0000"
      },
      "message": "Update to v5.14 kernel headers.\n\nKernel headers coming from:\n\nGit: https://android.googlesource.com/kernel/common/\nBranch: android-mainline\nTag: android-mainline-5.14\n\nTest: Builds, bionic unit tests.\nChange-Id: Iff3424da9fbf7ae89ebeb6daabb34c4aa650901f\n"
    },
    {
      "commit": "563e60e32adf7f427af03075a6fb800e723025f1",
      "tree": "fe1a6342f2ca4c833a7d7c5a4aaca0d906b52d8d",
      "parents": [
        "957d6d513e543699afa0af6219968a59e4ac228f",
        "1583cd286eb9b847b72a75f15d40e2b0bc27543a"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Thu Aug 26 22:11:31 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 26 22:11:31 2021 +0000"
      },
      "message": "Merge \"Reland \"Use the dynamic table instead of __rela?_iplt_* to find the linker\u0027s IRELATIVE relocs.\" with a fix.\""
    },
    {
      "commit": "1583cd286eb9b847b72a75f15d40e2b0bc27543a",
      "tree": "d4fbe8857c811b608f1acc4627a7e66c1b59a1cc",
      "parents": [
        "556b45ad41a1eb8c2bbfb654e08ff31e8f6e4cbf"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Aug 18 17:04:23 2021 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Thu Aug 26 11:48:19 2021 -0700"
      },
      "message": "Reland \"Use the dynamic table instead of __rela?_iplt_* to find the linker\u0027s IRELATIVE relocs.\" with a fix.\n\nA recent change to lld [1] made it so that the __rela?_iplt_*\nsymbols are no longer defined for PIEs and shared libraries. Since\nthe linker is a PIE, this prevents it from being able to look up\nits own relocations via these symbols. We don\u0027t need these symbols\nto find the relocations however, as their location is available via\nthe dynamic table. Therefore, start using the dynamic table to find\nthe relocations instead of using the symbols.\n\nPreviously landed in r.android.com/1801427 and reverted in\nr.android.com/1804876 due to linux-bionic breakage. This time,\nsearch .rela.dyn as well as .rela.plt, since the linker may put the\nrelocations in either location (see [2]).\n\n[1] https://github.com/llvm/llvm-project/commit/f8cb78e99aae9aa3f89f7bfe667db2c5b767f21f\n[2] https://reviews.llvm.org/D65651\n\nBug: 197420743\nChange-Id: I5bef157472e9893822e3ca507ef41a15beefc6f1\n"
    },
    {
      "commit": "957d6d513e543699afa0af6219968a59e4ac228f",
      "tree": "f4ebdc2be5521898f2eac92c98a887c9b4c3ca36",
      "parents": [
        "9f99a046b90671292ae691c668a2b7b8ca2b3624",
        "e5570c5dfe0be22e0c235ca5de79b96ac39a4529"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 26 02:03:28 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 26 02:03:28 2021 +0000"
      },
      "message": "Merge \"Revert \"Use the dynamic table instead of __rela?_iplt_* to find the linker\u0027s IRELATIVE relocs.\"\""
    },
    {
      "commit": "e5570c5dfe0be22e0c235ca5de79b96ac39a4529",
      "tree": "1bf81f53721d1fab5f1bd0cbe6c2e1d5c6274616",
      "parents": [
        "65bdf655c4afceb151f619e584f2097ae0ed3a84"
      ],
      "author": {
        "name": "ycheo",
        "email": "ycheo@google.com",
        "time": "Sat Aug 21 19:29:22 2021 +0000"
      },
      "committer": {
        "name": "Ram Muthiah",
        "email": "rammuthiah@google.com",
        "time": "Thu Aug 26 00:31:51 2021 +0000"
      },
      "message": "Revert \"Use the dynamic table instead of __rela?_iplt_* to find the linker\u0027s IRELATIVE relocs.\"\n\nThis reverts commit 65bdf655c4afceb151f619e584f2097ae0ed3a84.\n\nReason for revert: checking the failure of avd/avd_boot_test\nBug: 197781964\nChange-Id: I70eb03b45cdfbd87ef6edb03b74ad6d1970dc08c\n"
    },
    {
      "commit": "9f99a046b90671292ae691c668a2b7b8ca2b3624",
      "tree": "7445fae14339b24e2f6cc3ba17766bc23346f5f2",
      "parents": [
        "057219b3f3b3e25194c9385bdeab3e034932d8b9",
        "2411a5e7894a1afe82c1307cea78369e1dc35c80"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 25 02:14:15 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 25 02:14:15 2021 +0000"
      },
      "message": "Merge \"Export memalign to linker\""
    },
    {
      "commit": "057219b3f3b3e25194c9385bdeab3e034932d8b9",
      "tree": "2d0918c8404aeaa00137f19c9b20182e0ec0d32c",
      "parents": [
        "15681db86e8b350a98efdb6ebe748bb4682090a5",
        "0c3bb2cf8f4fc0332fc0191e713f686f171ef121"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Mon Aug 23 18:25:33 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 23 18:25:33 2021 +0000"
      },
      "message": "Merge \"[libm] Set pragma FENV_EACCESS for x86_64, i386\""
    },
    {
      "commit": "0c3bb2cf8f4fc0332fc0191e713f686f171ef121",
      "tree": "688b923a52f195b8930cf1e52d9c4b090dbb084c",
      "parents": [
        "556b45ad41a1eb8c2bbfb654e08ff31e8f6e4cbf"
      ],
      "author": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Thu Aug 19 20:15:12 2021 -0700"
      },
      "committer": {
        "name": "Pirama Arumuga Nainar",
        "email": "pirama@google.com",
        "time": "Fri Aug 20 14:49:17 2021 -0700"
      },
      "message": "[libm] Set pragma FENV_EACCESS for x86_64, i386\n\nBug: http://b/157914307\n\nThis pragma enables\n- -frounding-math, i.e. rounding mode set at runtime are honored\n- -ffp-exception-behavior\u003dstrict, i.e. FPE semantics are preserved.\n- Prevents use of FMA instructions.\n\nTest: Build toolchain without revert https://r.android.com/1298100\n      and run bionic-unit-tests.math_h*\nChange-Id: I6249b20c93e0fd4ebbdfbe433da4ad4a65d3747b\n"
    },
    {
      "commit": "15681db86e8b350a98efdb6ebe748bb4682090a5",
      "tree": "fa216b3dc657f3542b0cd91cc7fa8b06f27c4a72",
      "parents": [
        "556b45ad41a1eb8c2bbfb654e08ff31e8f6e4cbf",
        "65bdf655c4afceb151f619e584f2097ae0ed3a84"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 20 21:33:17 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 20 21:33:17 2021 +0000"
      },
      "message": "Merge \"Use the dynamic table instead of __rela?_iplt_* to find the linker\u0027s IRELATIVE relocs.\""
    },
    {
      "commit": "65bdf655c4afceb151f619e584f2097ae0ed3a84",
      "tree": "fa216b3dc657f3542b0cd91cc7fa8b06f27c4a72",
      "parents": [
        "556b45ad41a1eb8c2bbfb654e08ff31e8f6e4cbf"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Aug 18 17:04:23 2021 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Fri Aug 20 12:07:53 2021 -0700"
      },
      "message": "Use the dynamic table instead of __rela?_iplt_* to find the linker\u0027s IRELATIVE relocs.\n\nA recent change to lld [1] made it so that the __rela?_iplt_*\nsymbols are no longer defined for PIEs and shared libraries. Since\nthe linker is a PIE, this prevents it from being able to look up\nits own relocations via these symbols. We don\u0027t need these symbols\nto find the relocations however, as their location is available via\nthe dynamic table. Therefore, start using the dynamic table to find\nthe relocations instead of using the symbols.\n\n[1] https://github.com/llvm/llvm-project/commit/f8cb78e99aae9aa3f89f7bfe667db2c5b767f21f\n\nChange-Id: I4a12ae9f5ffd06d0399e05ec3ecc4211c7be2880\n"
    },
    {
      "commit": "2411a5e7894a1afe82c1307cea78369e1dc35c80",
      "tree": "25dbe7a2b680a6217ebbf3ff6b6c6f1374e51498",
      "parents": [
        "556b45ad41a1eb8c2bbfb654e08ff31e8f6e4cbf"
      ],
      "author": {
        "name": "Matthew Maurer",
        "email": "mmaurer@google.com",
        "time": "Thu Jun 24 16:12:45 2021 -0700"
      },
      "committer": {
        "name": "Matthew Maurer",
        "email": "mmaurer@google.com",
        "time": "Tue Aug 17 15:08:49 2021 -0700"
      },
      "message": "Export memalign to linker\n\nIn order to support demangling of rust symbols by the linker, we are\nadding a small Rust component. Rust expects `memalign` to be present in\nhosted environments, and it doesn\u0027t appear costly to enable it.\n\nBug: 178565008\nTest: m, killall -11 keystore2 produced mangled names in tombstone\nChange-Id: I8fc749000fa02a3b760c8cc55be3348b9964d931\n"
    },
    {
      "commit": "556b45ad41a1eb8c2bbfb654e08ff31e8f6e4cbf",
      "tree": "1bf81f53721d1fab5f1bd0cbe6c2e1d5c6274616",
      "parents": [
        "a93cea05cf0f92a61715e9fd6c22a7e519e8cfbd",
        "4c5595c968a1cf2211edfb2817009af6d5bc0522"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Aug 17 16:29:45 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 17 16:29:45 2021 +0000"
      },
      "message": "Merge changes I56b23576,I37ede846,Iec9ba776\n\n* changes:\n  Replace local MUSL define with global ANDROID_HOST_MUSL\n  Fix some clang-format issues\n  Fix bionic-unit-tests-glibc for 32-bit musl\n"
    },
    {
      "commit": "4c5595c968a1cf2211edfb2817009af6d5bc0522",
      "tree": "1bf81f53721d1fab5f1bd0cbe6c2e1d5c6274616",
      "parents": [
        "14d15076199992f71997a1147f41bdfc2fd192ef"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Aug 16 15:51:59 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Aug 16 16:44:24 2021 -0700"
      },
      "message": "Replace local MUSL define with global ANDROID_HOST_MUSL\n\nBug: 190084016\nTest: m USE_HOST_MUSL\u003dtrue bionic-unit-tests-glibc\nChange-Id: I56b23576cb24912112d2ae56d8ecc2e3716982fe\n"
    },
    {
      "commit": "14d15076199992f71997a1147f41bdfc2fd192ef",
      "tree": "ba273386429bdb4c270aedf7e1ebb3e0ee1c0d5d",
      "parents": [
        "35d469ba4fd0efecd36421c44978ded15eb8e087"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Aug 16 16:35:27 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Aug 16 16:37:33 2021 -0700"
      },
      "message": "Fix some clang-format issues\n\nFix some formatting issues that clang-format wanted to fix in the next\nCL.\n\nTest: builds\nChange-Id: I37ede84672a2ae7c262da00319d7dbc132d7f4d8\n"
    },
    {
      "commit": "35d469ba4fd0efecd36421c44978ded15eb8e087",
      "tree": "d14d53e1986bef337dc6c8ea11c26d8a7540e89b",
      "parents": [
        "a93cea05cf0f92a61715e9fd6c22a7e519e8cfbd"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Aug 16 15:26:28 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Aug 16 16:32:53 2021 -0700"
      },
      "message": "Fix bionic-unit-tests-glibc for 32-bit musl\n\nMusl doesn\u0027t define __NR_clock_gettime and __NR_gettimeofday on\n32-bit architectures, #define them to __NR_clock_gettime32 and\n__NR_gettimeofday_time32 respectively.\n\nBug: 190084016\nTest: m USE_HOST_MUSL\u003dtrue bionic-unit-tests-glibc\nChange-Id: Iec9ba776a94639a4b6a3ad42f18dfdb0e3580f02\n"
    },
    {
      "commit": "a93cea05cf0f92a61715e9fd6c22a7e519e8cfbd",
      "tree": "51db1cace0a75ac9e33aef1efb36e3f1d6832c67",
      "parents": [
        "4c92da431155174c6bfef91c227fe34becb340c0",
        "7da20341e91a4ece30f628fb91fbc6056c9c8a7c"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Aug 13 00:56:48 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 13 00:56:48 2021 +0000"
      },
      "message": "Merge \"Build bionic unit tests for musl\""
    },
    {
      "commit": "7da20341e91a4ece30f628fb91fbc6056c9c8a7c",
      "tree": "51db1cace0a75ac9e33aef1efb36e3f1d6832c67",
      "parents": [
        "4c92da431155174c6bfef91c227fe34becb340c0"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jul 28 11:18:11 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Aug 12 11:13:11 2021 -0700"
      },
      "message": "Build bionic unit tests for musl\n\nModify bionic unit tests that are built for glibc so that they also\nbuild against musl.  They don\u0027t all pass though:\n\nWith glibc:\n 2 SLOW TESTS\n 4 TIMEOUT TESTS\n313 FAILED TESTS\n  YOU HAVE 2 DISABLED TESTS\n\nWith musl:\n11 SLOW TESTS\n11 TIMEOUT TESTS\n363 FAILED TESTS\n  YOU HAVE 2 DISABLED TESTS\n\nBug: 190084016\nTest: m bionic-unit-tests-glibc with musl\nTest: atest bionic-unit-tests-static\nTest: atest --host bionic-unit-tests-glibc with glibc\nChange-Id: I79b6eab04fed3cc4392450df5eef2579412edfe1\n"
    },
    {
      "commit": "4c92da431155174c6bfef91c227fe34becb340c0",
      "tree": "9a2084066c9f3986ee6058f8e9d279b0ca3fbf80",
      "parents": [
        "ec75f703e1487f4d32fed1516fb6b5eab78e1e8e",
        "e07b33d3add0ca6c3e22471b29a835cfd2c293bd"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Aug 06 20:04:09 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 06 20:04:09 2021 +0000"
      },
      "message": "Merge \"Only run the exec once if test passes.\""
    },
    {
      "commit": "e07b33d3add0ca6c3e22471b29a835cfd2c293bd",
      "tree": "4a3af6bc63a0546d1976437225724141e38bf36b",
      "parents": [
        "678cac51d471b6792805748545dc7684b759ba73"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Aug 05 13:26:11 2021 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Aug 05 14:01:52 2021 -0700"
      },
      "message": "Only run the exec once if test passes.\n\nI accidentally made the tests run MAX_RETRIES times instead of\nrunning once when passing, and at most MAX_RETRIES when the\ntest fails. Also, add a bit of randomness to the usleep to try and\navoid tests syncing up on failures.\n\nBug: 193898572\n\nTest: Ran unit tests and verified that a pass doesn\u0027t result in another run.\nTest: Ran three copies of the unit tests at the same time to verify that\nTest: there isn\u0027t a flaky test failure.\nChange-Id: I8b8d3cd05ca7d1e87ce34bf10aeef84f6989fdab\n"
    },
    {
      "commit": "ec75f703e1487f4d32fed1516fb6b5eab78e1e8e",
      "tree": "8f92998c37e0046b51cab01760c7bb583f8a64a5",
      "parents": [
        "a4ffabe79bf6cf6b4adf4f23b86dcf879d03aa86",
        "e9898f393a2c9e96dd23e298f661e6e7121951dd"
      ],
      "author": {
        "name": "Joel Galenson",
        "email": "jgalenson@google.com",
        "time": "Tue Aug 03 14:20:06 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 03 14:20:06 2021 +0000"
      },
      "message": "Merge \"Move the Rust system property bindings into librustutils.\""
    },
    {
      "commit": "a4ffabe79bf6cf6b4adf4f23b86dcf879d03aa86",
      "tree": "b5df3d89614d5e6ce730924a06486fad906d79be",
      "parents": [
        "678cac51d471b6792805748545dc7684b759ba73",
        "3a0ced8539894f66f91371e0e546934ef695c066"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Tue Aug 03 07:52:58 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 03 07:52:58 2021 +0000"
      },
      "message": "Merge \"Reland \"Fix GWP hooks not being restored, leading to crashes.\"\""
    },
    {
      "commit": "678cac51d471b6792805748545dc7684b759ba73",
      "tree": "e0fd671672364e5f7276fdfa29a0d6003e114ee4",
      "parents": [
        "bc1b267454cd305d2bbaa0f22914b98a23ef1ffa",
        "4408b8abb0feb5c58648e448dc7bd7134a1cf92c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 30 20:16:35 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jul 30 20:16:35 2021 +0000"
      },
      "message": "Merge changes I6b097079,I6a12d50d\n\n* changes:\n  Enable posix strerror_r test in glibc\n  POSIX strerror_r returns an error number, not -1\n"
    },
    {
      "commit": "3a0ced8539894f66f91371e0e546934ef695c066",
      "tree": "b25c975a37de7f035451e387443f859b54e62ffc",
      "parents": [
        "98115b7494a96dd0b8e6ece7ff5e50704038c906"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Tue Jul 20 15:43:37 2021 +0100"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Fri Jul 30 17:59:17 2021 +0100"
      },
      "message": "Reland \"Fix GWP hooks not being restored, leading to crashes.\"\n\nIf the DispatchReset fails, the subsequent iteration has the wrong\nidea of what the \"original\" table is, and if a subsequent DispatchReset\nsucceeds it unhooks them.\n\nRepro in https://r.android.com/1767868.\n\nBug: 193012939\nBug: 189776979\nChange-Id: I30445c053fcb785669f75d9c83056926d850edce\n"
    },
    {
      "commit": "4408b8abb0feb5c58648e448dc7bd7134a1cf92c",
      "tree": "99995a389826675b0e483f91ef56c5041f63a041",
      "parents": [
        "695af0da30a37cb7e105c40811656a22a898536c"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Jul 29 22:45:34 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jul 30 09:39:58 2021 -0700"
      },
      "message": "Enable posix strerror_r test in glibc\n\nWork around the incompatibility between libc++ and !_GNU_SOURCE\nby defining a wrapper function around the posix strerror_r in\na file that does not include any libc++ or gtest headers.\n\nTest: bionic-unit-tests-glibc\nChange-Id: I6b097079777b5dcd802e295cc566964fe1c01382\n"
    },
    {
      "commit": "695af0da30a37cb7e105c40811656a22a898536c",
      "tree": "c2a24253954884fbfd8112d83aea087a46397d35",
      "parents": [
        "e397e49aa73c4c21cb43c0b302d3df3a7b7fb944"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jul 30 09:36:57 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jul 30 09:39:21 2021 -0700"
      },
      "message": "POSIX strerror_r returns an error number, not -1\n\nThe posix spec says strerror_r returns a positive error number,  not\n-1 and set errno.\n\nTest: bionic-unit-tests-static\nChange-Id: I6a12d50d046f9caac299bf3bff63e6c9496c1b6f\n"
    },
    {
      "commit": "e9898f393a2c9e96dd23e298f661e6e7121951dd",
      "tree": "7ab29911b8e3a809fd120f62dcc1cc6128f57237",
      "parents": [
        "bc1b267454cd305d2bbaa0f22914b98a23ef1ffa"
      ],
      "author": {
        "name": "Joel Galenson",
        "email": "jgalenson@google.com",
        "time": "Thu Jul 29 15:45:07 2021 -0700"
      },
      "committer": {
        "name": "Joel Galenson",
        "email": "jgalenson@google.com",
        "time": "Thu Jul 29 15:55:07 2021 -0700"
      },
      "message": "Move the Rust system property bindings into librustutils.\n\nBug: 182498247\nTest: Build\nChange-Id: I688a1c7654d94b349b6903d9e7735656d31e7629\n"
    },
    {
      "commit": "bc1b267454cd305d2bbaa0f22914b98a23ef1ffa",
      "tree": "c3f0a816c8008f4f1a2604fb434ff1de2c31e567",
      "parents": [
        "1e9af0f339f50e72cd45f3c057a19b12df727e7a",
        "b4ab4f6d43d9acfc35b06912a670d9e712b4f29e"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Jul 29 10:48:57 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 29 10:48:57 2021 +0000"
      },
      "message": "Merge \"Revert \"Fix GWP hooks not being restored, leading to crashes.\"\""
    },
    {
      "commit": "b4ab4f6d43d9acfc35b06912a670d9e712b4f29e",
      "tree": "6badcd5a33ceebd727ae55f9ae4dfd09f35e948b",
      "parents": [
        "9db8f2bc8758432b5d7ae5975e14311dc1601ebe"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Jul 29 09:57:37 2021 +0000"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Jul 29 09:57:37 2021 +0000"
      },
      "message": "Revert \"Fix GWP hooks not being restored, leading to crashes.\"\n\nThis reverts commit 9db8f2bc8758432b5d7ae5975e14311dc1601ebe.\n\nReason for revert: b/194806683\n\nChange-Id: If6a91f26af17ae7510417eb0d65a79dc7ae2e04e\n"
    },
    {
      "commit": "1e9af0f339f50e72cd45f3c057a19b12df727e7a",
      "tree": "76c454bf516c5c700cf9998fcf51f73135ceedda",
      "parents": [
        "0f75a5a41680f3f5f4a77cc4d2e10d03f49898c0",
        "d9d9ee84661079e90de02acd06c5809c160814db"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jul 28 20:25:38 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jul 28 20:25:38 2021 +0000"
      },
      "message": "Merge \"Allow retry of test if log missing.\""
    },
    {
      "commit": "d9d9ee84661079e90de02acd06c5809c160814db",
      "tree": "76c454bf516c5c700cf9998fcf51f73135ceedda",
      "parents": [
        "0f75a5a41680f3f5f4a77cc4d2e10d03f49898c0"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jul 23 17:10:58 2021 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Jul 27 18:39:56 2021 -0700"
      },
      "message": "Allow retry of test if log missing.\n\nRefactor the code a bit to allow retrying if a log message is missing.\nThis is because there is a possibility of a log message getting dropped.\nIf that happens, merely rerun up to three times and pass if the missing\nmessage is present.\n\nAlso fix a race condition that can occur if the LogReader threads are\nbeing terminated but happen to be allocating memory while they are\nin the signal handler. This situation causes aborts in the memory\nallocator or a deadlock. Before this change, the verify_leak*\ntests would fail in less than twenty iterations. After, I could run\nfor hundreds of iterations.\n\nBug: 193898572\n\nTest: Ran unit tests in a loop.\nChange-Id: I0fb5beab6041dcf3e3fd19f6748bb20bb81a2506\n"
    },
    {
      "commit": "0f75a5a41680f3f5f4a77cc4d2e10d03f49898c0",
      "tree": "49efcee45d6c55a895faf33ba53533bfe7422c2f",
      "parents": [
        "a0f3478e75f50fafdd4a54acd8792ec08a11a7dd",
        "9db8f2bc8758432b5d7ae5975e14311dc1601ebe"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Tue Jul 27 16:41:30 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 27 16:41:30 2021 +0000"
      },
      "message": "Merge \"Fix GWP hooks not being restored, leading to crashes.\""
    },
    {
      "commit": "9db8f2bc8758432b5d7ae5975e14311dc1601ebe",
      "tree": "f47e2ce76ff58b06d06f8467238efc737ed57cab",
      "parents": [
        "98115b7494a96dd0b8e6ece7ff5e50704038c906"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Tue Jul 20 15:43:37 2021 +0100"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Tue Jul 27 13:00:23 2021 +0100"
      },
      "message": "Fix GWP hooks not being restored, leading to crashes.\n\nIf the DispatchReset fails, the subsequent iteration has the wrong\nidea of what the \"original\" table is, and if a subsequent DispatchReset\nsucceeds it unhooks them.\n\nRepro in https://r.android.com/1767868.\n\nBug: 193012939\nBug: 189776979\nChange-Id: Ie0644412291d3b53dcf89cdd056e542d32822975\n"
    },
    {
      "commit": "a0f3478e75f50fafdd4a54acd8792ec08a11a7dd",
      "tree": "c1f2de437bb8f11c4fc5f60d191d7564ab572bd3",
      "parents": [
        "e397e49aa73c4c21cb43c0b302d3df3a7b7fb944",
        "5d50dbb5f0bfb44708d2378abe4f1ff882983075"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Jul 26 19:31:54 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jul 26 19:31:54 2021 +0000"
      },
      "message": "Merge \"Export kernel headers for musl\""
    },
    {
      "commit": "5d50dbb5f0bfb44708d2378abe4f1ff882983075",
      "tree": "9d6009d607518a6ed4b577b662e112d53ef56566",
      "parents": [
        "3367bf341225650738fae5032d427e885e8cf3fd"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 29 11:35:29 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jul 23 15:01:58 2021 -0700"
      },
      "message": "Export kernel headers for musl\n\nMusl will reuse bionic\u0027s kernel headers.\n\nBug: 190084016\nTest: m libc_musl\nChange-Id: Ie750556f9a055984eb9bab41fa61faa965f037e5\n"
    },
    {
      "commit": "e397e49aa73c4c21cb43c0b302d3df3a7b7fb944",
      "tree": "c5e785479b81ee233d0ee42ab72a6e8345405b54",
      "parents": [
        "3367bf341225650738fae5032d427e885e8cf3fd",
        "4990c2dcbba84306064b3c9ffa148eafb06f73a3"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jul 23 21:53:32 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jul 23 21:53:32 2021 +0000"
      },
      "message": "Merge \"Read the log while test runs instead of after.\""
    },
    {
      "commit": "3367bf341225650738fae5032d427e885e8cf3fd",
      "tree": "5f0111f56e886bd5467a209ce9b6a3bf9f96df97",
      "parents": [
        "a67c7fdca8c7d079a8e7b1e4f69bb0e5463f72e6",
        "02f813703ae51a48ba562e9f9cb836f3850c85be"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 23 21:18:51 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jul 23 21:18:51 2021 +0000"
      },
      "message": "Merge \"Rename cc_object default_shared_libs to system_shared_libs\""
    },
    {
      "commit": "4990c2dcbba84306064b3c9ffa148eafb06f73a3",
      "tree": "aada3b5b511a31d6bb05af9e8fcf709c89aadade",
      "parents": [
        "a67c7fdca8c7d079a8e7b1e4f69bb0e5463f72e6"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 22 13:17:34 2021 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jul 23 11:48:29 2021 -0700"
      },
      "message": "Read the log while test runs instead of after.\n\nThese tests can be flaky if something is spamming the log and\nexpiring messages. Previously, the log wasn\u0027t read until the\nforked process was complete. Now, two threads are spawned right\nafter the process forks to read the log while running. This\nshould avoid any problems if the log is being spammed while the\ntest runs.\n\nIn addition, fixed some potential flakiness in the test that might\noccur if the test incorrectly gets stale log data.\n\nBug: 193898572\n\nTest: All unit tests pass on cuttlefish (both 32 bit and 64 bit).\nTest: Forced an abort and verified that the crash log reader sees\nTest: the message.\nTest: Verified that the log reader for the main and crash log properly\nTest: read data.\nTest: Verified the test passes while swamping the log by running\nTest: the log unit tests while running two copies of the system\nTest: tests.\nChange-Id: I68bd92a8c483eac0146ada87dd4201dda0902c49\n"
    },
    {
      "commit": "a67c7fdca8c7d079a8e7b1e4f69bb0e5463f72e6",
      "tree": "061844c307bc3899cbf7c8f5bcdb004faffce896",
      "parents": [
        "e780ad0c2467e2a982ea153053e23285983d073d",
        "4aebf552571b3baeb00748cf8a9001ba427f6eb9"
      ],
      "author": {
        "name": "Joel Galenson",
        "email": "jgalenson@google.com",
        "time": "Fri Jul 23 14:46:55 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jul 23 14:46:55 2021 +0000"
      },
      "message": "Merge changes from topic \"rust-property-bindings\"\n\n* changes:\n  Improve the Rust property bindings.\n  Migrate keystore2\u0027s Rust system library bindings to bionic.\n"
    },
    {
      "commit": "e780ad0c2467e2a982ea153053e23285983d073d",
      "tree": "3b70454810090db201429ab9335eb19e00fd459b",
      "parents": [
        "2ffa0eb7d3b6be955464f1fb95f1979dd5e46009",
        "5c49616f70907f7c312af0525cacb0f05373ebab"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jul 23 05:19:07 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jul 23 05:19:07 2021 +0000"
      },
      "message": "Merge \"Fix NOTICE file.\""
    },
    {
      "commit": "5c49616f70907f7c312af0525cacb0f05373ebab",
      "tree": "3b70454810090db201429ab9335eb19e00fd459b",
      "parents": [
        "2ffa0eb7d3b6be955464f1fb95f1979dd5e46009"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 22 22:26:28 2021 +0000"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 22 22:37:19 2021 +0000"
      },
      "message": "Fix NOTICE file.\n\nTest: Uploads.\nChange-Id: I23fb9413dd62aa06ffa26e5e7fc0f7e26fa8cde4\n"
    },
    {
      "commit": "02f813703ae51a48ba562e9f9cb836f3850c85be",
      "tree": "ca9c300da81ac49d3e336dbeb4fc1a5903f604cd",
      "parents": [
        "2ffa0eb7d3b6be955464f1fb95f1979dd5e46009"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Jul 22 12:02:10 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Jul 22 12:02:10 2021 -0700"
      },
      "message": "Rename cc_object default_shared_libs to system_shared_libs\n\ndefault_shared_libs has been removed, go back to the system_shared_libs\nproperty that now has the same behavior.\n\nBug: 193559105\nTest: m checkbuild\nChange-Id: I9edac93f7e6d9d4b99883b7a7b14ab52942c0ef2\n"
    },
    {
      "commit": "2ffa0eb7d3b6be955464f1fb95f1979dd5e46009",
      "tree": "1bb763b898b0a3166c61ce74dcfd64df9fc4d966",
      "parents": [
        "dc42a98763d954289cf3a20c0add90d0dca79c2e",
        "b5bfe0bd5128a263871fb918248e1a90d523ea49"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jul 22 17:44:32 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 22 17:44:32 2021 +0000"
      },
      "message": "Merge \"Move system_shared_libs into target.bionic clause\""
    },
    {
      "commit": "4aebf552571b3baeb00748cf8a9001ba427f6eb9",
      "tree": "1b5f5d56fbe0b36e8c3781761da13c657d61c36f",
      "parents": [
        "e1f1e79310e522ea627fc5c13d3a282b8d9b1010"
      ],
      "author": {
        "name": "Joel Galenson",
        "email": "jgalenson@google.com",
        "time": "Wed Jul 21 08:47:32 2021 -0700"
      },
      "committer": {
        "name": "Joel Galenson",
        "email": "jgalenson@google.com",
        "time": "Wed Jul 21 15:21:29 2021 -0700"
      },
      "message": "Improve the Rust property bindings.\n\nAdd a utility function to get the current value of a property and\nremove some keystore2-specific strings.\n\nBug: 182498247\nTest: Build\nChange-Id: Ie7e9903546a4d4cd6c54a118c42257a23510dda6\n"
    },
    {
      "commit": "e1f1e79310e522ea627fc5c13d3a282b8d9b1010",
      "tree": "7ade67223198f3097a74abba5a9e77b0a2e46cfa",
      "parents": [
        "dc42a98763d954289cf3a20c0add90d0dca79c2e"
      ],
      "author": {
        "name": "Joel Galenson",
        "email": "jgalenson@google.com",
        "time": "Tue Jul 20 12:49:59 2021 -0700"
      },
      "committer": {
        "name": "Joel Galenson",
        "email": "jgalenson@google.com",
        "time": "Wed Jul 21 15:21:27 2021 -0700"
      },
      "message": "Migrate keystore2\u0027s Rust system library bindings to bionic.\n\nThis is purely a port: it does not add or change any functionality\n(other than renaming the library).\n\nBug: 182498247\nTest: Use library.\nChange-Id: I4cb8f1c22ca4ca5a398116952fb9957d283d235b\n"
    },
    {
      "commit": "dc42a98763d954289cf3a20c0add90d0dca79c2e",
      "tree": "583a100d33a259d30cdc994bbf8375d86009b63b",
      "parents": [
        "98115b7494a96dd0b8e6ece7ff5e50704038c906",
        "8f14b650326b0276269d8c1fa657772bc5953f94"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 21 11:43:39 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jul 21 11:43:39 2021 +0000"
      },
      "message": "Merge changes from topic \"revert_sysprop_trace\"\n\n* changes:\n  Revert \"Adding system property tracing\"\n  Revert \"bionic_systrace: moving global static variables\"\n"
    },
    {
      "commit": "8f14b650326b0276269d8c1fa657772bc5953f94",
      "tree": "583a100d33a259d30cdc994bbf8375d86009b63b",
      "parents": [
        "13a960f0ed699137d305a55c2ae22d090b04a67d"
      ],
      "author": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Thu Jul 15 10:13:33 2021 +0000"
      },
      "committer": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Wed Jul 21 09:15:41 2021 +0800"
      },
      "message": "Revert \"Adding system property tracing\"\n\nRevert submission 1403568-sysprop_trace\n\nReason for revert: makes property get/set non-reentrant\nReverted Changes:\nI6f85f3f52:Add systrace tag for system property\nId2b93acb2:Adding system property tracing\nId78992d23:Add systrace tag for system property\nI1ba9fc7bd:Add systrace tag for system property\n\nBug: 193050299\nTest: build and boot a device\nChange-Id: Ic7a83fb01a39113d408ed0c95d27f694d5a2649c\nMerged-In: Ic7a83fb01a39113d408ed0c95d27f694d5a2649c\n(cherry picked from commit 61a5a8380d6417e9b85bb2f6a4a694ef4222031f)\n"
    },
    {
      "commit": "13a960f0ed699137d305a55c2ae22d090b04a67d",
      "tree": "2374eb11c851e991d002e496e4d678154e552630",
      "parents": [
        "98115b7494a96dd0b8e6ece7ff5e50704038c906"
      ],
      "author": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Thu Jul 15 09:46:53 2021 +0000"
      },
      "committer": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Wed Jul 21 09:10:41 2021 +0800"
      },
      "message": "Revert \"bionic_systrace: moving global static variables\"\n\nThis reverts commit 1e1c7845aab0542306f61d8e8c880aca096ea336.\n\nReason for revert: makes property get/set non-reentrant\n\nBug: 193050299\nTest: build and boot a device\nChange-Id: If59e3dc25684a3c2b1d3ff74f995311afe6c6e89\nMerged-In: If59e3dc25684a3c2b1d3ff74f995311afe6c6e89\n(cherry picked from commit 3ec21f527acbaefb5f7a114125bc7a93baa780c7)\n"
    },
    {
      "commit": "98115b7494a96dd0b8e6ece7ff5e50704038c906",
      "tree": "6badcd5a33ceebd727ae55f9ae4dfd09f35e948b",
      "parents": [
        "2e4be55966d0eb6d71260aa65b445141821644de",
        "a6035ecd416fc9e09098f5474df3a864d0e168c3"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jul 16 06:18:28 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jul 16 06:18:28 2021 +0000"
      },
      "message": "Merge \"Avoid undefined compiler behavior\""
    },
    {
      "commit": "a6035ecd416fc9e09098f5474df3a864d0e168c3",
      "tree": "6badcd5a33ceebd727ae55f9ae4dfd09f35e948b",
      "parents": [
        "2e4be55966d0eb6d71260aa65b445141821644de"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 15 12:58:07 2021 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 15 12:58:07 2021 -0700"
      },
      "message": "Avoid undefined compiler behavior\n\nThis is a follow-on to commit 5358cc40ab4288ed00c223f00cf898b7dc1a9484.\nI forgot that there were two places the undefined behavior could occur.\n\nMake the literal unsigned in the other place.\n\nTest: TreeHugger\nBug: 189541929\nChange-Id: Iaef81507ca61e802d277246bf5995157c93d86ce\n"
    },
    {
      "commit": "2e4be55966d0eb6d71260aa65b445141821644de",
      "tree": "c8792ad92e84eeecb98810615c012b82c8cd0941",
      "parents": [
        "48e981556ef0a2cfed18b716443c907f1843bc37",
        "5358cc40ab4288ed00c223f00cf898b7dc1a9484"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jul 15 18:55:52 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 15 18:55:52 2021 +0000"
      },
      "message": "Merge \"Avoid undefined compiler behavior\""
    },
    {
      "commit": "5358cc40ab4288ed00c223f00cf898b7dc1a9484",
      "tree": "c8792ad92e84eeecb98810615c012b82c8cd0941",
      "parents": [
        "48e981556ef0a2cfed18b716443c907f1843bc37"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Thu Jul 15 07:45:51 2021 -0700"
      },
      "committer": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Thu Jul 15 08:34:18 2021 -0700"
      },
      "message": "Avoid undefined compiler behavior\n\nTechnically, shifting a signed value beyond its maximum range is\nundefined behavior in C++.  A bare integer literal is signed, and\ndefaults to \u0027int\u0027.  On platforms where \u0027int\u0027 is 32-bits, we\nshift outside this range with 1 \u003c\u003c 31.\n\nWe make our literal an unsigned integer to avoid this.\n\nTest: TreeHugger\nBug: 189541929\n\nChange-Id: Iade1bcd3f86d025dd6e10c26622d10c26e2c8295\n"
    },
    {
      "commit": "48e981556ef0a2cfed18b716443c907f1843bc37",
      "tree": "945e893b2603dc994557de0f5657fe54a3579dd8",
      "parents": [
        "d8b97f48c103d9b65b328a8f7b8db662f8e964cd",
        "33d73379aad3ed7dcbb9b10f945d3bc6264b79bd"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 15 01:16:45 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 15 01:16:45 2021 +0000"
      },
      "message": "Merge \"Fix race when frees after main thread finishes.\""
    },
    {
      "commit": "d8b97f48c103d9b65b328a8f7b8db662f8e964cd",
      "tree": "0da3f62ffebb8d9bf42ec7ef4fbb79fd7c5a6458",
      "parents": [
        "829b84d2364a1fd62a7ad34acc82c5622229fba4",
        "d27506716af69ede1334cbd5163186c10ab56a0f"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jul 14 23:59:08 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jul 14 23:59:08 2021 +0000"
      },
      "message": "Merge \"Define sockaddr_storage in bionic\""
    },
    {
      "commit": "33d73379aad3ed7dcbb9b10f945d3bc6264b79bd",
      "tree": "66cd01c7e7f0a281ec4c0b3e18f5efb713d8ed62",
      "parents": [
        "829b84d2364a1fd62a7ad34acc82c5622229fba4"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Jul 02 15:46:18 2021 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jul 14 16:34:46 2021 -0700"
      },
      "message": "Fix race when frees after main thread finishes.\n\nWhen the main thread is exiting, the code deleted the g_debug global\npointer and destroys the disable pthread key. Unfortunately, if\nmalloc debug was enabled in a way that requires a header for the pointer,\nany frees that occur after the main thread is torn down result in calls\nto the underlying allocator with bad pointers.\nTo avoid this, don\u0027t delete the g_debug pointer and don\u0027t destroy the\ndisable pthread key.\n\nAdded a new system test that allocates a lot of pointers and frees them\nafter letting the main thread finish.\n\nAlso, fix one test that can fail sporadically due to a lack of unwinding\ninformation on arm32.\n\nBug: 189541929\n\nTest: Passes new system tests.\nChange-Id: I1cfe868987a8f0dc880a5b65de6709f44a5f1988\n"
    },
    {
      "commit": "d27506716af69ede1334cbd5163186c10ab56a0f",
      "tree": "583208d77fa67c8bb01c6b9f2e865163b90da725",
      "parents": [
        "a55c81e36eb251a9e4e23bd8bcd50307200ee845"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 29 12:52:26 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jul 14 14:20:36 2021 -0700"
      },
      "message": "Define sockaddr_storage in bionic\n\nBionic currently renames the kernel\u0027s __kernel_sockaddr_storage\nto sockaddr_storage.  We would like to reuse the bionic kernel\nheaders for musl, but musl defines its own sockaddr_storage,\ncausing redefinition errors when the musl and kernel headers\nare both included.\n\nGive bionic its own definition of sockaddr_storage so the kernel\none can be left as __kernel_sockaddr_storage, avoiding the\nconflict in musl.\n\nSome of the structs in netinet/in.h contain sockaddr_storage members.\nThere are definitions in linux/in.h, but they now use the\n__kernel_sockaddr_storage naming.  To avoid having to copy the structs\nfrom linux/in.h into netinet/in.h, add some #define hackery to\nrename __kernel_sockaddr_storage to sockaddr_storage when including\nlinux/in.h from netinet/in.h.\n\nBug: 190084016\nTest: m checkbuild\nTest: bionic-unit-tests\nChange-Id: I8f654511722b3a4a8e0bb146e4418ebcd370305c\n"
    },
    {
      "commit": "b5bfe0bd5128a263871fb918248e1a90d523ea49",
      "tree": "39363cfa37f32f17918489061d29f96f035af2be",
      "parents": [
        "a55c81e36eb251a9e4e23bd8bcd50307200ee845"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 13 16:26:28 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 13 16:26:28 2021 -0700"
      },
      "message": "Move system_shared_libs into target.bionic clause\n\nUse target.bionic.system_shared_libs when it is used to limit the\ndefault shared libraries (as opposed to remove them completely).\nThis avoids attempting to add a host dependency on libc when\nsystem_shared_libs is modified to apply to all variants.\n\nBug: 193559105\nTest: m checkbuild\nChange-Id: I8d623321ce5145cf2968f83f78b5cb50711290f4\n"
    },
    {
      "commit": "829b84d2364a1fd62a7ad34acc82c5622229fba4",
      "tree": "b9bb21e2616a2e6d79592355475ad0e705718b92",
      "parents": [
        "a55c81e36eb251a9e4e23bd8bcd50307200ee845",
        "ab1b143efa8e03e66e708636ac7214f5973c9239"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 13 16:37:32 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 13 16:37:32 2021 +0000"
      },
      "message": "Merge \"Remove obsolete visibility entries from libc_headers\""
    },
    {
      "commit": "a55c81e36eb251a9e4e23bd8bcd50307200ee845",
      "tree": "d15a51c58eca1f6d7d54091f2c49df0c79209c6f",
      "parents": [
        "df901df77ae79d068d83ea388917805e8bcb97f6",
        "53df1f3772ad4843461e78540111b21e9061c051"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Tue Jul 13 01:37:06 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 13 01:37:06 2021 +0000"
      },
      "message": "Merge \"Make MTE tests pass with all values of MEMTAG_OPTIONS.\""
    },
    {
      "commit": "53df1f3772ad4843461e78540111b21e9061c051",
      "tree": "f43d0cf9b5f14461f63e624d3dcd11cf7669b743",
      "parents": [
        "2ef1cd3f4430d344d88f1275b850119dc963cfa1"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Mon Jul 12 14:44:02 2021 -0700"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Mon Jul 12 16:33:26 2021 -0700"
      },
      "message": "Make MTE tests pass with all values of MEMTAG_OPTIONS.\n\nDo not assume that tests start with Sync MTE; check the initial setting\nand change test logic as appropriate.\n\nBug: 192480262\nTest: bionic-unit-tests with MEMTAG_OPTIONS\u003d(off|sync|async)\nChange-Id: Id80301e6426af16f89bd80a7a7ab127b6fd60425\n"
    },
    {
      "commit": "df901df77ae79d068d83ea388917805e8bcb97f6",
      "tree": "bfd4ce26d4c6190787234f5ef742eb3cef823447",
      "parents": [
        "2ef1cd3f4430d344d88f1275b850119dc963cfa1",
        "68ec53e141d643068e99950db054e139077dae9a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 12 23:13:59 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jul 12 23:13:59 2021 +0000"
      },
      "message": "Merge \"Support replacing nested kernel structs\""
    },
    {
      "commit": "ab1b143efa8e03e66e708636ac7214f5973c9239",
      "tree": "19ea6b1d7a73b80c37619609dcd15bf00fc8000c",
      "parents": [
        "2ef1cd3f4430d344d88f1275b850119dc963cfa1"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Jul 12 15:57:01 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Jul 12 15:57:01 2021 -0700"
      },
      "message": "Remove obsolete visibility entries from libc_headers\n\ncc_objects get libc headers by default now unless they opt out through\nsystem_shared_libs: [] or default_shared_libs: [], so they no longer\nneed explicit visibility.\n\nFixes: b/153662223\nTest: m nothing\nChange-Id: Ib61a597cbfee4616a632abdfbf4b4f108d35c2b6\n"
    },
    {
      "commit": "2ef1cd3f4430d344d88f1275b850119dc963cfa1",
      "tree": "681b4b52627e62b5d9bcb1d4b868ec9eb32db2ae",
      "parents": [
        "7332139c65ef2361f2e9c90f4cff386cf4735b65",
        "48bf46b968c37cbd76ecd33c98c0f163134beadf"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 02 17:58:43 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jul 02 17:58:43 2021 +0000"
      },
      "message": "Merge \"Allow the kernel to upgrade ASYNC mode processes to SYNC mode.\""
    },
    {
      "commit": "48bf46b968c37cbd76ecd33c98c0f163134beadf",
      "tree": "9990b32772203f1424eb4360bc8c814c9587609a",
      "parents": [
        "921b3a4642c2d24e7580ae542ff10e0319a2453d"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Thu Jul 01 15:16:40 2021 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Thu Jul 01 15:39:32 2021 -0700"
      },
      "message": "Allow the kernel to upgrade ASYNC mode processes to SYNC mode.\n\nOn devices where the performance of ASYNC mode is similar to SYNC\nmode on certain CPUs, OEMs may choose to configure the kernel to\nprefer SYNC mode on those CPUs by writing the value \"sync\" to the\nsysfs node: /sys/devices/system/cpu/cpu\u003cN\u003e/mte_tcf_preferred\n\nThe kernel will only respect the per-CPU preference if the user program\nallows this by specifying the preferred mode as a member of a set of\nallowed modes. Since only kernels with r.android.com/1754670 support\nspecifying multiple modes, fall back to trying to specify a single\nmode if that doesn\u0027t work.\n\nBug: 189966263\nChange-Id: Ie7ada3b073178b7967f0819cbdadc2d8e3a2c648\n"
    },
    {
      "commit": "7332139c65ef2361f2e9c90f4cff386cf4735b65",
      "tree": "1729f83bdef6536eb0dc3b0c46c342511e75bc7d",
      "parents": [
        "30782aa99ba8101b47a213f7333670da73884162",
        "10d9268676036f6a7aa78390dc70b3b0bfda3dbe"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Jul 01 19:00:40 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 01 19:00:40 2021 +0000"
      },
      "message": "Merge \"Add default_shared_libs to crt objects\""
    },
    {
      "commit": "30782aa99ba8101b47a213f7333670da73884162",
      "tree": "8c63eb0b11a5486a64c5f1537c5f8da53cc0ffb6",
      "parents": [
        "b4b3166d7b3a8457c22f9d0bf3e4feff5514d64d",
        "fcc3b4f45d2ce70bfd0201ebd300ff146e465f73"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 01 16:54:38 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jul 01 16:54:38 2021 +0000"
      },
      "message": "Merge \"Update to v5.13 kernel headers.\""
    },
    {
      "commit": "fcc3b4f45d2ce70bfd0201ebd300ff146e465f73",
      "tree": "8c63eb0b11a5486a64c5f1537c5f8da53cc0ffb6",
      "parents": [
        "b4b3166d7b3a8457c22f9d0bf3e4feff5514d64d"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 01 01:30:21 2021 +0000"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jul 01 01:30:21 2021 +0000"
      },
      "message": "Update to v5.13 kernel headers.\n\nKernel headers coming from:\n\nGit: https://android.googlesource.com/kernel/common/\nBranch: android-mainline\nTag: android-mainline-5.13\n\nTest: Builds, bionic unit tests.\nChange-Id: Ia4360ca4a2808206f64187dcb234d73c5752624b\n"
    },
    {
      "commit": "68ec53e141d643068e99950db054e139077dae9a",
      "tree": "69712d5bf30197b52192131d55bfe81473450b0e",
      "parents": [
        "b4b3166d7b3a8457c22f9d0bf3e4feff5514d64d"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 29 14:13:02 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 29 14:22:30 2021 -0700"
      },
      "message": "Support replacing nested kernel structs\n\nWhen replacing structs with bits/ includes, count the number of\nopening and closing braces to find the end of the struct.\n\nTest: tools/update_all.py\nChange-Id: Ic9712a385da517710ceffccbdb223c89ae0b5f65\n"
    },
    {
      "commit": "b4b3166d7b3a8457c22f9d0bf3e4feff5514d64d",
      "tree": "923bf9437f3b4d2e759b73c4589d38b274a3838f",
      "parents": [
        "d17cf31a927f92ac42f8567dd7dd647279ccdae6",
        "79dbdc3c22d924540c86ed4ea5a7a6945392760b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 25 20:04:28 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 25 20:04:28 2021 +0000"
      },
      "message": "Merge \"Document more clearly that we don\u0027t plan on using faccessat2(2).\""
    },
    {
      "commit": "79dbdc3c22d924540c86ed4ea5a7a6945392760b",
      "tree": "75b1760093a436b58f804a0a7535e0d94d740e4c",
      "parents": [
        "58679c8d6aefb9ce7663665cbc1a676a0a976139"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 25 09:16:18 2021 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 25 09:16:18 2021 -0700"
      },
      "message": "Document more clearly that we don\u0027t plan on using faccessat2(2).\n\nTest: treehugger\nChange-Id: Idea76ab97865bf26c1f6b16200ba2c7d1fe50ee8\n"
    },
    {
      "commit": "d17cf31a927f92ac42f8567dd7dd647279ccdae6",
      "tree": "9bfe2c2241f00589251ea5a904505c24faf7d7ad",
      "parents": [
        "58679c8d6aefb9ce7663665cbc1a676a0a976139",
        "a9d0c104a6da1c17c24d1347688ade7e67f96a16"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 25 00:16:40 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 25 00:16:40 2021 +0000"
      },
      "message": "Merge \"Stop documenting native_heapdump_viewer.\""
    },
    {
      "commit": "a9d0c104a6da1c17c24d1347688ade7e67f96a16",
      "tree": "9bfe2c2241f00589251ea5a904505c24faf7d7ad",
      "parents": [
        "58679c8d6aefb9ce7663665cbc1a676a0a976139"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 24 15:48:31 2021 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 24 15:48:31 2021 -0700"
      },
      "message": "Stop documenting native_heapdump_viewer.\n\n...since we\u0027re removing it anyway.\n\nWe recommend Perfetto instead.\n\nBug: https://github.com/android/ndk/issues/435\nTest: treehugger\nChange-Id: If932646d869f7df6bbe147b5dce49abdd9f31612\n"
    },
    {
      "commit": "58679c8d6aefb9ce7663665cbc1a676a0a976139",
      "tree": "514adfe43c69807f2d147f21b094336073fc7857",
      "parents": [
        "e772804d1542632ba35640cb83b50f973eaed25c",
        "d8d561c98457409c0003b37b9c1f84bb7d988e04"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Thu Jun 24 18:48:55 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 24 18:48:55 2021 +0000"
      },
      "message": "Merge \"Add definition of M_MEMTAG_TUNING.\""
    },
    {
      "commit": "d8d561c98457409c0003b37b9c1f84bb7d988e04",
      "tree": "514adfe43c69807f2d147f21b094336073fc7857",
      "parents": [
        "e772804d1542632ba35640cb83b50f973eaed25c"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Tue Jun 22 10:18:12 2021 -0700"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Thu Jun 24 01:21:00 2021 +0000"
      },
      "message": "Add definition of M_MEMTAG_TUNING.\n\nBug: 191769584\nTest: N/A\nChange-Id: Ief77f95a04411528563787a9fc6d10738fc5688f\n"
    },
    {
      "commit": "10d9268676036f6a7aa78390dc70b3b0bfda3dbe",
      "tree": "5cdeae097046e09b04a92a668a801898e743ea51",
      "parents": [
        "80c506f854945f86c4bff99688f26b8857b6bbb2"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jun 22 13:25:46 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 23 16:44:57 2021 -0700"
      },
      "message": "Add default_shared_libs to crt objects\n\ncc_object modules will now honor the default_shared_libs, override\nit to empty to avoid circular dependencies.\n\nBug: 153662223\nTest: m checkbuild\nChange-Id: I02dd9510fcc0b6bf724d9cdd7c3e80c08430a7b9\n"
    },
    {
      "commit": "e772804d1542632ba35640cb83b50f973eaed25c",
      "tree": "e8baad7cb492f5e3f0dac97da8168aec6c16b64e",
      "parents": [
        "80c506f854945f86c4bff99688f26b8857b6bbb2",
        "40c8a8b1ba7f6890709526cb2463fe19f3139b31"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jun 23 15:32:34 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 23 15:32:34 2021 +0000"
      },
      "message": "Merge \"Extend \u003csys/sysinfo.h\u003e tests slightly.\""
    },
    {
      "commit": "40c8a8b1ba7f6890709526cb2463fe19f3139b31",
      "tree": "fd8b48fc689e73d79cb118cba5e625038a1b7897",
      "parents": [
        "39259a9b19d82fe0eda96d9803872fb9c38a9629"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 21 13:12:52 2021 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 21 16:50:13 2021 -0700"
      },
      "message": "Extend \u003csys/sysinfo.h\u003e tests slightly.\n\nWe know game developers (and the Games SDK) look at this stuff, so make\na bit more of an effort to ensure it\u0027s not completely broken.\n\nTest: treehugger\nChange-Id: I20b1c167faa1d9f4f39a94a723dabb848ce34269\n"
    },
    {
      "commit": "80c506f854945f86c4bff99688f26b8857b6bbb2",
      "tree": "b704864b4d2d154fa5b199651a2643c5842b0afd",
      "parents": [
        "224ce15c0bec5c88ae904510b495680941ee5839",
        "5ebdeb30ab855514a072db08d26328302d37a3db"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 18 02:28:17 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Jun 18 02:28:17 2021 +0000"
      },
      "message": "Merge \"Improve the \u003csys/select.h\u003e docs.\" am: 5ebdeb30ab\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1740159\n\nChange-Id: If43a2586f6245318d6f9267a8d58ed8c46b8bd8c\n"
    },
    {
      "commit": "5ebdeb30ab855514a072db08d26328302d37a3db",
      "tree": "b704864b4d2d154fa5b199651a2643c5842b0afd",
      "parents": [
        "224ce15c0bec5c88ae904510b495680941ee5839",
        "c849ef106372702bee54df06b2d7569a3055cfa1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 18 01:57:05 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 18 01:57:05 2021 +0000"
      },
      "message": "Merge \"Improve the \u003csys/select.h\u003e docs.\""
    },
    {
      "commit": "c849ef106372702bee54df06b2d7569a3055cfa1",
      "tree": "b704864b4d2d154fa5b199651a2643c5842b0afd",
      "parents": [
        "39259a9b19d82fe0eda96d9803872fb9c38a9629"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 17 14:41:29 2021 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 17 14:41:29 2021 -0700"
      },
      "message": "Improve the \u003csys/select.h\u003e docs.\n\nTest: treehugger\nChange-Id: I00fc6aededc20e89fb46d8dc033bdcb0530a8052\n"
    },
    {
      "commit": "224ce15c0bec5c88ae904510b495680941ee5839",
      "tree": "968b8741f4210d076bb24ce20d0b876ea1ec3698",
      "parents": [
        "d43c3ea0c8294044b7fc8eae872e199254ede4c9",
        "39259a9b19d82fe0eda96d9803872fb9c38a9629"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 16 17:03:59 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jun 16 17:03:59 2021 +0000"
      },
      "message": "Merge \"Remove host_bionic_inject\" am: 39259a9b19\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1735414\n\nChange-Id: I7dd2d3be50d3645b68434c46a895547c27d44462\n"
    },
    {
      "commit": "39259a9b19d82fe0eda96d9803872fb9c38a9629",
      "tree": "968b8741f4210d076bb24ce20d0b876ea1ec3698",
      "parents": [
        "c8b02e3becc4dd2abecb2a337e0ca79793a6676f",
        "331b3887f487c19eed84d4bfe3174e9191d199bd"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 16 16:50:05 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 16 16:50:05 2021 +0000"
      },
      "message": "Merge \"Remove host_bionic_inject\""
    },
    {
      "commit": "d43c3ea0c8294044b7fc8eae872e199254ede4c9",
      "tree": "948c4599cfc178b2f6a18f6a27d7537fad3e20ac",
      "parents": [
        "d87147644cfa3fce12fbc93bb37d57d6778d9e05",
        "c8b02e3becc4dd2abecb2a337e0ca79793a6676f"
      ],
      "author": {
        "name": "Nikita Ioffe",
        "email": "ioffe@google.com",
        "time": "Tue Jun 15 00:00:22 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Jun 15 00:00:22 2021 +0000"
      },
      "message": "Merge \"Explicitly set generate_hashtree: false\" am: c8b02e3bec\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1737093\n\nChange-Id: If976b2740e65e055c2726f80a0087c211ec62083\n"
    },
    {
      "commit": "c8b02e3becc4dd2abecb2a337e0ca79793a6676f",
      "tree": "948c4599cfc178b2f6a18f6a27d7537fad3e20ac",
      "parents": [
        "34fead98cbd439fd79f30cc733437b6f5d34be98",
        "8f537e87621159b41a05c93c9a8caf09dd2261ad"
      ],
      "author": {
        "name": "Nikita Ioffe",
        "email": "ioffe@google.com",
        "time": "Mon Jun 14 23:45:23 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 14 23:45:23 2021 +0000"
      },
      "message": "Merge \"Explicitly set generate_hashtree: false\""
    },
    {
      "commit": "8f537e87621159b41a05c93c9a8caf09dd2261ad",
      "tree": "948c4599cfc178b2f6a18f6a27d7537fad3e20ac",
      "parents": [
        "34fead98cbd439fd79f30cc733437b6f5d34be98"
      ],
      "author": {
        "name": "Nikita Ioffe",
        "email": "ioffe@google.com",
        "time": "Mon Jun 14 22:13:42 2021 +0100"
      },
      "committer": {
        "name": "Nikita Ioffe",
        "email": "ioffe@google.com",
        "time": "Mon Jun 14 22:13:42 2021 +0100"
      },
      "message": "Explicitly set generate_hashtree: false\n\nNon-updatable APEXes are going to be only present on a dm-verity\nprotected read-only partition. For such APEXes there is no need in\nembedding a hashtree.\n\nThis is a no-op change in preparation of switching default value of\ngenerate_hashtree to true.\n\nBug: 190621617\nTest: m\nChange-Id: I426c1fce37ce63200810d69092660644e13291c2\n"
    }
  ],
  "next": "d87147644cfa3fce12fbc93bb37d57d6778d9e05"
}
