)]}'
{
  "log": [
    {
      "commit": "ccf17f0ec709b67c8a554e2d87cb02522eb39d6b",
      "tree": "74b1044ed955a918c8d40a4efb67b8be898fa1e4",
      "parents": [
        "925431a072737d4c1bbf18f3da7ab24a25486870"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Dec 03 18:18:52 2020 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Dec 03 18:18:52 2020 -0800"
      },
      "message": "Clean up header files from kernel directory.\n\nAdd a make distclean for each supported arch before generating headers\nand at the end so these files are not left hanging around in the\nkernel directory.\n\nBug: 174795055\n\nTest: Verified all generated files are deleted after running.\nTest: Verified this generates the exact same files as before this change.\nChange-Id: I0f66f580af2ea50c190eb532032017e782d7cae6\n"
    },
    {
      "commit": "925431a072737d4c1bbf18f3da7ab24a25486870",
      "tree": "409d9ef9dc9c1bf9f4b344534eadc01437860f33",
      "parents": [
        "4984bda13e253f0008e26188a0f4147920e75036",
        "2210b8d542113c76e24d6ce99d292f87d337b12d"
      ],
      "author": {
        "name": "Mitch Phillips",
        "email": "mitchp@google.com",
        "time": "Tue Dec 01 19:05:35 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 01 19:05:35 2020 +0000"
      },
      "message": "Merge \"[Tagged Pointers] Allow probing the current TP level w/ locking.\""
    },
    {
      "commit": "4984bda13e253f0008e26188a0f4147920e75036",
      "tree": "1cc46835801c1bcddbe28a33682c3eb996210069",
      "parents": [
        "1e32ae2da25876a64f6f69a802c7fa2c290fcc00",
        "d994cd73496ed7ce2561143242782a186dca6d2a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Dec 01 18:30:28 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 01 18:30:28 2020 +0000"
      },
      "message": "Merge \"Revert^3 \"Soft-enables new MAC address restrictions.\"\""
    },
    {
      "commit": "d994cd73496ed7ce2561143242782a186dca6d2a",
      "tree": "ec71dd4be0fc0c7ca7917f3b2f968f2346827f07",
      "parents": [
        "53211a98dc902a1cc7a24477169dd65a06779473"
      ],
      "author": {
        "name": "Bram Bonné",
        "email": "brambonne@google.com",
        "time": "Tue Dec 01 10:00:55 2020 +0000"
      },
      "committer": {
        "name": "Bram Bonné",
        "email": "brambonne@google.com",
        "time": "Tue Dec 01 10:04:02 2020 +0000"
      },
      "message": "Revert^3 \"Soft-enables new MAC address restrictions.\"\n\n53211a98dc902a1cc7a24477169dd65a06779473\n\nRevert submission 1498525-revert-1499099-revert-1450615-mac-address-restrictions-MNRMVNXRJM-OSETMCLBXY\n\nReason for revert: b/173384499#comment21\nReverted Changes:\nI320d3bcf8:Revert^2 \"Enforce RTM_GETLINK restrictions on all ...\nI51c83733c:Revert^2 \"Return anonymized MAC for apps targeting...\nI0e8280c74:Revert \"Revert \"Updates tests for untrusted app MA...\nIa9f61819f:Revert^2 \"Soft-enables new MAC address restriction...\n\nChange-Id: I03a78644105f561a3b704deaf7333be683ecb9f7\n"
    },
    {
      "commit": "2210b8d542113c76e24d6ce99d292f87d337b12d",
      "tree": "409d9ef9dc9c1bf9f4b344534eadc01437860f33",
      "parents": [
        "50a7621b3fc493ffbb72aa23e29a4f1727dc1f51"
      ],
      "author": {
        "name": "Mitch Phillips",
        "email": "mitchp@google.com",
        "time": "Wed Nov 25 16:48:54 2020 -0800"
      },
      "committer": {
        "name": "Mitch Phillips",
        "email": "mitchp@google.com",
        "time": "Mon Nov 30 10:49:03 2020 -0800"
      },
      "message": "[Tagged Pointers] Allow probing the current TP level w/ locking.\n\naosp/1484976 introduced a breaking change where\nDisableMemoryMitigations() now indiscriminately turns tagged pointers\noff. When android_mallopt(M_DISABLE_MEMORY_MITIGATIONS) is called, the\ncorrect behaviour is:\n - In SYNC/ASYNC MTE mode -\u003e disable all tagged pointers.\n - If all tagged pointers are already disabled -\u003e nop.\n - If we\u0027re in TBI mode -\u003e nop (keep the TBI mode as-is).\n\nIn order to do that we have to allow probing of the current heap tagging\nmode. In order to prevent TOCTOU between GetHeapTaggingLevel() and\nSetHeapTaggingLevel(), we expose a global mutex that should be held when\ncalling these functions.\n\nBug: 174263432\nTest: atest CtsTaggingHostTestCases on Flame\nChange-Id: Ia96f7269d542c9041270458806aee36766d2fbbb\n"
    },
    {
      "commit": "1e32ae2da25876a64f6f69a802c7fa2c290fcc00",
      "tree": "6653c02f1fb19f4a3e3ca5b87f9bda34dd0d1e63",
      "parents": [
        "50a7621b3fc493ffbb72aa23e29a4f1727dc1f51",
        "53211a98dc902a1cc7a24477169dd65a06779473"
      ],
      "author": {
        "name": "Bram Bonné",
        "email": "brambonne@google.com",
        "time": "Wed Nov 25 09:59:25 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 25 09:59:25 2020 +0000"
      },
      "message": "Merge \"Revert^2 \"Soft-enables new MAC address restrictions.\"\""
    },
    {
      "commit": "50a7621b3fc493ffbb72aa23e29a4f1727dc1f51",
      "tree": "1cc46835801c1bcddbe28a33682c3eb996210069",
      "parents": [
        "097846e25b32b566100b2f377fe6d120efb04b75",
        "742a003db6bf6eacb7cab12b96a4fac03d8bd4da"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 20 04:19:54 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 20 04:19:54 2020 +0000"
      },
      "message": "Merge \"[GWP-ASan] Remove include.\""
    },
    {
      "commit": "742a003db6bf6eacb7cab12b96a4fac03d8bd4da",
      "tree": "1cc46835801c1bcddbe28a33682c3eb996210069",
      "parents": [
        "097846e25b32b566100b2f377fe6d120efb04b75"
      ],
      "author": {
        "name": "Mitch Phillips",
        "email": "mitchp@google.com",
        "time": "Thu Nov 19 16:01:14 2020 -0800"
      },
      "committer": {
        "name": "Mitch Phillips",
        "email": "mitchp@google.com",
        "time": "Thu Nov 19 16:01:14 2020 -0800"
      },
      "message": "[GWP-ASan] Remove include.\n\nUnnecessary include, and the file was deleted with upstream changes.\n\nBug: N/A\nTest: cd external/gwp_asan \u0026\u0026 atest\nChange-Id: Id8facff0c5e382aa639ce158b7b5862ce157aa25\n"
    },
    {
      "commit": "097846e25b32b566100b2f377fe6d120efb04b75",
      "tree": "c05ec280eb91589f986384f74a83c95d009fc7de",
      "parents": [
        "92b8588f17b563bac398b5c3d9f69875d116911f",
        "9eb85bf70ccad3b80a7e9fb25ff1be017e71205d"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Nov 18 20:57:36 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 18 20:57:36 2020 +0000"
      },
      "message": "Merge \"Change the android_mallopt(M_SET_HEAP_TAGGING_LEVEL) API.\""
    },
    {
      "commit": "9eb85bf70ccad3b80a7e9fb25ff1be017e71205d",
      "tree": "21ca8edc983eb615924abbc7e5f75fd35dc7a91e",
      "parents": [
        "7433096f06a22522c1723b6fef71fdea0f5eba96"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Nov 02 13:35:28 2020 -0800"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Nov 18 10:24:29 2020 -0800"
      },
      "message": "Change the android_mallopt(M_SET_HEAP_TAGGING_LEVEL) API.\n\n- Make it apply to every thread, and thus remove the restriction\n  that it must be called while the program is single threaded.\n- Make it change TCF0 itself (on all threads), instead of requiring\n  callers to do it themselves, which can be error prone.\n\nAnd update all of the call sites.\n\nChange the implementation of\nandroid_mallopt(M_DISABLE_MEMORY_MITIGATIONS) to call\nandroid_mallopt(M_SET_HEAP_TAGGING_LEVEL) internally. This avoids\ncrashes during startup that were observed when the two mallopts\nupdated TCF0 unaware of each other.\n\nI wouldn\u0027t expect there to be any out-of-tree callers at this point,\nbut it\u0027s worth noting that the new interface is backwards compatible\nwith the old one because it strictly expands the set of situations in\nwhich the API can be used (i.e. situations where there are multiple\nthreads running or where TCF0 hadn\u0027t been updated beforehand).\n\nBug: 135772972\nChange-Id: I7746707898ff31ef2e0af01c4f55ba90b72bef51\n"
    },
    {
      "commit": "53211a98dc902a1cc7a24477169dd65a06779473",
      "tree": "0e0ccfce4ab8015ca5efc70b7171ea71ce7b439f",
      "parents": [
        "259776d8ffcb64679e9c8d3459c2ec3a68a9e061"
      ],
      "author": {
        "name": "Bram Bonné",
        "email": "brambonne@google.com",
        "time": "Mon Nov 16 10:19:34 2020 +0000"
      },
      "committer": {
        "name": "Bram Bonné",
        "email": "brambonne@google.com",
        "time": "Mon Nov 16 12:53:49 2020 +0000"
      },
      "message": "Revert^2 \"Soft-enables new MAC address restrictions.\"\n\n259776d8ffcb64679e9c8d3459c2ec3a68a9e061\n\nThe original change was reverted due to InterfaceParamsTest failing.\nThis test has now been fixed in r.android.com/1498525.\nThe original change message is below.\n\nUpdates getifaddrs() to behave as if RTM_GETLINK requests are not\nallowed for non-system apps. This is different from previous behavior,\nwhere apps targeting an API level \u003c 30 were exempted from this\nrestriction.\n\nActual enforcement happens in SELinux. This change:\n- Soft-enables the behavior until SELinux changes are in place\n- Prevents logspam from SELinux denials after they are in place\n\nBug: 170188668\nTest: atest bionic-unit-tests-static\nTest: atest NetworkInterfaceTest\nTest: Connect to Wi-Fi network\nTest: Call getifaddrs() directly from within an app.\nTest: Call NetworkInterface#getNetworkInterfaces() from within an app.\n\nChange-Id: Ia9f61819f8fdf878c0e67e57de7e893fb3b1c233\n"
    },
    {
      "commit": "92b8588f17b563bac398b5c3d9f69875d116911f",
      "tree": "a1fd3cbcfa12b4cd72ed04a858c9d2c850bb6960",
      "parents": [
        "7433096f06a22522c1723b6fef71fdea0f5eba96",
        "259776d8ffcb64679e9c8d3459c2ec3a68a9e061"
      ],
      "author": {
        "name": "Tej Singh",
        "email": "singhtejinder@google.com",
        "time": "Sat Nov 14 01:59:33 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Nov 14 01:59:33 2020 +0000"
      },
      "message": "Merge \"Revert \"Soft-enables new MAC address restrictions.\"\""
    },
    {
      "commit": "259776d8ffcb64679e9c8d3459c2ec3a68a9e061",
      "tree": "ec71dd4be0fc0c7ca7917f3b2f968f2346827f07",
      "parents": [
        "18286ed4659a7796cce9d5e44dd4791f4225b89c"
      ],
      "author": {
        "name": "Tej Singh",
        "email": "singhtejinder@google.com",
        "time": "Fri Nov 13 22:27:15 2020 +0000"
      },
      "committer": {
        "name": "Tej Singh",
        "email": "singhtejinder@google.com",
        "time": "Fri Nov 13 22:27:15 2020 +0000"
      },
      "message": "Revert \"Soft-enables new MAC address restrictions.\"\n\nRevert \"Enforce RTM_GETLINK restrictions on all 3p apps\"\n\nRevert \"Updates tests for untrusted app MAC address restrictions\"\n\nRevert submission 1450615-mac-address-restrictions\n\nReason for revert: DroidMonitor: Potential culprit for Bug 173243616 - verifying through Forrest before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted\n\nReverted Changes:\nI08c709b2b:Enforce RTM_GETLINK restrictions on all 3p apps\nI95d124ae8:Soft-enables new MAC address restrictions.\nI5392f8339:Updates tests for untrusted app MAC address restri...\nI9d214c5d0:Return anonymized MAC for apps targeting SDK \u003c 30\n\nChange-Id: If09920b24370077d647d60cfda7fc0a110b77851\n"
    },
    {
      "commit": "7433096f06a22522c1723b6fef71fdea0f5eba96",
      "tree": "b8135c08e8a16a9489a98b934c5109fdb80ba594",
      "parents": [
        "8037f54614ab60f2d91371f1647c4a055c86f23c",
        "18286ed4659a7796cce9d5e44dd4791f4225b89c"
      ],
      "author": {
        "name": "Bram Bonné",
        "email": "brambonne@google.com",
        "time": "Thu Nov 12 17:07:11 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 12 17:07:11 2020 +0000"
      },
      "message": "Merge \"Soft-enables new MAC address restrictions.\""
    },
    {
      "commit": "8037f54614ab60f2d91371f1647c4a055c86f23c",
      "tree": "a1fd3cbcfa12b4cd72ed04a858c9d2c850bb6960",
      "parents": [
        "f4afda9773871ce22eacc99c52cfb0a871b6fc04",
        "869a0faf2154eb433092770ed98830a8be4cf1b3"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 11 23:43:57 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 11 23:43:57 2020 +0000"
      },
      "message": "Merge \"Add \"product_available\" to product available modules\""
    },
    {
      "commit": "869a0faf2154eb433092770ed98830a8be4cf1b3",
      "tree": "a1fd3cbcfa12b4cd72ed04a858c9d2c850bb6960",
      "parents": [
        "f4afda9773871ce22eacc99c52cfb0a871b6fc04"
      ],
      "author": {
        "name": "Justin Yun",
        "email": "justinyun@google.com",
        "time": "Wed Nov 11 15:16:11 2020 +0900"
      },
      "committer": {
        "name": "Justin Yun",
        "email": "justinyun@google.com",
        "time": "Wed Nov 11 15:29:47 2020 +0900"
      },
      "message": "Add \"product_available\" to product available modules\n\n\"vendor_available\" modules were available to product modules.\nHowever, not all \"vendor_available\" modules are required to be\navailable to product modules. Some modules want to be available only\nto product modules but not vendor modules.\n\nTo cover the requirement, we separate \"product_available\" from\n\"vendor_available\".\n\"vendor_available\" will not provide product available module.\n\nBug: 150902910\nTest: build\nChange-Id: I13b8222e191333c6c2cb7794ef3344fdcc6ebe98\n"
    },
    {
      "commit": "f4afda9773871ce22eacc99c52cfb0a871b6fc04",
      "tree": "780632a0fdc2d4e507ec8fa8968d54a2717417a5",
      "parents": [
        "6fc751cca894fb496fb5d854260151bf443229ac",
        "8589e0909ca11d27efb51d8044b2da94bc1abab8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 10 23:37:43 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 10 23:37:43 2020 +0000"
      },
      "message": "Merge \"Disable failing test __cxa_demangle#cxa_demangle_fuzz_167977068.\""
    },
    {
      "commit": "8589e0909ca11d27efb51d8044b2da94bc1abab8",
      "tree": "780632a0fdc2d4e507ec8fa8968d54a2717417a5",
      "parents": [
        "6fc751cca894fb496fb5d854260151bf443229ac"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 10 11:31:51 2020 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 10 11:31:51 2020 -0800"
      },
      "message": "Disable failing test __cxa_demangle#cxa_demangle_fuzz_167977068.\n\nNot sure what the problem is yet, and can\u0027t guarantee I\u0027ll have time to\nlook this week, so let\u0027s disable this for now...\n\nBug: http://b/172465723\nTest: treehugger\nChange-Id: I052c2ed876504581cb89e49f1c65c3232d213eb5\n"
    },
    {
      "commit": "6fc751cca894fb496fb5d854260151bf443229ac",
      "tree": "0290f0061f2bb96a5d4a3ceaed73b72bbc7b9ab8",
      "parents": [
        "55180dda00210f90446ce0be87f0deeb9a0cbca7",
        "658b938700c7c9c7aed17c30863c6cd7219d899b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 09 21:35:43 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 09 21:35:43 2020 +0000"
      },
      "message": "Merge \"linker: add ld.config.txt parse time to systrace.\""
    },
    {
      "commit": "658b938700c7c9c7aed17c30863c6cd7219d899b",
      "tree": "0290f0061f2bb96a5d4a3ceaed73b72bbc7b9ab8",
      "parents": [
        "55180dda00210f90446ce0be87f0deeb9a0cbca7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Nov 06 09:27:36 2020 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Nov 06 09:28:16 2020 -0800"
      },
      "message": "linker: add ld.config.txt parse time to systrace.\n\nBug: http://b/172640358\nTest: treehugger\nChange-Id: I9d6b7c1e200d2effb737508d3c282063edefa888\n"
    },
    {
      "commit": "55180dda00210f90446ce0be87f0deeb9a0cbca7",
      "tree": "e08aad84c5351b3e5acf46098536a096b9ba3cba",
      "parents": [
        "56f1c406a5d5ac8068b9c0092eada0aae2d7c77d",
        "f266f26cb74a469dbfd9a899ebf8b9b92b59868a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 06 17:02:22 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 06 17:02:22 2020 +0000"
      },
      "message": "Merge \"Improve __cxa_demangle#cxa_demangle_fuzz_167977068 diagnostics.\""
    },
    {
      "commit": "f266f26cb74a469dbfd9a899ebf8b9b92b59868a",
      "tree": "e08aad84c5351b3e5acf46098536a096b9ba3cba",
      "parents": [
        "56f1c406a5d5ac8068b9c0092eada0aae2d7c77d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 05 16:23:39 2020 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 05 16:23:39 2020 -0800"
      },
      "message": "Improve __cxa_demangle#cxa_demangle_fuzz_167977068 diagnostics.\n\nBug: http://b/172465723\nTest: treehugger\nChange-Id: I253a164f95705bd0cebe06483011b08187072691\n"
    },
    {
      "commit": "56f1c406a5d5ac8068b9c0092eada0aae2d7c77d",
      "tree": "316bc204926511ac3c52eb9b405d3372122c1c84",
      "parents": [
        "e9eae5153948ec32abd36dfcbe889c4b1a024515",
        "a5c4b17e13bf19e44413f252f66707449eac5783"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Nov 04 01:32:49 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 04 01:32:49 2020 +0000"
      },
      "message": "Merge \"Clear PAC bits in android_unsafe_frame_pointer_chase().\""
    },
    {
      "commit": "e9eae5153948ec32abd36dfcbe889c4b1a024515",
      "tree": "91244e3a30a8d4258242873ee7d43bc10c72c453",
      "parents": [
        "718a5fd73e7aa8b1bc5bec9c2d194657653f92e0",
        "de30635eb67282b37454dc0d3f67507feb172967"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Nov 03 22:19:57 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 03 22:19:57 2020 +0000"
      },
      "message": "Merge \"Put __*_ARRAY__ symbols before prioritized init/fini funcs\""
    },
    {
      "commit": "718a5fd73e7aa8b1bc5bec9c2d194657653f92e0",
      "tree": "c8d85dabee9ec329cd9071b67e9b990bd59a8ff4",
      "parents": [
        "0c2350413e809afafc29e428abe5b36b50b5ca97",
        "413817f69cd9ee7b7e46e1e5e9ac6a14b8c15a17"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Nov 03 18:40:34 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 03 18:40:34 2020 +0000"
      },
      "message": "Merge \"Add a couple of demangler tests.\""
    },
    {
      "commit": "de30635eb67282b37454dc0d3f67507feb172967",
      "tree": "8c9d46b1b7c0c245c33efb14ed919dfec88baae8",
      "parents": [
        "10c2875934c9f47b39c1ffd9a3ecbe63d59f3183"
      ],
      "author": {
        "name": "Matthew Maurer",
        "email": "mmaurer@google.com",
        "time": "Fri Oct 23 09:55:33 2020 -0700"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Mon Nov 02 17:28:41 2020 -0800"
      },
      "message": "Put __*_ARRAY__ symbols before prioritized init/fini funcs\n\nA constructor or destructor function with an integral priority is\nplaced in an .init_array or .fini_array section with the priority\nsuffixed to the section name:\n - __attribute__((constructor)) \u003d\u003d\u003e .init_array\n - __attribute__((constructor(42))) \u003d\u003d\u003e .init_array.42\n\nThe suffixed init/fini sections appear before the unsuffixed sections,\nso the prioritized functions appeared before the __{INIT,FINI}_ARRAY__\nsymbols and were dropped when the symbols were used.\n\nThe (static) linker doesn\u0027t recognize priority suffixes on\n.preinit_array.\n\nThis bug affected .init_array and .fini_array for static executables.\nFor dynamic executables, only .fini_array was affected, because\n.init_array is handled by the dynamic loader instead, which uses\nDT_INIT_ARRAY[SZ]. For DSOs, neither is affected, because the two\nsections are only handled by the dynamic loader.\n\nThis patch also fixes a minor inconsistency where dynamic init/preinit\nwere passed argc/argv/envp, but static were not.\n\nBug: http://b/170983066\nTest: bionic-unit-tests\nChange-Id: I0fffa776e5d9bdb6f8af06b4c1af148236742fef\n"
    },
    {
      "commit": "413817f69cd9ee7b7e46e1e5e9ac6a14b8c15a17",
      "tree": "fe2f9f64cf8659574924c2a700f09aeafe2e04a3",
      "parents": [
        "9aa6b15d799ac246e842552fca555920a93ce46b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 26 15:05:35 2020 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 02 20:46:19 2020 +0000"
      },
      "message": "Add a couple of demangler tests.\n\nBug: http://b/152588929\nTest: treehugger\nChange-Id: I4528e464f969e9167d459f292b179d14381d0f2e\n"
    },
    {
      "commit": "0c2350413e809afafc29e428abe5b36b50b5ca97",
      "tree": "a32d2b9b71d4ca0bf3c9dc2278c83a2e9cc02311",
      "parents": [
        "10c2875934c9f47b39c1ffd9a3ecbe63d59f3183",
        "0427760a54d9649f7bcdcf27dd1e9dda1f6d5b87"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Nov 02 20:09:01 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 02 20:09:01 2020 +0000"
      },
      "message": "Merge \"Docs: link to the unwinder docs.\""
    },
    {
      "commit": "0427760a54d9649f7bcdcf27dd1e9dda1f6d5b87",
      "tree": "a32d2b9b71d4ca0bf3c9dc2278c83a2e9cc02311",
      "parents": [
        "10c2875934c9f47b39c1ffd9a3ecbe63d59f3183"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 30 16:36:16 2020 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 30 16:36:16 2020 -0700"
      },
      "message": "Docs: link to the unwinder docs.\n\nSince (a) they\u0027re not a README.md and (b) they moved git project\nrecently, it\u0027s really hard to find these docs even if you know they\nexist, which no-one does.\n\nTest: N/A\nChange-Id: Ic12e47ef5eb09e692ac0974b1d33bc5dc83d1028\n"
    },
    {
      "commit": "a5c4b17e13bf19e44413f252f66707449eac5783",
      "tree": "24cc0ef78706eac6d9369ed20c73ca0e7409e247",
      "parents": [
        "6dc330a714d9578b17a9535b9c5f3379d2a90bf4"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Fri Oct 30 11:38:55 2020 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Fri Oct 30 14:36:37 2020 -0700"
      },
      "message": "Clear PAC bits in android_unsafe_frame_pointer_chase().\n\nBug: 172057932\nChange-Id: Ie0eb4800a6699f2094070e97e5157d4e9c186097\n"
    },
    {
      "commit": "10c2875934c9f47b39c1ffd9a3ecbe63d59f3183",
      "tree": "1847b2c66234e00d94f15f84bd2d6846964b5ef7",
      "parents": [
        "02bee7182e2a6c001bd3116d50c8bb461bc3c98d",
        "bf383283d9a480f9725bc34b0ab0f2fb1b126aa6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 29 23:53:50 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 29 23:53:50 2020 +0000"
      },
      "message": "Merge \"getgrnam, getgrgid, getpwnam, getpwuid for host\""
    },
    {
      "commit": "02bee7182e2a6c001bd3116d50c8bb461bc3c98d",
      "tree": "99239edd5677ffb3651c3628d2e165934bb80c44",
      "parents": [
        "c3ecfb623f2c8190a3763b4a4a4716bea0032fac",
        "b04490d7e5f85545b15ad4e04ba9f3d2eea550c6"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Oct 29 17:17:29 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 29 17:17:29 2020 +0000"
      },
      "message": "Merge \"Make vendor_ramdisk_available.\""
    },
    {
      "commit": "bf383283d9a480f9725bc34b0ab0f2fb1b126aa6",
      "tree": "07056d57ca4429b414a06e184befbc264da9741b",
      "parents": [
        "c3ecfb623f2c8190a3763b4a4a4716bea0032fac"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Oct 27 03:23:02 2020 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Oct 29 07:52:54 2020 +0900"
      },
      "message": "getgrnam, getgrgid, getpwnam, getpwuid for host\n\nThe functions now read /etc/group and /etc/passwd on host machines.\nAndroid-specific IDs are not recognized in the host.\n\ngetpwent and getgrent are still not working though. They require a\nbigger refactoring to sequentially advance in the database files.\n\nBug: 171718702\nTest: run assemble_cvd in aosp_cf_arm64_phone\nChange-Id: Ie8da382a467bbd0bffac7b4b8592cd871db80181\n"
    },
    {
      "commit": "b04490d7e5f85545b15ad4e04ba9f3d2eea550c6",
      "tree": "4b593a5f764241dd5796cb28190099de648ec071",
      "parents": [
        "b5f301eaafdc23f05fe5558fb0406a0ab04fc807"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Oct 21 18:36:36 2020 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Oct 27 17:06:45 2020 -0700"
      },
      "message": "Make vendor_ramdisk_available.\n\nTest: pass\nBug: 156098440\nChange-Id: I8fe2deb8fa3b24c227202be02d8af648629cffeb\n"
    },
    {
      "commit": "c3ecfb623f2c8190a3763b4a4a4716bea0032fac",
      "tree": "a99779230881f3bcbc833be241d74b51a9ae368a",
      "parents": [
        "40aed73b5fc41256d55d7b099e388aee4f56f32c",
        "8dd649deac465f15d22b305bcb35f873643c8c59"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 26 19:28:27 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Oct 26 19:28:27 2020 +0000"
      },
      "message": "Merge \"system(3) uses /bin/sh when built for host\""
    },
    {
      "commit": "40aed73b5fc41256d55d7b099e388aee4f56f32c",
      "tree": "90f1fab29e85b9e70108f1fa3d4167724b93e125",
      "parents": [
        "c44b1d0676ded732df4b3b21c5f798eacae93228",
        "7cda75f1d3e147a300d7ff4d690b13e36bff5c5d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 26 16:19:05 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Oct 26 16:19:05 2020 +0000"
      },
      "message": "Merge \"Add DoNotOptimize and use it in tests.\""
    },
    {
      "commit": "8dd649deac465f15d22b305bcb35f873643c8c59",
      "tree": "9b22cf1a657e662ff0025a416a0df2d65baacdbb",
      "parents": [
        "cf878313b0834b780ba6ffdc91b972371007f16e"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Mon Oct 26 22:01:17 2020 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Mon Oct 26 22:02:53 2020 +0900"
      },
      "message": "system(3) uses /bin/sh when built for host\n\n/system/bin/sh exists only on Android. When Bionic is built for the\nhost, use the standard /bin/sh.\n\nBug: 159685774\nTest: run aosp_cf_arm64_phone on rockpi4\nChange-Id: Idf4028c134abc128f203fc4d3be591f06b8fe8ff\n"
    },
    {
      "commit": "c44b1d0676ded732df4b3b21c5f798eacae93228",
      "tree": "497a2ffd70963a072d2a19f07fb8ecccaa10226f",
      "parents": [
        "c5617a4be775365f0bbbedd071f25c4d079312a6",
        "8393a8bc8487437d4dc02bc98da2a88407f83b25"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Oct 23 18:09:42 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 23 18:09:42 2020 +0000"
      },
      "message": "Merge \"Make the connection between implementation and llndk_library explicit\""
    },
    {
      "commit": "c5617a4be775365f0bbbedd071f25c4d079312a6",
      "tree": "4066348278ee5ed42162a39448b4f2b5b84d5463",
      "parents": [
        "d88c8eb6b07612bbe4163a9f67209c4106583999",
        "e8693e78711e8f45ccd2b610e4dbe0b94d551cc9"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 23 16:34:13 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 23 16:34:13 2020 +0000"
      },
      "message": "Merge \"Make more use of benchmark::DoNotOptimize in benchmarks.\""
    },
    {
      "commit": "d88c8eb6b07612bbe4163a9f67209c4106583999",
      "tree": "d16287140edd0af49942b70398b1d8ce3fb59ed1",
      "parents": [
        "9aa6b15d799ac246e842552fca555920a93ce46b",
        "81c260d34b1244048550c827aac437bf15c67257"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Oct 23 10:03:24 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 23 10:03:24 2020 +0000"
      },
      "message": "Merge \"Rename ART release APEX to com.android.art.\""
    },
    {
      "commit": "e8693e78711e8f45ccd2b610e4dbe0b94d551cc9",
      "tree": "5b7a67244a6a122e27fca20f84d0a4f78d487fe2",
      "parents": [
        "9aa6b15d799ac246e842552fca555920a93ce46b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Oct 22 13:43:59 2020 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Oct 22 13:43:59 2020 -0700"
      },
      "message": "Make more use of benchmark::DoNotOptimize in benchmarks.\n\nA lot of these benchmarks predate DoNotOptimize and rolled their own\nhacks.\n\nBug: http://b/148307629\nTest: ran benchmarks before \u0026 after and got similar results\nChange-Id: If44699d261b687f6253af709edda58f4c90fb285\n"
    },
    {
      "commit": "7cda75f1d3e147a300d7ff4d690b13e36bff5c5d",
      "tree": "0d4390746ae35c223432964fce5041d3dc280bed",
      "parents": [
        "9aa6b15d799ac246e842552fca555920a93ce46b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Oct 22 13:22:35 2020 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Oct 22 13:22:35 2020 -0700"
      },
      "message": "Add DoNotOptimize and use it in tests.\n\nBug: http://b/148307629\nTest: treehugger\nChange-Id: I3b1726ae55116f6553ea38fe163abdde179c21f0\n"
    },
    {
      "commit": "9aa6b15d799ac246e842552fca555920a93ce46b",
      "tree": "a8a9cbcf7a47eff23239c0d94b35e8616f3e2db7",
      "parents": [
        "72b1aaf68e9c4c07b09c44578880ed4209c0f02c",
        "25c18d45cf0b9f951ee1540c66b934251528d052"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Oct 22 00:54:16 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 22 00:54:16 2020 +0000"
      },
      "message": "Merge \"Update to v5.9 kernel headers.\""
    },
    {
      "commit": "81c260d34b1244048550c827aac437bf15c67257",
      "tree": "9687148aa9ed5a91667c638e05233ae9a1b6c086",
      "parents": [
        "72b1aaf68e9c4c07b09c44578880ed4209c0f02c"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Oct 12 15:07:38 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Oct 21 15:41:02 2020 +0100"
      },
      "message": "Rename ART release APEX to com.android.art.\n\nTest: See https://r.android.com/1457217\nBug: 169639321\nChange-Id: I71c75987ebfb1196d63f452945c5d387f2976d86\nMerged-In: I71c75987ebfb1196d63f452945c5d387f2976d86\n"
    },
    {
      "commit": "72b1aaf68e9c4c07b09c44578880ed4209c0f02c",
      "tree": "fafb0190ec1539c61aba458c04d2b0d8516a3294",
      "parents": [
        "3f09b0ac2e6a3875f2c1cd947ab01f95198aa751",
        "de523c02bbea1923ee5fbe9d1d60a905f6e965b0"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Wed Oct 21 00:44:50 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Oct 21 00:44:50 2020 +0000"
      },
      "message": "Merge \"Fix __cxa_atexit run-time regression with many registrations\""
    },
    {
      "commit": "3f09b0ac2e6a3875f2c1cd947ab01f95198aa751",
      "tree": "6667e08bc663dcb825ca69c6d437e9963f25a12f",
      "parents": [
        "38940f17ac94441524f62b50ef97cc0692ba5958",
        "b5f8e034968da83dd27da322c7a0b534b61f3ec8"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Tue Oct 20 17:17:29 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 20 17:17:29 2020 +0000"
      },
      "message": "Merge \"Update module name referenced in README.md\""
    },
    {
      "commit": "38940f17ac94441524f62b50ef97cc0692ba5958",
      "tree": "13b48f5a3a2a74a875faf12e3cdfb1636a59dabe",
      "parents": [
        "b88edc6739d2582597e6164edf49cdcc669abcbc",
        "c0d50d4a37467e6c0f9a6b3721651b3b0fc37eba"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 20 17:04:01 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 20 17:04:01 2020 +0000"
      },
      "message": "Merge \"Replace libandroidicu usage in bionic with the new libicu.so available in NDK\""
    },
    {
      "commit": "c0d50d4a37467e6c0f9a6b3721651b3b0fc37eba",
      "tree": "5aaa85fd66d47677b181cd8ec8f4bf4354cfac74",
      "parents": [
        "bb34f8ddd3411852395affc6d588487cfe37c830"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Oct 20 15:44:20 2020 +0100"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Oct 20 15:44:20 2020 +0100"
      },
      "message": "Replace libandroidicu usage in bionic with the new libicu.so available in NDK\n\nBug: 160350521\nTest: atest CtsBionicTestCases\nChange-Id: Id5fa76872ec295674eb1bed3b66e037a04fe6bf8\n"
    },
    {
      "commit": "de523c02bbea1923ee5fbe9d1d60a905f6e965b0",
      "tree": "ca34781ef3496b4b83303bce9f038231bba91433",
      "parents": [
        "b88edc6739d2582597e6164edf49cdcc669abcbc"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Fri Oct 09 05:08:36 2020 -0700"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Oct 20 01:10:33 2020 -0700"
      },
      "message": "Fix __cxa_atexit run-time regression with many registrations\n\nWhen an array element is added or removed, make only the relevant page\nwritable, rather than the entire array. The entire array is still made\nwritable during recompaction and expansion.\n\nThis change fixes most of a large regression in __cxa_atexit runtime\n(blueline, taskset 10, performance governor, 100000 registrations,\ntimes are in seconds)\n - Q: _Exit\u003d0.292380, exit\u003d0.626801\n - R: _Exit\u003d28.435082, exit\u003d95.785110\n - new: _Exit\u003d0.352285, exit\u003d0.713893\n\nTest: bionic unit tests\nTest: adb shell taskset 10 \\\n  /data/benchmarktest64/bionic-spawn-benchmarks/bionic-spawn-benchmarks \\\n  --benchmark_filter\u003d\u0027atexit\u0027 \\\n  --benchmark_display_aggregates_only\u003dtrue \\\n  --benchmark_repetitions\u003d10\nBug: http://b/168043760\nChange-Id: I88cc15c29c9890b422b7f621f29f98a03ca1f886\n"
    },
    {
      "commit": "b88edc6739d2582597e6164edf49cdcc669abcbc",
      "tree": "9499fd3f9aa27d36ed39e61c95da82ad216c9dda",
      "parents": [
        "6dc330a714d9578b17a9535b9c5f3379d2a90bf4",
        "a3d41ee17669084489bbecd3262658834f43541c"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Oct 20 04:03:50 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 20 04:03:50 2020 +0000"
      },
      "message": "Merge \"Add __cxa_atexit benchmark\""
    },
    {
      "commit": "6dc330a714d9578b17a9535b9c5f3379d2a90bf4",
      "tree": "388b5ad9bda4a23faa1e73e3f1aca35e1ba7c220",
      "parents": [
        "bb34f8ddd3411852395affc6d588487cfe37c830",
        "2d4bbf24158649b992f949fa28516b020f8afb19"
      ],
      "author": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Tue Oct 20 00:23:58 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Oct 20 00:23:58 2020 +0000"
      },
      "message": "Merge \"Update linkerconfig configuration format\""
    },
    {
      "commit": "25c18d45cf0b9f951ee1540c66b934251528d052",
      "tree": "7e74c0c148b91e2d5e5294c68676a187eae24e12",
      "parents": [
        "bb34f8ddd3411852395affc6d588487cfe37c830"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Oct 14 17:42:58 2020 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Oct 19 15:48:58 2020 -0700"
      },
      "message": "Update to v5.9 kernel headers.\n\nKernel headers coming from:\n\nGit: https://android.googlesource.com/kernel/common/\nBranch: android-mainline\nTag: android-mainline-5.9\n\nTest: Boots cuttlefish 64bit, passes 32 bit and 64 bit bionic unit tests.\nChange-Id: Ib5503355b238ea75595538e63eb000c867d06ef7\n"
    },
    {
      "commit": "8393a8bc8487437d4dc02bc98da2a88407f83b25",
      "tree": "4def54bf96b33189cb9240369e6d5fe5b763496b",
      "parents": [
        "8c8d3e7288ac63e1d70102cdd7dcf159207637d5"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Oct 19 13:37:49 2020 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Oct 19 13:37:49 2020 -0700"
      },
      "message": "Make the connection between implementation and llndk_library explicit\n\nInstead of assuming a module with the .llndk suffix exists, add an\nllndk_stubs property to every cc_library module that has a\ncorresponding llndk_library.  Also rename the llndk_library to have\nan explicit .llndk suffix.\n\nBug: 170784825\nTest: no changes to build.ninja (excluding comments) or Android-${TARGET_PRODUCT}.mk\nChange-Id: Ib5453472a09ebc64818ceb69bcbe1184720ce86a\n"
    },
    {
      "commit": "a3d41ee17669084489bbecd3262658834f43541c",
      "tree": "3dc94fca23772726ddaeb1917983c44764f45c8f",
      "parents": [
        "08a43426a0bcbc53cd2a33b3624bc6b3f7176117"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Wed Oct 07 16:32:27 2020 -0700"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Fri Oct 16 17:55:54 2020 -0700"
      },
      "message": "Add __cxa_atexit benchmark\n\nThe benchmark calls __cxa_atexit 100000 times, then either exits early\nwithout calling the destructors (_Exit) or exits normally, calling them\n(exit).\n\nTest: mmma bionic/benchmarks/spawn\nChange-Id: I41fe702d6ef11acb7a1dec95bf546b5dc693bd4a\n"
    },
    {
      "commit": "bb34f8ddd3411852395affc6d588487cfe37c830",
      "tree": "743b8ecdc0b97f441b3e60cbbddb802adcc048d1",
      "parents": [
        "c7484205c2da28f6925ea036f0e347f1152de55f",
        "8c8d3e7288ac63e1d70102cdd7dcf159207637d5"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Fri Oct 16 16:51:16 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Oct 16 16:51:16 2020 +0000"
      },
      "message": "Merge \"Fix visibility rules.\" am: 8c8d3e7288\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1455917\n\nChange-Id: I25a1ffae570aa9605feeeae92d5656ece072f071\n"
    },
    {
      "commit": "8c8d3e7288ac63e1d70102cdd7dcf159207637d5",
      "tree": "743b8ecdc0b97f441b3e60cbbddb802adcc048d1",
      "parents": [
        "cf878313b0834b780ba6ffdc91b972371007f16e",
        "db0c6deed61dd7a3c788e0af49ffe1d7bbdea8d4"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Fri Oct 16 15:49:44 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 16 15:49:44 2020 +0000"
      },
      "message": "Merge \"Fix visibility rules.\""
    },
    {
      "commit": "db0c6deed61dd7a3c788e0af49ffe1d7bbdea8d4",
      "tree": "743b8ecdc0b97f441b3e60cbbddb802adcc048d1",
      "parents": [
        "cf878313b0834b780ba6ffdc91b972371007f16e"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Thu Oct 15 04:49:00 2020 +0000"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Fri Oct 16 15:46:59 2020 +0000"
      },
      "message": "Fix visibility rules.\n\nBUG: 163786882\nTest: Local build + TH\nChange-Id: I788af6cf17ebee1fa5001768389a2c8b855c3534\n"
    },
    {
      "commit": "c7484205c2da28f6925ea036f0e347f1152de55f",
      "tree": "cf8180eb5b88cb4c2432496721ec4442b0c80cf2",
      "parents": [
        "1c866871539c991562e27b56f1fad52f0b8b9c27",
        "cf878313b0834b780ba6ffdc91b972371007f16e"
      ],
      "author": {
        "name": "Lev Rumyantsev",
        "email": "levarum@google.com",
        "time": "Fri Oct 16 00:49:56 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Oct 16 00:49:56 2020 +0000"
      },
      "message": "Merge \"Make more functions weak for native bridge\" am: cf878313b0\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1459742\n\nChange-Id: I33410ba3d38f3c18df50211cb0010c7e0303ed18\n"
    },
    {
      "commit": "cf878313b0834b780ba6ffdc91b972371007f16e",
      "tree": "cf8180eb5b88cb4c2432496721ec4442b0c80cf2",
      "parents": [
        "ddbcea2c113bd419fb9dd6f29c3232eaea3a1088",
        "814f38fc28671f14a5f0cdbb9e5e3e2848e74bbc"
      ],
      "author": {
        "name": "Lev Rumyantsev",
        "email": "levarum@google.com",
        "time": "Thu Oct 15 23:58:14 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 15 23:58:14 2020 +0000"
      },
      "message": "Merge \"Make more functions weak for native bridge\""
    },
    {
      "commit": "1c866871539c991562e27b56f1fad52f0b8b9c27",
      "tree": "ee20d46a4f182b8749096244e2deca398c520ece",
      "parents": [
        "5d926baab8d736d6408865bc495e7aaf240cfa7f",
        "ddbcea2c113bd419fb9dd6f29c3232eaea3a1088"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 15 21:19:45 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Oct 15 21:19:45 2020 +0000"
      },
      "message": "Merge \"pthread_cond: only call futex_wake when there are waiters\" am: ddbcea2c11\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1462542\n\nChange-Id: I1efe83a837331797e9eae0132e7d1f5b5e30e705\n"
    },
    {
      "commit": "ddbcea2c113bd419fb9dd6f29c3232eaea3a1088",
      "tree": "ee20d46a4f182b8749096244e2deca398c520ece",
      "parents": [
        "e4f7c6d70b04f9fd01aab5f8a1c0063d4445d8e9",
        "9c08f4fecc5a8179426c4436071e6a451396eb38"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 15 20:11:00 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 15 20:11:00 2020 +0000"
      },
      "message": "Merge \"pthread_cond: only call futex_wake when there are waiters\""
    },
    {
      "commit": "5d926baab8d736d6408865bc495e7aaf240cfa7f",
      "tree": "86705970ed1ab4748be148108dc967d562b78aee",
      "parents": [
        "20ca28938af1f59eb2bceca1246b61cb18014abc",
        "e4f7c6d70b04f9fd01aab5f8a1c0063d4445d8e9"
      ],
      "author": {
        "name": "Vy Nguyen",
        "email": "vyng@google.com",
        "time": "Thu Oct 15 17:46:13 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Oct 15 17:46:13 2020 +0000"
      },
      "message": "Merge \"Fix bug in finding another thread\u0027s TCB.\" am: e4f7c6d70b\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1419435\n\nChange-Id: I6d7cea931fcf1b0b5d3576b8fca4cb2e7e9dfae3\n"
    },
    {
      "commit": "e4f7c6d70b04f9fd01aab5f8a1c0063d4445d8e9",
      "tree": "86705970ed1ab4748be148108dc967d562b78aee",
      "parents": [
        "dcbc8ec29a148b0a3fdf675d91b77141325a3a36",
        "19f84868f457486b7170c9130c7526bd1c55c849"
      ],
      "author": {
        "name": "Vy Nguyen",
        "email": "vyng@google.com",
        "time": "Thu Oct 15 17:20:47 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 15 17:20:47 2020 +0000"
      },
      "message": "Merge \"Fix bug in finding another thread\u0027s TCB.\""
    },
    {
      "commit": "9c08f4fecc5a8179426c4436071e6a451396eb38",
      "tree": "d7c9587b18b018d91c0da6b0d24100e005f0bac4",
      "parents": [
        "dcbc8ec29a148b0a3fdf675d91b77141325a3a36"
      ],
      "author": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Wed Oct 07 17:11:28 2020 +0000"
      },
      "committer": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Thu Oct 15 16:16:07 2020 +0000"
      },
      "message": "pthread_cond: only call futex_wake when there are waiters\n\npthread_cond_pulse would unconditionally call futex, which meant that\na number of processes were spending a significant amount of time in\npthread_cond_broadcast and pthread_cond_signal when there were no\nthreads waiting on that pthread_cond_t.\n\nThis change adds a counter to the 64-bit pthread_cond_t struct and\nonly calls futex() in cases where there is a nonzero waiter count. The\n32-bit pthread_cond_t is unchanged due to compatibility reasons.\n\nTest: no pthread_cond_broadcast/signal stacks without try_to_wake_up\nin SurfaceFlinger\nbug: 168831708\n\nChange-Id: I105e1345cd2a3a75f98cd0acf316e790ba1716f0\n"
    },
    {
      "commit": "19f84868f457486b7170c9130c7526bd1c55c849",
      "tree": "86705970ed1ab4748be148108dc967d562b78aee",
      "parents": [
        "dcbc8ec29a148b0a3fdf675d91b77141325a3a36"
      ],
      "author": {
        "name": "Vy Nguyen",
        "email": "vyng@google.com",
        "time": "Wed Sep 23 21:43:31 2020 -0400"
      },
      "committer": {
        "name": "Vy Nguyen",
        "email": "vyng@google.com",
        "time": "Thu Oct 15 10:28:19 2020 -0400"
      },
      "message": "Fix bug in finding another thread\u0027s TCB.\n\nChange-Id: I06c86ca0c077b464fc6c9fbdf5b89889a26da5fb\n"
    },
    {
      "commit": "814f38fc28671f14a5f0cdbb9e5e3e2848e74bbc",
      "tree": "89c9cad15594d58a4a9c9b4c94862a7096fd95e8",
      "parents": [
        "dcbc8ec29a148b0a3fdf675d91b77141325a3a36"
      ],
      "author": {
        "name": "Lev Rumyantsev",
        "email": "levarum@google.com",
        "time": "Mon Oct 12 17:33:06 2020 -0700"
      },
      "committer": {
        "name": "Lev Rumyantsev",
        "email": "levarum@google.com",
        "time": "Tue Oct 13 17:03:15 2020 -0700"
      },
      "message": "Make more functions weak for native bridge\n\nTest: CtsNetTestCases android.net.cts.DnsTest#testDnsWorks\nBug: 170665833\nChange-Id: I83242e336f6ee5a0115252a12eddf9def26db90f\n"
    },
    {
      "commit": "b5f8e034968da83dd27da322c7a0b534b61f3ec8",
      "tree": "67f6e61a7879a3ed45b6b5098c7b24f87dcf3d1f",
      "parents": [
        "08a43426a0bcbc53cd2a33b3624bc6b3f7176117"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Fri Oct 09 13:07:43 2020 -0700"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Mon Oct 12 16:48:36 2020 -0700"
      },
      "message": "Update module name referenced in README.md\n\nTest: atest-src google/perf/jank/UIBench/UIBench-Lock -v\nBug: 170349152\n\nChange-Id: I0dfb9422b068952c6f4d506a8fbfa5316dbe9886\n"
    },
    {
      "commit": "20ca28938af1f59eb2bceca1246b61cb18014abc",
      "tree": "8e96c323f88b28560ec6711e403ebbbef5a7e513",
      "parents": [
        "69eb7bb5103a81499bbf7a0a48507ef630cc73d1",
        "dcbc8ec29a148b0a3fdf675d91b77141325a3a36"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Oct 09 21:36:45 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Oct 09 21:36:45 2020 +0000"
      },
      "message": "Merge changes from topic \"I81ece86ace916eb6b435ab516cd431ec4b48a3bf\" am: dcbc8ec29a\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1449140\n\nChange-Id: Ibda51d9f321b5bbb4860be054f83bbf7859bc8a3\n"
    },
    {
      "commit": "dcbc8ec29a148b0a3fdf675d91b77141325a3a36",
      "tree": "8e96c323f88b28560ec6711e403ebbbef5a7e513",
      "parents": [
        "08a43426a0bcbc53cd2a33b3624bc6b3f7176117",
        "0cdf132f84022b2a05082095733d530e31d72d61"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Oct 09 21:05:02 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 09 21:05:02 2020 +0000"
      },
      "message": "Merge changes from topic \"I81ece86ace916eb6b435ab516cd431ec4b48a3bf\"\n\n* changes:\n  Expose per-process memory init.\n  Add an API for per-process disabling memory initialization.\n"
    },
    {
      "commit": "0cdf132f84022b2a05082095733d530e31d72d61",
      "tree": "11c2c3ebfb67e914c37c6573d0b775f781b4f1ff",
      "parents": [
        "5d3aa86cd1fe2e8b1920003b14b9a0c91153b111"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Oct 05 21:55:26 2020 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Oct 09 00:33:30 2020 +0000"
      },
      "message": "Expose per-process memory init.\n\nIn order to disable memory initialization for a process, the following\ncommand can be used:\n\n    android_mallopt(M_DISABLE_MEMORY_MITIGATIONS, nullptr, 0);\n\nSince this is needed in vendor processes, this is exposing this\nfunctionality to llndk. For convenience (and adding standard logging),\na helper function is being added into libcutils in order to use this,\nw/o having to get into so many details.\n\nBug: 166675194\nTest: use function from libcutils\nChange-Id: Ia816089a9f3469c50c70afaa7244abeac5a51dcd\n"
    },
    {
      "commit": "69eb7bb5103a81499bbf7a0a48507ef630cc73d1",
      "tree": "ec71dd4be0fc0c7ca7917f3b2f968f2346827f07",
      "parents": [
        "90e8c9700cf1342e50be88acbfc9ff2fb3a5e1d6",
        "b39a3abc91b180b060bd98103f01b7b5c2751993"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Thu Oct 08 17:19:18 2020 -0700"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Thu Oct 08 17:19:18 2020 -0700"
      },
      "message": "Skip ab/6749736 in stage.\n\nMerged-In: If2409b0a846f19071aff66bade9cc120a078bbbc\nChange-Id: I9881c6c9053da31f4107b0b70b8c65fc1569f2ed\n"
    },
    {
      "commit": "5d3aa86cd1fe2e8b1920003b14b9a0c91153b111",
      "tree": "e17b86fb2a85a913c20d5f91405ef524e7c0c1c8",
      "parents": [
        "4edf74ab1ae2da4bda80d19f4c014e983c74903d"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Fri Sep 11 15:05:17 2020 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Thu Oct 08 14:02:36 2020 -0700"
      },
      "message": "Add an API for per-process disabling memory initialization.\n\nIntroduce an android_mallopt(M_DISABLE_MEMORY_MITIGATIONS) API call\nthat may be used to disable zero- or pattern-init on non-MTE hardware,\nor memory tagging on MTE hardware. The intent is that this function\nmay be called at any time, including when there are multiple threads\nrunning.\n\nDisabling zero- or pattern-init is quite trivial, we just need to set\na global variable to 0 via a Scudo API call (although there will be\nsome separate work required on the Scudo side to make this operation\nthread-safe).\n\nIt is a bit more tricky to disable MTE across a process, because\nthe kernel does not provide an API for disabling tag checking in all\nthreads in a process, only per-thread. We need to send a signal to each\nof the process\u0027s threads with a handler that issues the required prctl\ncall, and lock thread creation for the duration of the API call to\navoid races between thread enumeration and calls to pthread_create().\n\nBug: 135772972\nChange-Id: I81ece86ace916eb6b435ab516cd431ec4b48a3bf\n"
    },
    {
      "commit": "18286ed4659a7796cce9d5e44dd4791f4225b89c",
      "tree": "0e0ccfce4ab8015ca5efc70b7171ea71ce7b439f",
      "parents": [
        "08a43426a0bcbc53cd2a33b3624bc6b3f7176117"
      ],
      "author": {
        "name": "Bram Bonné",
        "email": "brambonne@google.com",
        "time": "Fri Sep 18 13:27:25 2020 +0200"
      },
      "committer": {
        "name": "Bram Bonné",
        "email": "brambonne@google.com",
        "time": "Tue Oct 06 13:42:19 2020 +0200"
      },
      "message": "Soft-enables new MAC address restrictions.\n\nUpdates getifaddrs() to behave as if RTM_GETLINK requests are not\nallowed for non-system apps. This is different from previous behavior,\nwhere apps targeting an API level \u003c 30 were exempted from this\nrestriction.\n\nActual enforcement happens in SELinux. This change:\n- Soft-enables the behavior until SELinux changes are in place\n- Prevents logspam from SELinux denials after they are in place\n\nBug: 170188668\nTest: atest bionic-unit-tests-static\nTest: atest NetworkInterfaceTest\nTest: Connect to Wi-Fi network\nTest: Call getifaddrs() directly from within an app.\nTest: Call NetworkInterface#getNetworkInterfaces() from within an app.\n\nChange-Id: I95d124ae81bcb26583db5ad01d95d441d52f973c\n"
    },
    {
      "commit": "2d4bbf24158649b992f949fa28516b020f8afb19",
      "tree": "f6c453421a39c5dbdba78e27246c33d348c9f432",
      "parents": [
        "6c19d67a7355c189e0f1ea9b01e357ec82d4059f"
      ],
      "author": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Tue Oct 06 17:26:13 2020 +0900"
      },
      "committer": {
        "name": "Kiyoung Kim",
        "email": "kiyoungkim@google.com",
        "time": "Tue Oct 06 17:28:19 2020 +0900"
      },
      "message": "Update linkerconfig configuration format\n\nUpdate linkerconfig configuration format as json.\n\nBug: 169634881\nTest: cuttelfish boot succeeded\nChange-Id: I297ffc9e5c8d8916b2e7e0b3e837b6b82247401b\n"
    },
    {
      "commit": "90e8c9700cf1342e50be88acbfc9ff2fb3a5e1d6",
      "tree": "ec71dd4be0fc0c7ca7917f3b2f968f2346827f07",
      "parents": [
        "9783ab0961aa21b897c154e40451d52ac08af32b",
        "08a43426a0bcbc53cd2a33b3624bc6b3f7176117"
      ],
      "author": {
        "name": "Evgeny Eltsin",
        "email": "eaeltsin@google.com",
        "time": "Sat Oct 03 08:01:43 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Oct 03 08:01:43 2020 +0000"
      },
      "message": "Merge \"Mark __progname as weak for native_bridge\" am: 08a43426a0\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1446695\n\nChange-Id: I48bfede0722124372e275a40360b50c8285ed69e\n"
    },
    {
      "commit": "08a43426a0bcbc53cd2a33b3624bc6b3f7176117",
      "tree": "ec71dd4be0fc0c7ca7917f3b2f968f2346827f07",
      "parents": [
        "6551173d51b18d60e0009e0f38592b174c1ca5fd",
        "b752dd53fdf5316529fd3ee2497ac180e9d947a2"
      ],
      "author": {
        "name": "Evgeny Eltsin",
        "email": "eaeltsin@google.com",
        "time": "Sat Oct 03 07:26:51 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Oct 03 07:26:51 2020 +0000"
      },
      "message": "Merge \"Mark __progname as weak for native_bridge\""
    },
    {
      "commit": "9783ab0961aa21b897c154e40451d52ac08af32b",
      "tree": "bc222b9772120698796fd4ec59e46a156264b2f9",
      "parents": [
        "10ca6d38044b899846ce78b08b6d6e85bf40532a",
        "6551173d51b18d60e0009e0f38592b174c1ca5fd"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Sat Oct 03 01:50:31 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Oct 03 01:50:31 2020 +0000"
      },
      "message": "Merge \"Add an internal struct layout test.\" am: 6551173d51\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1447060\n\nChange-Id: I28283b1e53ec0a0fad4f0e919d4935eb1088007c\n"
    },
    {
      "commit": "6551173d51b18d60e0009e0f38592b174c1ca5fd",
      "tree": "bc222b9772120698796fd4ec59e46a156264b2f9",
      "parents": [
        "6351127c1387868f0293d2a27247e8be3326fb5f",
        "4edf74ab1ae2da4bda80d19f4c014e983c74903d"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Sat Oct 03 01:06:06 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Oct 03 01:06:06 2020 +0000"
      },
      "message": "Merge \"Add an internal struct layout test.\""
    },
    {
      "commit": "10ca6d38044b899846ce78b08b6d6e85bf40532a",
      "tree": "ed891f47e4d09bbe465c94155fba49b27cec1376",
      "parents": [
        "14b209988bf14e3b35e3776b7941dee0803d81ef",
        "6351127c1387868f0293d2a27247e8be3326fb5f"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Sat Oct 03 00:19:57 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Sat Oct 03 00:19:57 2020 +0000"
      },
      "message": "Merge \"x86/x86_64: cleanup signal trampolines\" am: 6351127c13\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1439538\n\nChange-Id: I5b067e34d265e8a5b1093d62980d0b3ad9005e38\n"
    },
    {
      "commit": "6351127c1387868f0293d2a27247e8be3326fb5f",
      "tree": "ed891f47e4d09bbe465c94155fba49b27cec1376",
      "parents": [
        "9494caa7e857c9e9d323dd58212d833f75b3362c",
        "fd8d687051793f89c2440a992ecaa74645aa6a16"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Fri Oct 02 23:26:27 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 02 23:26:27 2020 +0000"
      },
      "message": "Merge \"x86/x86_64: cleanup signal trampolines\""
    },
    {
      "commit": "4edf74ab1ae2da4bda80d19f4c014e983c74903d",
      "tree": "779b3fc2615e6c7b0792a51fd61fc7f7089144fd",
      "parents": [
        "897fd6ecb3a7c8964cf50f8926bbaeb6e46449eb"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Fri Oct 02 13:47:03 2020 -0700"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Fri Oct 02 15:46:31 2020 -0700"
      },
      "message": "Add an internal struct layout test.\n\nA downstream user of bionic has a test that requires the sizes and\noffsets of various fields in pthread_internal_t to be consistent\nbetween x86 and arm32, and between x86_64 and arm64, by checking that\nthe sizes and offsets match hardcoded constants. Since this test often\nmakes it difficult to update bionic\u0027s internal data structures, add\na test to bionic that does the same thing so that we can remove the\ndownstream test and make it easier to change internal data structures\nin bionic.\n\nChange-Id: Id5bd3f9fae00aa3b50d1b1267e782e26fe6c8369\n"
    },
    {
      "commit": "b752dd53fdf5316529fd3ee2497ac180e9d947a2",
      "tree": "efaf180a6f69f6366884536548c395e419400826",
      "parents": [
        "9494caa7e857c9e9d323dd58212d833f75b3362c"
      ],
      "author": {
        "name": "Evgeny Eltsin",
        "email": "eaeltsin@google.com",
        "time": "Fri Oct 02 14:41:04 2020 +0200"
      },
      "committer": {
        "name": "Evgeny Eltsin",
        "email": "eaeltsin@google.com",
        "time": "Fri Oct 02 14:41:04 2020 +0200"
      },
      "message": "Mark __progname as weak for native_bridge\n\nBug: 167968941\nTest: m\nChange-Id: I636fab0bbf8e5565fb017940e6128c4bed3bab30\n"
    },
    {
      "commit": "14b209988bf14e3b35e3776b7941dee0803d81ef",
      "tree": "94cec3e95b0f5a0950baec96fdc5b7cd0a290db0",
      "parents": [
        "20670cb20d862f7d94e27073ce22bd63413f1015",
        "9494caa7e857c9e9d323dd58212d833f75b3362c"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Oct 01 07:33:17 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Oct 01 07:33:17 2020 +0000"
      },
      "message": "Merge \"Enable arm64 .eh_frame terminator, align it to 4\" am: 9494caa7e8\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1439537\n\nChange-Id: Ia12d58133b5feb0d41f56b57ca6a572b6cbc95f6\n"
    },
    {
      "commit": "9494caa7e857c9e9d323dd58212d833f75b3362c",
      "tree": "94cec3e95b0f5a0950baec96fdc5b7cd0a290db0",
      "parents": [
        "cde6ca1fc372c5404ed30e840686b75946a3bb85",
        "bcef897b6dd45eef0ef7342be7c8d376e16093a0"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Oct 01 01:08:38 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 01 01:08:38 2020 +0000"
      },
      "message": "Merge \"Enable arm64 .eh_frame terminator, align it to 4\""
    },
    {
      "commit": "20670cb20d862f7d94e27073ce22bd63413f1015",
      "tree": "fcbe31302454b908690bab466aa8459cb1cf50f5",
      "parents": [
        "833a61145c2cdede71c9a1cc3fea48802f45fd29",
        "cde6ca1fc372c5404ed30e840686b75946a3bb85"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 01 00:19:11 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Oct 01 00:19:11 2020 +0000"
      },
      "message": "Merge \"No global ThinLTO for linker\" am: cde6ca1fc3\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1443635\n\nChange-Id: Iaa626cffbd535a1e9a5bd51050dde98266875ad3\n"
    },
    {
      "commit": "cde6ca1fc372c5404ed30e840686b75946a3bb85",
      "tree": "fcbe31302454b908690bab466aa8459cb1cf50f5",
      "parents": [
        "897fd6ecb3a7c8964cf50f8926bbaeb6e46449eb",
        "a7e363f8739e694ddbf088a5a669624420c93953"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 01 00:04:01 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 01 00:04:01 2020 +0000"
      },
      "message": "Merge \"No global ThinLTO for linker\""
    },
    {
      "commit": "a7e363f8739e694ddbf088a5a669624420c93953",
      "tree": "fcbe31302454b908690bab466aa8459cb1cf50f5",
      "parents": [
        "897fd6ecb3a7c8964cf50f8926bbaeb6e46449eb"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Thu Oct 01 04:10:01 2020 +0800"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Thu Oct 01 04:10:01 2020 +0800"
      },
      "message": "No global ThinLTO for linker\n\nPrevious CL aosp/1432874 missed one project to exclude.\n\nTest: make\nChange-Id: Ib39e6a86c410e35141cba17948a0f30e197ea9a3\n"
    },
    {
      "commit": "833a61145c2cdede71c9a1cc3fea48802f45fd29",
      "tree": "3ca727ac5010ef030d9b7061c536ffc120024aaa",
      "parents": [
        "e157c11f684eae7feeeec644a896d31fd68ae23f",
        "897fd6ecb3a7c8964cf50f8926bbaeb6e46449eb"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Wed Sep 30 02:18:29 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Sep 30 02:18:29 2020 +0000"
      },
      "message": "Merge \"No global ThinLTO for bionic\" am: 897fd6ecb3\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1432874\n\nChange-Id: I737075c1fc72b0808207f0c0771161b75fb55c5a\n"
    },
    {
      "commit": "897fd6ecb3a7c8964cf50f8926bbaeb6e46449eb",
      "tree": "3ca727ac5010ef030d9b7061c536ffc120024aaa",
      "parents": [
        "07c85f1688182bec2aa21a2195997e7893ad6a4d",
        "15a05a77b4a2949c095e0f73da50a381348ccbac"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Wed Sep 30 01:42:59 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 30 01:42:59 2020 +0000"
      },
      "message": "Merge \"No global ThinLTO for bionic\""
    },
    {
      "commit": "15a05a77b4a2949c095e0f73da50a381348ccbac",
      "tree": "3ca727ac5010ef030d9b7061c536ffc120024aaa",
      "parents": [
        "07c85f1688182bec2aa21a2195997e7893ad6a4d"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Sep 22 00:56:13 2020 +0800"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Sep 29 17:24:04 2020 +0000"
      },
      "message": "No global ThinLTO for bionic\n\nThere are multiple build breakages with bionic when we enable ThinLTO\nglobally. Opt bionic out of ThinLTO for now.\n\n#global-thinlto-opt-out\n\nTest: TreeHugger\nBug: 169004486\nChange-Id: I546a8074f9c3e0ddbd01d3b7cd730e215e3c0c49\n"
    },
    {
      "commit": "e157c11f684eae7feeeec644a896d31fd68ae23f",
      "tree": "3424c0411a26ebd0235db71f4727e02f17cc783d",
      "parents": [
        "5a1564ee1c1d0cae70e3b67de2365a90729775e5",
        "07c85f1688182bec2aa21a2195997e7893ad6a4d"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Mon Sep 28 21:43:30 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Sep 28 21:43:30 2020 +0000"
      },
      "message": "Merge \"Make __clone_for_fork pure native bridge mode abstraction\" am: 07c85f1688\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1441332\n\nChange-Id: I6f91b531379fc7afb17ebbe763a20740cd89733f\n"
    },
    {
      "commit": "5a1564ee1c1d0cae70e3b67de2365a90729775e5",
      "tree": "aab6cc14bb3939beb4b884816d3775a8da057324",
      "parents": [
        "c7e1b6bf4fcbfcb69b09372a6f110d1686a4fdb7",
        "d510f2273209fec81f7b5d457e72cd75a5bc34dd"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Mon Sep 28 21:41:26 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Sep 28 21:41:26 2020 +0000"
      },
      "message": "Merge \"Stop marking symbols weak in native bionic build\" am: d510f22732\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1441331\n\nChange-Id: I3318b11a2aeec1c42ed747f2368786cc28fcc85f\n"
    },
    {
      "commit": "07c85f1688182bec2aa21a2195997e7893ad6a4d",
      "tree": "3424c0411a26ebd0235db71f4727e02f17cc783d",
      "parents": [
        "d510f2273209fec81f7b5d457e72cd75a5bc34dd",
        "6427f39ba9a77ba6d83de5f9b79fedc66edf5522"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Mon Sep 28 20:46:50 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 28 20:46:50 2020 +0000"
      },
      "message": "Merge \"Make __clone_for_fork pure native bridge mode abstraction\""
    },
    {
      "commit": "d510f2273209fec81f7b5d457e72cd75a5bc34dd",
      "tree": "aab6cc14bb3939beb4b884816d3775a8da057324",
      "parents": [
        "5aedb684997d8d7c43e6cfd2edad1c21716ea91e",
        "b967e793a5b2e7f1742121797d35326400f41852"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Mon Sep 28 20:46:38 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 28 20:46:38 2020 +0000"
      },
      "message": "Merge \"Stop marking symbols weak in native bionic build\""
    },
    {
      "commit": "c7e1b6bf4fcbfcb69b09372a6f110d1686a4fdb7",
      "tree": "8b5fdb5a62d7bce5239fb286a4bbe16cd6cb1846",
      "parents": [
        "d42324ece4f4d876eab172797278ff428e2175da",
        "5aedb684997d8d7c43e6cfd2edad1c21716ea91e"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Sep 28 20:05:16 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Sep 28 20:05:16 2020 +0000"
      },
      "message": "Merge \"alloc_debug: get load_bias error\" am: 5aedb68499\n\nOriginal change: https://android-review.googlesource.com/c/platform/bionic/+/1440524\n\nChange-Id: I5e6491e9a3cd9a970c5e7f5903b1c545b26057f9\n"
    },
    {
      "commit": "5aedb684997d8d7c43e6cfd2edad1c21716ea91e",
      "tree": "8b5fdb5a62d7bce5239fb286a4bbe16cd6cb1846",
      "parents": [
        "73ed0c4525121d5ba7c0326f348e780935e6f7cc",
        "8d01fac30078a8d169790a1a0a298cf83071f34d"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Sep 28 19:06:33 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Sep 28 19:06:33 2020 +0000"
      },
      "message": "Merge \"alloc_debug: get load_bias error\""
    },
    {
      "commit": "6427f39ba9a77ba6d83de5f9b79fedc66edf5522",
      "tree": "c2219da363a7e793b649246467eab91b4f7b901d",
      "parents": [
        "b967e793a5b2e7f1742121797d35326400f41852"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Mon Sep 28 20:35:12 2020 +0200"
      },
      "committer": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Mon Sep 28 20:36:39 2020 +0200"
      },
      "message": "Make __clone_for_fork pure native bridge mode abstraction\n\nIn native build of libc it would be inlined and in native bridge mode\nit\u0027s noinline, extern \"C\" and thus could be easily intercepted.\n\nTest: m (without weak symbols in native bridge mode x86+arm build would be broken)\n\nChange-Id: I67759858a5bc2174dce1db9732fdbd89ba7689cc\n"
    },
    {
      "commit": "b967e793a5b2e7f1742121797d35326400f41852",
      "tree": "b4b4cd1ff10d3e9ca3683caf87b383792747b7aa",
      "parents": [
        "73ed0c4525121d5ba7c0326f348e780935e6f7cc"
      ],
      "author": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Mon Sep 28 20:24:03 2020 +0200"
      },
      "committer": {
        "name": "Victor Khimenko",
        "email": "khim@google.com",
        "time": "Mon Sep 28 20:25:32 2020 +0200"
      },
      "message": "Stop marking symbols weak in native bionic build\n\nNow, when we can detect native bridge mode is sources we can do that.\n\nTest: m (without weak symbols in native bridge mode x86+arm build would be broken)\n\nChange-Id: I360e7df8211d03636bbe716dc14655ee8d765493\n"
    },
    {
      "commit": "8d01fac30078a8d169790a1a0a298cf83071f34d",
      "tree": "8b5fdb5a62d7bce5239fb286a4bbe16cd6cb1846",
      "parents": [
        "73ed0c4525121d5ba7c0326f348e780935e6f7cc"
      ],
      "author": {
        "name": "Weiwei.Zhang",
        "email": "Weiwei.Zhang@mediatek.com",
        "time": "Mon Sep 28 14:43:51 2020 +0800"
      },
      "committer": {
        "name": "Denis Hsu",
        "email": "denis.hsu@mediatek.com",
        "time": "Mon Sep 28 07:15:32 2020 +0000"
      },
      "message": "alloc_debug: get load_bias error\n\nmalloc_debug can use libunwind and libunwindstck to unwind backtrace,\nif libc.debug.malloc.options contains the string of \"backtrace_full\",\nmalloc_debug will use libunwindstck, and if libc.debug.malloc.options\ncontains the string of \"backtrace\u003d*\", malloc_debug will use libunwind.\n\nThe result of libunwindstck is normal, but the result of libuniwnd\nis abnormal, there is a offset between the rel_cp and the correct value,\nso addr2line can\u0027t decode the right line number.\n\nLibunwind and libunbiwndpack calculate load_bias is different, so malloc_debug\nget load_bias alignment with libunwindstack.\n\nBug: 169539402\nChange-Id: I640fb5db39af622a0bb52abf2c107984065a89d5\n"
    },
    {
      "commit": "fd8d687051793f89c2440a992ecaa74645aa6a16",
      "tree": "ec2f956610801c0ce52e5b9980b6292e2cdabb09",
      "parents": [
        "bcef897b6dd45eef0ef7342be7c8d376e16093a0"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Fri Apr 17 19:46:51 2020 -0700"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Fri Sep 25 15:58:42 2020 -0700"
      },
      "message": "x86/x86_64: cleanup signal trampolines\n\nLet the assembler handle the low-level details of generating .eh_frame,\nand use .cfi_escape to output the DWARF3 DW_CFA_def_cfa_expression and\nDW_CFA_expression instructions.\n\nExplicitly output a nop instruction between the FDE start\n(.cfi_startproc) and the trampoline symbol.\n\nx86_64: remove the rsp instruction, which is redundant with the CFA\nitself.\n\nBug: http://b/169383888\nTest: compare `objdump -Wf` output before and after\nTest: bionic-unit-tests\nChange-Id: Ie2a6d111cb473596be8c9f4fd64534e91d88f2a1\n"
    }
  ],
  "next": "d42324ece4f4d876eab172797278ff428e2175da"
}
