)]}'
{
  "log": [
    {
      "commit": "6d9dbdb5c2197e8b00bd5c0d00632c141c74c8a6",
      "tree": "2ad6d6c7f624578e541295ff90d795f28da9d4c9",
      "parents": [
        "893507a0025244245b2fa68054e200e0a43e2c8b"
      ],
      "author": {
        "name": "Ryan Savitski",
        "email": "rsavitski@google.com",
        "time": "Mon Feb 15 20:23:20 2021 +0000"
      },
      "committer": {
        "name": "Ryan Savitski",
        "email": "rsavitski@google.com",
        "time": "Tue Feb 23 12:41:29 2021 +0000"
      },
      "message": "atrace.rc: allow select tracepoints on release builds\n\nSee the bug and the associated SELinux policy change (aosp/1594256)\nfor context.\n\nBug: 179788446\nChange-Id: I24d94e63b06d0ec2b1b091fd635b9f059df7f75d\nMerged-In: I24d94e63b06d0ec2b1b091fd635b9f059df7f75d\n"
    },
    {
      "commit": "893507a0025244245b2fa68054e200e0a43e2c8b",
      "tree": "63447c75d6a2a12c4add972fadd16385c9cafa80",
      "parents": [
        "6756c76876f6bfa943d3a5b853b3dc0f4ab850ae"
      ],
      "author": {
        "name": "Marco Ballesio",
        "email": "balejs@google.com",
        "time": "Mon Oct 05 12:54:29 2020 -0700"
      },
      "committer": {
        "name": "Ryan Savitski",
        "email": "rsavitski@google.com",
        "time": "Tue Feb 23 12:39:51 2021 +0000"
      },
      "message": "atrace permissions for irq/ipi tracepoints\n\nirq/ipi tracepoints are required for Traceur\u0027s irq category.\n\nBug: 153486528\nTest: grabbed a trace with Traceur on a user build, verified that\nirq/ipi tracepoints were present\n\nChange-Id: I9063060ce1856a7783860fe4a203f075349cbc14\nMerged-In: I9063060ce1856a7783860fe4a203f075349cbc14\n"
    },
    {
      "commit": "6756c76876f6bfa943d3a5b853b3dc0f4ab850ae",
      "tree": "29a9afabec3de22e25d1042cb32b0feb6e4223eb",
      "parents": [
        "3fa63965679f9d16cd597a99a6039573c765b90c",
        "2bd2b2e55a4f7f8a43debbca3c63a794d4973fc3"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Feb 23 05:34:35 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 23 05:34:35 2021 +0000"
      },
      "message": "Merge \"Adjust owners of libmath\""
    },
    {
      "commit": "3fa63965679f9d16cd597a99a6039573c765b90c",
      "tree": "25d7c8e0dae2dfec8351c42e4437e69b5686b589",
      "parents": [
        "33ea854b1f27f9aafbb493cbbe233d19e0d7adfd",
        "a8baab0c852aa88691d3347b53ba573f761084a0"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Feb 22 23:27:41 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 22 23:27:41 2021 +0000"
      },
      "message": "Merge \"Update checking debug.vulkan.layer.* system props\""
    },
    {
      "commit": "a8baab0c852aa88691d3347b53ba573f761084a0",
      "tree": "82fba1561ecbc1cef7a40e94ea2969b6cef03c52",
      "parents": [
        "82a8c40f72529e3e208bed48badee4a26ea7ba4f"
      ],
      "author": {
        "name": "Jason Macnak",
        "email": "natsu@google.com",
        "time": "Fri Feb 19 12:53:47 2021 -0800"
      },
      "committer": {
        "name": "Jason Macnak",
        "email": "natsu@google.com",
        "time": "Mon Feb 22 10:52:22 2021 -0800"
      },
      "message": "Update checking debug.vulkan.layer.* system props\n\n... to scan a fixed range of priorities followed by\nconsecutive priorities instead of scanning all system\nprops (property_list()) which causes sepolicy audits\nwhen Vulkan is loaded in a process with a restrictive\nsepolicy.\n\nThis avoids sepolicy audits in system_server for example\nwhen running on Cuttlefish with SwANGLE (ANGLE GL on top\nof SwiftShader Vulkan).\n\nBug: b/179967574\nTest: boot Cuttlefish with SwANGLE and inspect audit logs\nChange-Id: I63b3f45113fbdd3ab62c22f062150e25b99d7352\n"
    },
    {
      "commit": "33ea854b1f27f9aafbb493cbbe233d19e0d7adfd",
      "tree": "4b876094a5530da6e532634fc90fca9cd6b04de1",
      "parents": [
        "82a8c40f72529e3e208bed48badee4a26ea7ba4f",
        "d687f33dfa7530adc43e8e0114f6f801811b5dd8"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Feb 22 18:30:49 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 22 18:30:49 2021 +0000"
      },
      "message": "Merge \"libbinder_ndk: expose declared services list\""
    },
    {
      "commit": "82a8c40f72529e3e208bed48badee4a26ea7ba4f",
      "tree": "ecfd69eaadb8b15968530a95cd021a601a820cf5",
      "parents": [
        "72ee793760c8fdff1a8a30201cad4742c42c3083",
        "95962e5773e9d556527331fe0489d247e250d5d7"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Sun Feb 21 10:03:21 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Feb 21 10:03:21 2021 +0000"
      },
      "message": "Merge \"Remove unnecessary dependency on libnativehelper.so\""
    },
    {
      "commit": "72ee793760c8fdff1a8a30201cad4742c42c3083",
      "tree": "2839b471f199286375be80dd9bf1343b550758b0",
      "parents": [
        "00d30857431f531412d254ff53888ee4568e71c3",
        "2598f20767c715386f885c322e5d56d56b81a04b"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Sat Feb 20 04:27:31 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 20 04:27:31 2021 +0000"
      },
      "message": "Merge \"surfaceflinger: Enable PGO\""
    },
    {
      "commit": "00d30857431f531412d254ff53888ee4568e71c3",
      "tree": "381b295f77733c36638471a47bb896fea96c0396",
      "parents": [
        "4dcf023690249f751f2da8fe977f2c4404aeab9a",
        "be577f57a4b2351b69ee29daf8a58239fd0795f2"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Fri Feb 19 23:31:28 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 19 23:31:28 2021 +0000"
      },
      "message": "Merge \"Remove ex-OWNERS.\""
    },
    {
      "commit": "be577f57a4b2351b69ee29daf8a58239fd0795f2",
      "tree": "04bc223f7a50711927bb9ff927b1304ff9df8c65",
      "parents": [
        "cc9d967deb444dbaffc3eca059cbc0f1f9a14949"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 19 15:16:38 2021 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 19 15:16:57 2021 -0800"
      },
      "message": "Remove ex-OWNERS.\n\nWe\u0027re just causing confusion for people looking for OWNERS review at\nthis point.\n\nTest: treehugger\nChange-Id: I976bfee13b31747c9ccf46b53847894051c4de22\n"
    },
    {
      "commit": "4dcf023690249f751f2da8fe977f2c4404aeab9a",
      "tree": "63f71a7f49c564d01a116347acf3e3d5b2094457",
      "parents": [
        "3ff5ff6f4fe156f0d3aa8fd2862d2b66c35251ca",
        "6eaa51fd319865ce4f9e63bff78672de8a382e74"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Feb 19 21:59:39 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 19 21:59:39 2021 +0000"
      },
      "message": "Merge \"libbinder: computed DUMP_FLAG_PRIORITY_ALL\""
    },
    {
      "commit": "3ff5ff6f4fe156f0d3aa8fd2862d2b66c35251ca",
      "tree": "322498d742ef6047d5784188da079597de1f18e5",
      "parents": [
        "88acd173c65cc1d6f6154e9e51e36cf0f1ab8a4f",
        "660728196ab800e3e1446980e0a489cd06cd93f4"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Feb 19 19:47:44 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 19 19:47:44 2021 +0000"
      },
      "message": "Merge \"Update for kernel 5.11 binder header.\""
    },
    {
      "commit": "d687f33dfa7530adc43e8e0114f6f801811b5dd8",
      "tree": "7340ddce93b11f94d6481987a86eeb4de6927999",
      "parents": [
        "cc9d967deb444dbaffc3eca059cbc0f1f9a14949"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Feb 19 02:06:48 2021 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Feb 19 19:39:53 2021 +0000"
      },
      "message": "libbinder_ndk: expose declared services list\n\nFixes: 180607992\nTest: libbinder_ndk_unit_test\nChange-Id: Id3ae079ff3bfaf13617ce39c6ed2738d6703fbd4\n"
    },
    {
      "commit": "2598f20767c715386f885c322e5d56d56b81a04b",
      "tree": "6fbe952c2ce9327f552e693b9a3ba6e4f5ba900c",
      "parents": [
        "d40036791bd882431bafb7e5d3401a1661c6e459"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Fri Feb 19 17:48:33 2021 +0800"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Fri Feb 19 18:56:12 2021 +0000"
      },
      "message": "surfaceflinger: Enable PGO\n\nThis CL is no-op without the actual profile checked in.\n\nBug: 175205560\nBug: 180728514\nTest: build\nChange-Id: Ic62de6b423b0c7f96ad6475378bcc74440e93dbf\n"
    },
    {
      "commit": "88acd173c65cc1d6f6154e9e51e36cf0f1ab8a4f",
      "tree": "259d8f9e0348cd173dea876606759de62e943698",
      "parents": [
        "d40036791bd882431bafb7e5d3401a1661c6e459",
        "b320dd66bd7a79c55c1dc98f68a6776b975bc9b4"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri Feb 19 16:20:36 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 19 16:20:36 2021 +0000"
      },
      "message": "Merge \"Add additional owners to RenderEngine\""
    },
    {
      "commit": "2bd2b2e55a4f7f8a43debbca3c63a794d4973fc3",
      "tree": "d90febfb221f0e3d3f360fd077f7abdc5b3b0209",
      "parents": [
        "cc9d967deb444dbaffc3eca059cbc0f1f9a14949"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Feb 19 11:35:23 2021 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Feb 19 11:35:23 2021 +0900"
      },
      "message": "Adjust owners of libmath\n\nRemoving those who no longer work for Android.\nRemoving jiyong who never owned this.\n\nBug: N/A\nTest: N/A\nChange-Id: I22d3da9b850a3175ee7566716b9009590ec91d82\n"
    },
    {
      "commit": "6eaa51fd319865ce4f9e63bff78672de8a382e74",
      "tree": "edc7ee88f61484a787c2048a012c3683fb4d5f1f",
      "parents": [
        "cc9d967deb444dbaffc3eca059cbc0f1f9a14949"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Feb 19 01:27:55 2021 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Feb 19 01:27:55 2021 +0000"
      },
      "message": "libbinder: computed DUMP_FLAG_PRIORITY_ALL\n\nNow that AIDL files can compute based on other constants, we can drop\nthis hardcoded value.\n\nBug: N/A\nTest: static_assert in IServiceManager.cpp checks value is unchanged\nChange-Id: Ib12df37c2a26c8de48f955843405c97b52602299\n"
    },
    {
      "commit": "d40036791bd882431bafb7e5d3401a1661c6e459",
      "tree": "1f12aa83a514653b6a6580e2471dc50e8344b778",
      "parents": [
        "cc9d967deb444dbaffc3eca059cbc0f1f9a14949",
        "b269b585d3919b33ada3432cd15ac2135ad1017b"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 18 23:58:37 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 18 23:58:37 2021 +0000"
      },
      "message": "Merge \"stability log dump interface descriptor\""
    },
    {
      "commit": "b269b585d3919b33ada3432cd15ac2135ad1017b",
      "tree": "c194c672f2bea738fd07c934bb7f1abc8aefb8e2",
      "parents": [
        "85906d7cc766a4380091a5def7f3ea3b44790a53"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Feb 10 17:09:11 2021 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 18 22:08:32 2021 +0000"
      },
      "message": "stability log dump interface descriptor\n\nThis may require another IPC, but one is being made anyway, so we might\nas well get the good log.\n\nBug: 179906909\nTest: N/A\nChange-Id: Ib29d532ca5d7ede4540bd1b42ccebf262d890444\n"
    },
    {
      "commit": "b320dd66bd7a79c55c1dc98f68a6776b975bc9b4",
      "tree": "bbd5ba52631204cdb0660ff2e142f89f907698d6",
      "parents": [
        "cc9d967deb444dbaffc3eca059cbc0f1f9a14949"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 18 14:53:06 2021 +0000"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 18 14:53:11 2021 +0000"
      },
      "message": "Add additional owners to RenderEngine\n\nBug: 180602767\nChange-Id: I79715eb84f07d313d07f5c10207fed2c87559b20\nTest: make\n"
    },
    {
      "commit": "95962e5773e9d556527331fe0489d247e250d5d7",
      "tree": "7ec4dc4224ec8d8a03b30c5374e10bafd93ca7c6",
      "parents": [
        "cc9d967deb444dbaffc3eca059cbc0f1f9a14949"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Feb 18 10:12:53 2021 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Feb 18 10:37:48 2021 +0000"
      },
      "message": "Remove unnecessary dependency on libnativehelper.so\n\nlibnativedisplay is a transitive dependency of bootanimation and\nas libnativehelper.so is in the ART APEX, libnativehelper.so may not\nbe available when bootanimation runs. nativedisplay just depends on\njni.h and the header-only library libnativehelper_header_only.\n\nBug: 179115178\nTest: m\nChange-Id: I3a9f277d27e69b0ff6e9c29c3e2a8a6a7179b9a9\nMerged-In: I3a9f277d27e69b0ff6e9c29c3e2a8a6a7179b9a9\n(cherry-picked from commit e53587b42207c90f3017b4e49d33c568a3c44f00)\n\nChange-Id: I80353136f63f5e12276bce7758b423febb2e3968\n"
    },
    {
      "commit": "660728196ab800e3e1446980e0a489cd06cd93f4",
      "tree": "4084d797b2e817cda215c00228ed8f776832771b",
      "parents": [
        "d5f3d6acbc62beca1eabe9ce656e68bcd6f410a7"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Feb 17 22:19:22 2021 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Feb 17 22:19:22 2021 -0800"
      },
      "message": "Update for kernel 5.11 binder header.\n\nThe TF_CLEAR_BUF value is now in the kernel headers, so remove it from\nthis header.\n\nTest: Builds and boots cuttlefish.\nChange-Id: Ib88c8d93daa98d26798dd38a31f422dcee2594d2\n"
    },
    {
      "commit": "cc9d967deb444dbaffc3eca059cbc0f1f9a14949",
      "tree": "01d13c6534f72553da9e45f681d361a58ecafb7e",
      "parents": [
        "616ddc4f6f6246054db217a4c3a24f5b6f89e13d",
        "d7ad3484a7ad567e8011a047867c552bce1a1050"
      ],
      "author": {
        "name": "Shawn Willden",
        "email": "swillden@google.com",
        "time": "Wed Feb 17 19:12:19 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 17 19:12:19 2021 +0000"
      },
      "message": "Merge \"Add flag for app-generated attest keys.\""
    },
    {
      "commit": "d7ad3484a7ad567e8011a047867c552bce1a1050",
      "tree": "01d13c6534f72553da9e45f681d361a58ecafb7e",
      "parents": [
        "616ddc4f6f6246054db217a4c3a24f5b6f89e13d"
      ],
      "author": {
        "name": "Shawn Willden",
        "email": "swillden@google.com",
        "time": "Tue Feb 16 21:37:02 2021 -0700"
      },
      "committer": {
        "name": "Shawn Willden",
        "email": "swillden@google.com",
        "time": "Wed Feb 17 06:46:32 2021 -0700"
      },
      "message": "Add flag for app-generated attest keys.\n\nTest: N/A\nBug: 163606833\nChange-Id: I3513a007fc02f673ec0376c2c43b22d5d09c2da3\n"
    },
    {
      "commit": "616ddc4f6f6246054db217a4c3a24f5b6f89e13d",
      "tree": "e143d3b63a748a36d1752b81cb18afc4dc6e3e6d",
      "parents": [
        "d5f3d6acbc62beca1eabe9ce656e68bcd6f410a7",
        "5156e5b8910d3e99966de78cb2a5692c4b3aa360"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Wed Feb 17 00:56:20 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 17 00:56:20 2021 +0000"
      },
      "message": "Merge \"libbinder: fix ToString() for smart pointers\""
    },
    {
      "commit": "d5f3d6acbc62beca1eabe9ce656e68bcd6f410a7",
      "tree": "4817efe215640666d0d6227b15db379739bc259e",
      "parents": [
        "d31cbfd7a011b05650a3259cea2a0d0da9e456d4",
        "b1af7834979d29594cd40826d7a60fdb0dca6266"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 16 23:27:24 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 16 23:27:24 2021 +0000"
      },
      "message": "Merge \"Make libbinder_rs be available to the virt APEX\""
    },
    {
      "commit": "d31cbfd7a011b05650a3259cea2a0d0da9e456d4",
      "tree": "98a7cb48ee067a9aefb1d6b2f1c70c8c162f254b",
      "parents": [
        "b88bb6121cc6edb863283f9d114563a0ae611541",
        "9cf9276b0791480aa7dc59e88fa2566bb45e3fa4"
      ],
      "author": {
        "name": "Amos Bianchi",
        "email": "amosbianchi@google.com",
        "time": "Tue Feb 16 20:59:14 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 16 20:59:14 2021 +0000"
      },
      "message": "Merge \"Expose custom lazy service shutdown APIs to stable AIDL.\""
    },
    {
      "commit": "b88bb6121cc6edb863283f9d114563a0ae611541",
      "tree": "2a740e9a1edef5404fdac60814d2954cf48d4037",
      "parents": [
        "f7f4a9afb307d89923da59344481d8a4b52dfd36",
        "3c5382365878ad7950a8744f630b9f6ee4026f7c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 16 14:50:56 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 16 14:50:56 2021 +0000"
      },
      "message": "Merge \"[LSC] Add LOCAL_LICENSE_KINDS to frameworks/native\""
    },
    {
      "commit": "b1af7834979d29594cd40826d7a60fdb0dca6266",
      "tree": "6a9c8501a6dfb00b96ce0f4910c1d5767aa4d1ec",
      "parents": [
        "f7f4a9afb307d89923da59344481d8a4b52dfd36"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Feb 16 13:30:57 2021 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Feb 16 13:30:57 2021 +0900"
      },
      "message": "Make libbinder_rs be available to the virt APEX\n\nvirtmanager is a first binder service in an APEX written in rust.\nlibbinder_rs has to be made available to the APEX.\n\nBug: 180297657\nTest: m com.android.virt\nChange-Id: I4235dd879a237271b6ddf125d370acc3c508ed59\n"
    },
    {
      "commit": "3c5382365878ad7950a8744f630b9f6ee4026f7c",
      "tree": "2a740e9a1edef5404fdac60814d2954cf48d4037",
      "parents": [
        "f7f4a9afb307d89923da59344481d8a4b52dfd36"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Fri Feb 12 21:26:48 2021 -0800"
      },
      "committer": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Mon Feb 15 19:24:54 2021 -0800"
      },
      "message": "[LSC] Add LOCAL_LICENSE_KINDS to frameworks/native\n\nAdded SPDX-license-identifier-Apache-2.0 to:\n  cmds/atrace/Android.bp\n  cmds/bugreport/Android.bp\n  cmds/bugreportz/Android.bp\n  cmds/cmd/Android.bp\n  cmds/dumpstate/Android.bp\n  cmds/dumpsys/Android.bp\n  cmds/dumpsys/tests/Android.bp\n  cmds/flatland/Android.mk\n  cmds/idlcli/Android.bp\n  cmds/installd/Android.bp\n  cmds/installd/tests/Android.bp\n  cmds/ip-up-vpn/Android.mk\n  cmds/lshal/Android.bp\n  cmds/lshal/libprocpartition/Android.bp\n  cmds/rawbu/Android.bp\n  cmds/rss_hwm_reset/Android.bp\n  cmds/service/Android.bp\n  cmds/servicemanager/Android.bp\n  cmds/surfacereplayer/Android.bp\n  cmds/surfacereplayer/replayer/Android.bp\n  libs/adbd_auth/Android.bp\n  libs/android_runtime_lazy/Android.bp\n  libs/arect/Android.bp\n  libs/binder/Android.bp\n  libs/binder/ndk/Android.bp\n  libs/binder/ndk/tests/Android.bp\n  libs/binder/parcel_fuzzer/Android.bp\n  libs/binder/rust/Android.bp\n  libs/binder/rust/tests/Android.bp\n  libs/binder/tests/Android.bp\n  libs/binder/tests/fuzzers/Android.bp\n  libs/binderdebug/Android.bp\n  libs/binderdebug/tests/Android.bp\n  libs/binderthreadstate/1.0/Android.bp\n  libs/binderthreadstate/Android.bp\n  libs/bufferqueueconverter/Android.bp\n  libs/cputimeinstate/Android.bp\n  libs/diskusage/Android.bp\n  libs/dumputils/Android.bp\n  libs/fakeservicemanager/Android.bp\n  libs/gralloc/types/Android.bp\n  libs/gralloc/types/fuzzer/Android.bp\n  libs/gralloc/types/tests/Android.bp\n  libs/graphicsenv/Android.bp\n  libs/gui/Android.bp\n  libs/gui/sysprop/Android.bp\n  libs/gui/tests/Android.bp\n  libs/incidentcompanion/Android.bp\n  libs/input/Android.bp\n  libs/input/tests/Android.bp\n  libs/math/Android.bp\n  libs/math/tests/Android.bp\n  libs/nativebase/Android.bp\n  libs/nativedisplay/Android.bp\n  libs/nativewindow/Android.bp\n  libs/nativewindow/tests/Android.bp\n  libs/renderengine/Android.bp\n  libs/renderengine/tests/Android.bp\n  libs/sensor/Android.bp\n  libs/sensor/tests/Android.bp\n  libs/sensorprivacy/Android.bp\n  libs/ui/Android.bp\n  libs/ui/tests/Android.bp\n  libs/ui/tools/Android.bp\n  libs/vibrator/Android.bp\n  libs/vibrator/fuzzer/Android.bp\n  libs/vr/libpdx/Android.bp\n  libs/vr/libpdx/fuzz/Android.bp\n  libs/vr/libvr_manager/Android.bp\n  opengl/libs/Android.bp\n  opengl/tests/EGLTest/Android.bp\n  opengl/tests/fillrate/Android.bp\n  opengl/tests/finish/Android.bp\n  opengl/tests/gl2_basic/Android.bp\n  opengl/tests/gl2_cameraeye/Android.bp\n  opengl/tests/gl2_copyTexImage/Android.bp\n  opengl/tests/gl2_java/Android.bp\n  opengl/tests/gl2_jni/Android.bp\n  opengl/tests/gl2_yuvtex/Android.bp\n  opengl/tests/gl_jni/Android.bp\n  opengl/tests/gl_perf/Android.bp\n  opengl/tests/gl_perfapp/Android.bp\n  opengl/tests/gl_yuvtex/Android.bp\n  opengl/tests/gldual/Android.bp\n  opengl/tests/gralloc/Android.bp\n  opengl/tests/hwc/Android.bp\n  opengl/tests/lib/Android.bp\n  opengl/tests/lighting1709/Android.bp\n  opengl/tests/linetex/Android.bp\n  opengl/tests/swapinterval/Android.bp\n  opengl/tests/testFramerate/Android.bp\n  opengl/tests/testLatency/Android.bp\n  opengl/tests/testPauseResume/Android.bp\n  opengl/tests/testViewport/Android.bp\n  opengl/tests/textures/Android.bp\n  services/audiomanager/Android.bp\n  services/automotive/display/Android.bp\n  services/batteryservice/Android.bp\n  services/displayservice/Android.bp\n  services/gpuservice/Android.bp\n  services/gpuservice/bpfprogs/Android.bp\n  services/gpuservice/gpumem/Android.bp\n  services/gpuservice/gpustats/Android.bp\n  services/gpuservice/tests/unittests/Android.bp\n  services/gpuservice/tracing/Android.bp\n  services/inputflinger/Android.bp\n  services/inputflinger/benchmarks/Android.bp\n  services/inputflinger/dispatcher/Android.bp\n  services/inputflinger/host/Android.bp\n  services/inputflinger/reader/Android.bp\n  services/inputflinger/reporter/Android.bp\n  services/inputflinger/tests/Android.bp\n  services/inputflinger/tests/fuzzers/Android.bp\n  services/powermanager/Android.bp\n  services/schedulerservice/Android.bp\n  services/sensorservice/Android.bp\n  services/sensorservice/hidl/Android.bp\n  services/sensorservice/tests/Android.bp\n  services/stats/Android.bp\n  services/surfaceflinger/Android.bp\n  services/surfaceflinger/CompositionEngine/Android.bp\n  services/surfaceflinger/TimeStats/Android.bp\n  services/surfaceflinger/TimeStats/timestatsproto/Android.bp\n  services/surfaceflinger/layerproto/Android.bp\n  services/surfaceflinger/sysprop/Android.bp\n  services/surfaceflinger/tests/Android.bp\n  services/surfaceflinger/tests/fakehwc/Android.bp\n  services/surfaceflinger/tests/unittests/Android.bp\n  services/surfaceflinger/tests/vsync/Android.bp\n  services/surfaceflinger/tests/waitforvsync/Android.bp\n  services/utils/Android.bp\n  services/utils/tests/Android.bp\n  services/vr/hardware_composer/Android.bp\n  services/vr/virtual_touchpad/Android.bp\n  vulkan/libvulkan/Android.bp\n  vulkan/nulldrv/Android.bp\n  vulkan/vkjson/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD\n    SPDX-license-identifier-MIT SPDX-license-identifier-Unicode-DFS\n    legacy_notice\nto:\n  Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD\n    SPDX-license-identifier-MIT legacy_notice\nto:\n  opengl/Android.bp\n  opengl/tests/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD\n    legacy_notice\nto:\n  libs/vr/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT\nto:\n  headers/Android.bp\n  services/vr/Android.bp\n  vulkan/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT\n    SPDX-license-identifier-Unicode-DFS\nto:\n  cmds/surfacereplayer/proto/Android.bp\n  libs/vr/libbroadcastring/Android.bp\n  libs/vr/libbufferhub/Android.bp\n  libs/vr/libbufferhubqueue/Android.bp\n  libs/vr/libbufferhubqueue/benchmarks/Android.bp\n  libs/vr/libbufferhubqueue/tests/Android.bp\n  libs/vr/libdisplay/Android.bp\n  libs/vr/libdvr/Android.bp\n  libs/vr/libdvr/tests/Android.bp\n  libs/vr/libdvrcommon/Android.bp\n  libs/vr/libpdx_default_transport/Android.bp\n  libs/vr/libpdx_uds/Android.bp\n  libs/vr/libperformance/Android.bp\n  libs/vr/libvrflinger/Android.bp\n  libs/vr/libvrflinger/tests/Android.bp\n  libs/vr/libvrsensor/Android.bp\n  opengl/tests/configdump/Android.bp\n  opengl/tests/filter/Android.bp\n  opengl/tests/gl_basic/Android.bp\n  opengl/tests/tritex/Android.bp\n  services/vr/bufferhubd/Android.bp\n  services/vr/hardware_composer/aidl/Android.bp\n\nAdded SPDX-license-identifier-BSD SPDX-license-identifier-MIT\n    legacy_notice\nto:\n  opengl/tests/angeles/Android.bp\n\nAdded SPDX-license-identifier-MIT\nto:\n  services/vr/performanced/Android.bp\n\nBug: 68860345\nBug: 151177513\nBug: 151953481\n\nTest: m all\n\nExempt-From-Owner-Approval: janitorial work\n\nChange-Id: Ib1de8cd7b87446de45d79db15cd90b93a591846d\nMerged-in: I61e7702e6b36f218bebc7c87853001861a92741e\nMerged-in: I9d9d5fb32033c08cfb517f6cfc0ecb4cf1eee2fe\nMerged-in: I10f45547b1161e3768a134b38bf40d77a3a82f09\n"
    },
    {
      "commit": "5156e5b8910d3e99966de78cb2a5692c4b3aa360",
      "tree": "2d490b8f9b84729d5e8cb2e33fe68601855a131b",
      "parents": [
        "f7f4a9afb307d89923da59344481d8a4b52dfd36"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Mon Feb 15 12:02:54 2021 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Mon Feb 15 14:47:58 2021 +0900"
      },
      "message": "libbinder: fix ToString() for smart pointers\n\nandroid::internal::ToString() is a helper to provide implementation of\nAIDL-generated type\u0027s toString/gen_log features.\n\nFor now, AIDL IBinder type is mapped to sp\u003cIBinder\u003e in the C++ backend,\nand ToString() handles it as a pointer-like type. But when there\u0027s a\nHIDL-generated toString(sp\u003cIFoo\u003e) function in the same scope, ToString()\ntries to use it for sp\u003cIBinder\u003e because sp\u003cT\u003e can is constuctible from\nsp\u003cU\u003e.\n\nTo avoid such ambiguities,\n- IsPointerLike is checked before HasToStringFunction, so that\nsp\u003cIBinder\u003e is treated as a pointer even when there\u0027s an overloaded\ntoString(sp\u003cT\u003e) function.\n- IsPointerLike now explicitly checks if the target type is an\ninstatiation of of one of android::sp/std::optional/std::shared_ptr.\n\nBug: 179885793\nTest: m\nChange-Id: I884d8be92ed744237d7bf44d381437426f37045a\n"
    },
    {
      "commit": "f7f4a9afb307d89923da59344481d8a4b52dfd36",
      "tree": "42e89f12b3a3b511fc61dcc29a0fb9f30e2087d3",
      "parents": [
        "d098c22c1483802235799c5c87cd8cc17e760a55",
        "69178dc45cccabbca20aaabb54e9e5e841dd8c4f"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Feb 12 21:22:11 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 12 21:22:11 2021 +0000"
      },
      "message": "Merge \"libbinder_ndk\u0027s addService ((warn_unused_result))\""
    },
    {
      "commit": "d098c22c1483802235799c5c87cd8cc17e760a55",
      "tree": "4c20ee23230104da713e306c5e98b7531b679ab7",
      "parents": [
        "7125b188d9c280903d27d5850ef4ca3cb74b8881",
        "49198cf711d05055b7f72a252205707a155b80cb"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Feb 10 22:16:11 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 10 22:16:11 2021 +0000"
      },
      "message": "Merge \"Parcel: add generic readData and writeData methods.\""
    },
    {
      "commit": "7125b188d9c280903d27d5850ef4ca3cb74b8881",
      "tree": "d639a6da19d730f3791ba9b4801db830669d12c8",
      "parents": [
        "4402c50d558b181434c838e53a25099451a4308b",
        "ddb3e6d79951aa07b101b6d6e850eca052f8a0be"
      ],
      "author": {
        "name": "Matthew Maurer",
        "email": "mmaurer@google.com",
        "time": "Wed Feb 10 19:06:53 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 10 19:06:53 2021 +0000"
      },
      "message": "Merge \"libbinder_rs: Add Strong\u003c\u003e and Weak\u003c\u003e Binder references\""
    },
    {
      "commit": "4402c50d558b181434c838e53a25099451a4308b",
      "tree": "a0ff51c33cd2bed2ea70ddf8f97635e3d32bd1dc",
      "parents": [
        "057e0c367676924a97c85c20167e3f6de414a613",
        "80c8aff20b5a30563d52638c2b10cefb6282faba"
      ],
      "author": {
        "name": "Hamzeh Zawawy",
        "email": "hamzeh@google.com",
        "time": "Wed Feb 10 02:31:21 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 10 02:31:21 2021 +0000"
      },
      "message": "Merge changes I8e9c5f78,If48e5ddb\n\n* changes:\n  DO NOT MERGE Add inputflinger InputReader fuzzer\n  DO NOT MERGE Add inputflinger blockingQueue/classifier fuzzers\n"
    },
    {
      "commit": "49198cf711d05055b7f72a252205707a155b80cb",
      "tree": "1043efac03b33d2f9b39988c27d7c74c90723f18",
      "parents": [
        "b14054af960012f0c2b9306dff6593819e864217"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Nov 18 11:02:39 2020 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Feb 09 18:08:00 2021 -0800"
      },
      "message": "Parcel: add generic readData and writeData methods.\n\nThe parameter type drives Parcel serialization for readData and\nwriteData; this simplifies calling and allows generic code to be\nwritten for Parcels.\n\nDocumented parcel data storage.\nRemoved duplicated code.\nUpdated existing interface to call into readData or writeData as needed.\n\nBulk data transfer speed has been improved: For the existing interface,\nbenchmarking shows modest 10% improvement in performance for ByteVectors\nto a 10x speedup for Int32Vectors by direct reading of properly packed\ndata into the array.\n\nAt this time, the generic readData and writeData methods are private,\nused to implement externally facing APIs.\n\nTest: atest aidl_unittests\nTest: atest aidl_integration_test\nTest: atest binderDriverInterfaceTest\nTest: atest binderLibTest\nTest: atest binderParcelBenchmark\nTest: atest binderParcelTest\nTest: atest binderStabilityTest\nBug: 179072375\nChange-Id: Ia2e74d4bb0c0622efdd4ec4cf93441199e96101e\n"
    },
    {
      "commit": "80c8aff20b5a30563d52638c2b10cefb6282faba",
      "tree": "c597c552e40c60dc377bf03f5da97cb78d0cd9b0",
      "parents": [
        "39b87e72ac019e40141777e2a536cd688fe27045"
      ],
      "author": {
        "name": "Michael Ensing",
        "email": "michael.ensing@leviathansecurity.com",
        "time": "Tue Jan 12 16:13:20 2021 -0800"
      },
      "committer": {
        "name": "Hamzeh Zawawy",
        "email": "hamzeh@google.com",
        "time": "Wed Feb 10 00:05:48 2021 +0000"
      },
      "message": "DO NOT MERGE Add inputflinger InputReader fuzzer\n\nThis CL aims to add a fuzzer to test inputflinger\u0027s InputReader\nfunctionality.\n\nTest: Fuzzers tested on a Pixel 3a, and run for approximately 1M\n      iterations each to test stability. Executions/sec vary from\n      ~400-900, depending on the fuzzer.\nSigned-off-by: Michael Ensing \u003cmichael.ensing@leviathansecurity.com\u003e\nChange-Id: I8e9c5f78960dba6d84a46ad7ee46963b3be79fec\n"
    },
    {
      "commit": "39b87e72ac019e40141777e2a536cd688fe27045",
      "tree": "60c8aee5b5a8487e144c7d9b8fc654a166deeceb",
      "parents": [
        "7c58e6569790cd8c42fe6107b2e1ecf460a83ca5"
      ],
      "author": {
        "name": "Michael Ensing",
        "email": "michael.ensing@leviathansecurity.com",
        "time": "Sun Jul 19 17:19:31 2020 -0700"
      },
      "committer": {
        "name": "Hamzeh Zawawy",
        "email": "hamzeh@google.com",
        "time": "Wed Feb 10 00:05:28 2021 +0000"
      },
      "message": "DO NOT MERGE Add inputflinger blockingQueue/classifier fuzzers\n\nThis CL aims to add libfuzzer fuzzers to inputflinger, to test the\nBlockingQueue and InputClassifier objects.\n\nTest: Each fuzzer was tested on a Pixel 3a for a few million\n      iterations to ensure stability. Executions/sec average about\n      500 for the BlockingQueue fuzzer, and ~2000-2500 for the\n      InputClassifier fuzzers.\nSigned-off-by: Michael Ensing \u003cmichael.ensing@leviathansecurity.com\u003e\nChange-Id: If48e5ddbe3066800da88216882ffbbf417dc0d2c\n"
    },
    {
      "commit": "057e0c367676924a97c85c20167e3f6de414a613",
      "tree": "b261ec672cf6fe9f56e85136e59762f7a32ae895",
      "parents": [
        "94be650e36d8573f442b6f90f699f344a266c351",
        "7c58e6569790cd8c42fe6107b2e1ecf460a83ca5"
      ],
      "author": {
        "name": "Hamzeh Zawawy",
        "email": "hamzeh@google.com",
        "time": "Wed Feb 10 00:03:25 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 10 00:03:25 2021 +0000"
      },
      "message": "Merge \"DO NOT MERGE Add initial batch of inputFlinger fuzzers\""
    },
    {
      "commit": "7c58e6569790cd8c42fe6107b2e1ecf460a83ca5",
      "tree": "b15c347f92a25f02c8634ea050630a8cce67a674",
      "parents": [
        "f1cfae86f21f38705aa57b204e38fb7715ae8388"
      ],
      "author": {
        "name": "Michael Ensing",
        "email": "michael.ensing@leviathansecurity.com",
        "time": "Tue May 12 00:41:30 2020 -0700"
      },
      "committer": {
        "name": "Hamzeh Zawawy",
        "email": "hamzeh@google.com",
        "time": "Tue Feb 09 21:49:02 2021 +0000"
      },
      "message": "DO NOT MERGE Add initial batch of inputFlinger fuzzers\n\nThis batch of fuzzers is focused on the input Mappers. These fuzzers are\nnot host_supported, and must be run on-device. Followup CLs containing\nadditional inputflinger fuzzers will rely on the FuzzContainer.h and\nMapperHelpers.h header files.\n\nFuzzers included:\n - CursorInputFuzzer\n - KeyboardInputFuzzer\n - MultiTouchInputFuzzer\n - SwitchInputFuzzer\n\nTest: Tested on a pixel 3a with HWASAN. Accurate % coverage information is\n      not available due to the large number of shared libraries included\n      in runs built with hwasan interfering with PC Count information\n      (increasing the total PC count to ~682,000).\n\nSigned-off-by: Michael Ensing \u003cmichael.ensing@leviathansecurity.com\u003e\nChange-Id: Id39205c691f54c516f8a452293cb098382019335\n"
    },
    {
      "commit": "ddb3e6d79951aa07b101b6d6e850eca052f8a0be",
      "tree": "7d97b591d34c9b25dc7a007535e0c3fc746026fc",
      "parents": [
        "94be650e36d8573f442b6f90f699f344a266c351"
      ],
      "author": {
        "name": "Stephen Crane",
        "email": "sjc@immunant.com",
        "time": "Fri Dec 18 13:27:22 2020 -0800"
      },
      "committer": {
        "name": "Stephen Crane",
        "email": "sjc@immunant.com",
        "time": "Tue Feb 09 12:29:02 2021 -0800"
      },
      "message": "libbinder_rs: Add Strong\u003c\u003e and Weak\u003c\u003e Binder references\n\nAdds Strong\u003cdyn Interface\u003e and Weak\u003cdyn Interface\u003e references for Binder\ninterfaces. These structs are equivalent to sp\u003cInterface\u003e and\nwp\u003cInterface\u003e in C++.\n\nBug: 175584883\nTest: atest -p frameworks/native/libs/binder/TEST_MAPPING\nChange-Id: Icf1b3acf0d8c82d541281a5aae9814372a5ab800\n"
    },
    {
      "commit": "94be650e36d8573f442b6f90f699f344a266c351",
      "tree": "622d75dba9ff8ffaaf9659afd9fa772e9f938d19",
      "parents": [
        "db3bb21b2d1a32530e6138797ba3bd6ad780e673",
        "08e6cf5d7aa77c529bd8548eb86a66c1fdf029b9"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 09 00:42:53 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 09 00:42:53 2021 +0000"
      },
      "message": "Merge \"Stop #define\u0027ing __ANDROID_API__.\""
    },
    {
      "commit": "69178dc45cccabbca20aaabb54e9e5e841dd8c4f",
      "tree": "4bc3372cb382b4c4b3dcb8b99f6704227cec6892",
      "parents": [
        "85906d7cc766a4380091a5def7f3ea3b44790a53"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Feb 09 00:17:29 2021 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Feb 09 00:19:09 2021 +0000"
      },
      "message": "libbinder_ndk\u0027s addService ((warn_unused_result))\n\nBug: 179713096\nTest: mma\nChange-Id: I52daf67faa7e9a519115c3910b186f9a3356955e\n"
    },
    {
      "commit": "08e6cf5d7aa77c529bd8548eb86a66c1fdf029b9",
      "tree": "622d75dba9ff8ffaaf9659afd9fa772e9f938d19",
      "parents": [
        "db3bb21b2d1a32530e6138797ba3bd6ad780e673"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 08 12:37:53 2021 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 08 12:37:53 2021 -0800"
      },
      "message": "Stop #define\u0027ing __ANDROID_API__.\n\nAlso normalize the non-bionic definitions of __INTRODUCED_IN() to match\nthe majority.\n\nBug: http://b/178449269\nTest: treehugger\nChange-Id: I378a6d8a01999958f397c896a375d38a9de43f8f\n"
    },
    {
      "commit": "db3bb21b2d1a32530e6138797ba3bd6ad780e673",
      "tree": "021b4d888b7aa504a6779dc98852e7dacc3c0daa",
      "parents": [
        "c8efe605eee9fa77464667c714206f72f61a1b93",
        "17049435173cc5329e9c26427ad565eafafc530d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 08 18:28:33 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 08 18:28:33 2021 +0000"
      },
      "message": "Merge \"Remove __ANDROID_API__ #if checks.\""
    },
    {
      "commit": "c8efe605eee9fa77464667c714206f72f61a1b93",
      "tree": "bf04a5f9cc3d4cf4394a0599f58497818d18ef89",
      "parents": [
        "dd9c14e9dd9edcaac8051955c2e5a254dc201bfc",
        "6cc34fbf5b9a92f3565c3c1cdbd4755178596aef"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 06 20:40:03 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 06 20:40:03 2021 +0000"
      },
      "message": "Merge \"Remove __ANDROID_API__ #if checks.\""
    },
    {
      "commit": "17049435173cc5329e9c26427ad565eafafc530d",
      "tree": "892decac8c4b5ab3fe2353c7450526b435a7c0e3",
      "parents": [
        "7af525ef9537b6870dd2717ddf59533c06ba17fe"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 05 10:35:26 2021 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Feb 06 06:04:50 2021 +0000"
      },
      "message": "Remove __ANDROID_API__ #if checks.\n\n__INTRODUCED_IN() does the right thing automatically now.\n\nBug: http://b/178449269\nTest: treehugger\nChange-Id: Id8a014ad7cccb80fdd3a33cc4af388e5caf1c6fc\n"
    },
    {
      "commit": "dd9c14e9dd9edcaac8051955c2e5a254dc201bfc",
      "tree": "812479acdd684e1205e29cc39e31d27c119ecf16",
      "parents": [
        "6b9a50419a474d062630a0d1175a50cd35306ce4",
        "5f6a89a232ded2f1025433fa632f19b893bd7d0a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 06 03:20:47 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 06 03:20:47 2021 +0000"
      },
      "message": "Merge \"Set apex_available of libbinder_headers\""
    },
    {
      "commit": "6b9a50419a474d062630a0d1175a50cd35306ce4",
      "tree": "8bcbebdc70f7e0a26eeb40afab8e618b8b6e2396",
      "parents": [
        "85906d7cc766a4380091a5def7f3ea3b44790a53",
        "5dd2e398b7f055b984071415e5881581d47c09ae"
      ],
      "author": {
        "name": "Ady Abraham",
        "email": "adyabr@google.com",
        "time": "Sat Feb 06 00:49:16 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 06 00:49:16 2021 +0000"
      },
      "message": "Merge \"Remove stoza@ from OWNERS\""
    },
    {
      "commit": "85906d7cc766a4380091a5def7f3ea3b44790a53",
      "tree": "ffa68a7dfb98e04859e3e377cc26461331f2c843",
      "parents": [
        "b14054af960012f0c2b9306dff6593819e864217",
        "204e03d09db378908c9e349e5e02385b5945a800"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 05 22:52:29 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 05 22:52:29 2021 +0000"
      },
      "message": "Merge \"Specify version for aidl_interface explicitly\""
    },
    {
      "commit": "6cc34fbf5b9a92f3565c3c1cdbd4755178596aef",
      "tree": "c390ac5085ba14a317d43d641bafbb4534c8c83e",
      "parents": [
        "7af525ef9537b6870dd2717ddf59533c06ba17fe"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 05 10:30:06 2021 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 05 10:30:06 2021 -0800"
      },
      "message": "Remove __ANDROID_API__ #if checks.\n\n__INTRODUCED_IN() does the right thing automatically now.\n\nBug: http://b/178449269\nTest: treehugger\nChange-Id: I905896a65bc5594dad94b4710a12bd03321e0e16\n"
    },
    {
      "commit": "b14054af960012f0c2b9306dff6593819e864217",
      "tree": "d737ef174f0b15ab565b530ab8dc40d8b4ce8baf",
      "parents": [
        "cdec9919a2bb07bdc9e30e16aaaeef732854614a",
        "73a14706d61601d79a96cb219abebe373eb55d54"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Feb 05 16:56:01 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 05 16:56:01 2021 +0000"
      },
      "message": "Merge \"Parcel: Add benchmarking of vector reads and writes\""
    },
    {
      "commit": "5f6a89a232ded2f1025433fa632f19b893bd7d0a",
      "tree": "abf81fe556d0a2da5bf9e43c7a0d62c6fd2d471e",
      "parents": [
        "c183b7c68451c7901f3ace05f63e20011ca188bc"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri Feb 05 15:28:58 2021 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri Feb 05 16:36:36 2021 +0900"
      },
      "message": "Set apex_available of libbinder_headers\n\nlibbinder_headers was available to the APEXes via the hand-written\nallowlist in build/soong/apex/apex.go. Trying to remove the allowlist by\nadding apex_available property to libbinder_headers.\n\nBug: 150999716\nTest: m\nChange-Id: I9f1c6ec20d1c665ff148b3b78b7e01eebde5a229\n"
    },
    {
      "commit": "cdec9919a2bb07bdc9e30e16aaaeef732854614a",
      "tree": "348a3c8e7d21951aeefc5f68e6da531889203695",
      "parents": [
        "c183b7c68451c7901f3ace05f63e20011ca188bc",
        "c7e46c471cca91861bb801001c451d44a2cd6a91"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 05 04:04:33 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 05 04:04:33 2021 +0000"
      },
      "message": "Merge \"libvulkan: revert the false surface support implementation\""
    },
    {
      "commit": "c183b7c68451c7901f3ace05f63e20011ca188bc",
      "tree": "4f45e8933a003fb7e8a2612abf5975262cd31e6f",
      "parents": [
        "b4a281fc4fbf296e9419dabf8a7304d28dcf9d17",
        "dc413663092513d847547f07ea76a06b38ce6af4"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 05 03:34:48 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 05 03:34:48 2021 +0000"
      },
      "message": "Merge changes from topic \"platform_shared\"\n\n* changes:\n  Re-export headers of libbinder from libinstalld\n  Add a shared header lib for libbinder/libbinder_ndk\n"
    },
    {
      "commit": "204e03d09db378908c9e349e5e02385b5945a800",
      "tree": "bc4333a247204dbdd1d71ab8d530717f77aa499d",
      "parents": [
        "827e3d5b7d8beaf915e4d8e3ec15f38cfebb7d3e"
      ],
      "author": {
        "name": "Jeongik Cha",
        "email": "jeongik@google.com",
        "time": "Tue Jan 26 22:34:54 2021 +0900"
      },
      "committer": {
        "name": "Jeongik Cha",
        "email": "jeongik@google.com",
        "time": "Fri Feb 05 00:54:35 2021 +0000"
      },
      "message": "Specify version for aidl_interface explicitly\n\nBug: 150578172\nTest: m\nChange-Id: I5c207e925e833b60adb9d619f423982ac6efb3c6\nMerged-In: If0cfdc35f6383a5140d9e4207e15031f8072d066\n"
    },
    {
      "commit": "b4a281fc4fbf296e9419dabf8a7304d28dcf9d17",
      "tree": "be2ac8cf92b57ebd46ffbb3809f7576ca14ca5ac",
      "parents": [
        "3d1ce7057a35de5ea718d9d25a2b936dac70fa73",
        "aa59d36d40717f3b5129fd2e7eda40f5b5eb9c9b"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 04 23:30:32 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 04 23:30:32 2021 +0000"
      },
      "message": "Merge \"libbinder: Java/C++ *_TRANSACTION parity\""
    },
    {
      "commit": "c7e46c471cca91861bb801001c451d44a2cd6a91",
      "tree": "71980e94e3f997b96a641c9fe52163e23338402c",
      "parents": [
        "3d1ce7057a35de5ea718d9d25a2b936dac70fa73"
      ],
      "author": {
        "name": "Yiwei Zhang",
        "email": "zzyiwei@google.com",
        "time": "Thu Feb 04 22:53:59 2021 +0000"
      },
      "committer": {
        "name": "Yiwei Zhang",
        "email": "zzyiwei@google.com",
        "time": "Thu Feb 04 23:03:50 2021 +0000"
      },
      "message": "libvulkan: revert the false surface support implementation\n\nThe producer has the ultimate decision on what format to allocate and\nproduce, and this api should not check against the existing format on\nthe ANativeWindow.\n\nBug: 77853189\nTest: build\nChange-Id: I8eebea67f417976f4c518f036f8fc014761f781f\n"
    },
    {
      "commit": "3d1ce7057a35de5ea718d9d25a2b936dac70fa73",
      "tree": "61b0df16d30a7b9089df4bde693bf9f4cd5357fe",
      "parents": [
        "e9eb285bf69ed8eb17c247ec3b57840540cb27e8",
        "dbbbc654445405e3d6734c46cc5d46cf1ec8d93b"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 04 22:38:23 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 04 22:38:23 2021 +0000"
      },
      "message": "Merge \"lshal: emphasize HIDL in docs/output\""
    },
    {
      "commit": "5dd2e398b7f055b984071415e5881581d47c09ae",
      "tree": "e6cee57c2478c36d19a0105505969b8e2f792382",
      "parents": [
        "7af525ef9537b6870dd2717ddf59533c06ba17fe"
      ],
      "author": {
        "name": "Dan Stoza",
        "email": "stoza@google.com",
        "time": "Thu Feb 04 12:06:37 2021 -0800"
      },
      "committer": {
        "name": "Dan Stoza",
        "email": "stoza@google.com",
        "time": "Thu Feb 04 20:51:39 2021 +0000"
      },
      "message": "Remove stoza@ from OWNERS\n\nRemoving stoza@ from OWNERS since he\u0027s leaving\n\nBug: N/A\nTest: N/A\nBYPASS_INCLUSIVE_LANGUAGE_REASON\u003dCorrect pronouns for stoza@\nChange-Id: I800d39d2e1d8bde690cae696df38c7e6c6e459a5\n"
    },
    {
      "commit": "e9eb285bf69ed8eb17c247ec3b57840540cb27e8",
      "tree": "0a98f2cc8177bbedb50d8e66badcfda56ad12b29",
      "parents": [
        "24e690681d96dea7ab6735ac37d1abedb79196b1",
        "d7088709fcc9900e96b35cdf839e7aefcafde87c"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 04 20:46:45 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 04 20:46:45 2021 +0000"
      },
      "message": "Merge \"libbinder: test parcel allocted on another thread\""
    },
    {
      "commit": "24e690681d96dea7ab6735ac37d1abedb79196b1",
      "tree": "3733bc5c936c9815913693a7dee716aadcaeb67b",
      "parents": [
        "07278cc954a2f7ebb71130b18b0d3668302c843f",
        "4d22e4a2acf39a845d47495a3dafade912d1b9d5"
      ],
      "author": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Thu Feb 04 17:08:41 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 04 17:08:41 2021 +0000"
      },
      "message": "Merge \"Merge RQ1A.210205.004 to aosp-master - DO NOT MERGE\""
    },
    {
      "commit": "dc413663092513d847547f07ea76a06b38ce6af4",
      "tree": "934ff7563a9be61784c1e9b10d2d50e9773e9e15",
      "parents": [
        "caede598ee66bdda3c69706eed75d39fe9fdecca"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Thu Feb 04 18:18:28 2021 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Thu Feb 04 09:29:32 2021 +0000"
      },
      "message": "Re-export headers of libbinder from libinstalld\n\nInstalld_utils_test includes InstalldNativeService(from libinstalld)\nwhich includes AIDL-generated BnInstalld(depends on libbinder).\n\nWe need either to export libbinder headers from libinstalld or to add\nlibbinder as dependency to installd_utils_test.\n\nThis change re-exports libbinder headers from libinstalld so that its\nclients(installd_utils_test in this case) can use it without additional\ndeps.\n\nBug: none\nTest: m\nChange-Id: I2981e46ee16337d9c9354e1f32b007966b6aa78c\n"
    },
    {
      "commit": "caede598ee66bdda3c69706eed75d39fe9fdecca",
      "tree": "1eada2b1de06f33033f26ac4d2fc7e033c13e2ac",
      "parents": [
        "07278cc954a2f7ebb71130b18b0d3668302c843f"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Thu Feb 04 10:18:37 2021 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Thu Feb 04 15:17:01 2021 +0900"
      },
      "message": "Add a shared header lib for libbinder/libbinder_ndk\n\nThe new header lib will be shared by libbinder and libbinder_ndk.\nWe\u0027ll put shared functionality here.\nFor now, it contains ToString() which is used by AIDL-generated\nparcelables for both C++ and NDK backends.\n\nBug: 179020493\nTest: aidl_integration_test\nChange-Id: I930a334fa6d6f1a7b38729f8df6bcdb202c9f19c\n"
    },
    {
      "commit": "07278cc954a2f7ebb71130b18b0d3668302c843f",
      "tree": "ff0c8b3a63fde7724dd1fd20fd88fd259f402b7d",
      "parents": [
        "9560ed622b40c671765b47b640367120adf276a2",
        "c1f093f6bd6f611c8a22ac786090f132b1325aa7"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 04 02:02:42 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 04 02:02:42 2021 +0000"
      },
      "message": "Merge \"Support building libjnigraphics on the host\""
    },
    {
      "commit": "9560ed622b40c671765b47b640367120adf276a2",
      "tree": "35480a0413bb35dab039a7bee9a03c4c05fcb39d",
      "parents": [
        "0a14f06a1b566a13600879720a784cfeada72bf4",
        "1da80c5047afb7776220e456ebd539338d62a09b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 04 01:13:31 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 04 01:13:31 2021 +0000"
      },
      "message": "Merge \"dumpstate: print DMA-BUF sysfs stats in bugreport\""
    },
    {
      "commit": "9cf9276b0791480aa7dc59e88fa2566bb45e3fa4",
      "tree": "2ef3898b41e5db37d1dbc6dccfbbbf0a6632cad4",
      "parents": [
        "0a14f06a1b566a13600879720a784cfeada72bf4"
      ],
      "author": {
        "name": "Amos Bianchi",
        "email": "amosbianchi@google.com",
        "time": "Tue Jan 26 11:38:58 2021 -0800"
      },
      "committer": {
        "name": "Amos Bianchi",
        "email": "amosbianchi@google.com",
        "time": "Wed Feb 03 17:11:37 2021 -0800"
      },
      "message": "Expose custom lazy service shutdown APIs to stable AIDL.\n\nTest: atest libbinder_ndk_unit_test\nBug: 176239128\nChange-Id: I2d9aa502ff38bc6a045f8c2deac125d17a8d3869\n"
    },
    {
      "commit": "4d22e4a2acf39a845d47495a3dafade912d1b9d5",
      "tree": "8c1c79237897f4142ef4135a1a4be2f7344b11c7",
      "parents": [
        "0a14f06a1b566a13600879720a784cfeada72bf4",
        "9f1c0e6c293d0dcf929cbdb879a35397a8c879f0"
      ],
      "author": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Wed Feb 03 17:01:31 2021 -0800"
      },
      "committer": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Wed Feb 03 17:01:31 2021 -0800"
      },
      "message": "Merge RQ1A.210205.004 to aosp-master - DO NOT MERGE\n\nMerged-In: I775a1697595929aaf1258d48f45676ec18065cff\nMerged-In: I8a85cb252e7f8977bf8e86651005d74e7b4c2e8c\nChange-Id: If4a2f2b8f8b9bcd144cfef37be1a78906cc14d2f\n"
    },
    {
      "commit": "0a14f06a1b566a13600879720a784cfeada72bf4",
      "tree": "d43dd70935f6b95fbfd01e7c061a8c3e63423dfa",
      "parents": [
        "7af525ef9537b6870dd2717ddf59533c06ba17fe",
        "d163b11e2b6eb2f9e0cd0b38edc6a3f0fc701e31"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Thu Feb 04 00:38:15 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 04 00:38:15 2021 +0000"
      },
      "message": "Merge \"Add feature definition for devices that support IMS single registration\""
    },
    {
      "commit": "c1f093f6bd6f611c8a22ac786090f132b1325aa7",
      "tree": "71dfcfe7dccae5c0e15544c5b1c692d635b92701",
      "parents": [
        "7af525ef9537b6870dd2717ddf59533c06ba17fe"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Jan 08 14:25:31 2021 -0500"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 04 00:35:30 2021 +0000"
      },
      "message": "Support building libjnigraphics on the host\n\nBug: 169137236\nTest: SANITIZE_HOST\u003daddress make imagedecoder_fuzzer\n\nAlong with a change in frameworks/base\n(I0ffc4e90b4083db79fbb12012e2e1284206b43e3), this will make it possible\nto run imagedecoder_fuzzer on the host, for faster fuzzing.\n\nimagedecoder.h:\n- define __ANDROID_API__ and __INTRODUCED_IN on non-Android systems, so\n  methods can be called on those systems.\n\nbitmap.h:\n- define __ANDROID_API__ and __INTRODUCED_IN on non-Android systems, so\n  methods can be called on those systems.\n- include \u003cstddef.h\u003e, which is needed on non-Android systems for size_t.\n- on Android, unguard types and enums for easier opportunistic usage via\n  dlsym.\n\nnativewindow/Android.bp\n- make libnativewindow_headers host_supported, so that libjnigraphics\n  can access android/data_space.h\n\nBug: http://b/179303032\nChange-Id: Iefdb4132d6f10f9164be85f4dc6e11883f6fd37e\nMerged-In: Iefdb4132d6f10f9164be85f4dc6e11883f6fd37e\n"
    },
    {
      "commit": "7af525ef9537b6870dd2717ddf59533c06ba17fe",
      "tree": "a29e1222da45fb38b09adcb26b0a9b34118193e4",
      "parents": [
        "6c32ccba1781a8c0bfa0f0e0965c3e20d997b37e",
        "b7425079bf06c494a4b5e190598c51148361dc64"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 03 22:22:24 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 03 22:22:24 2021 +0000"
      },
      "message": "Merge \"Remove __ANDROID_API__ #if checks.\""
    },
    {
      "commit": "6c32ccba1781a8c0bfa0f0e0965c3e20d997b37e",
      "tree": "6034ec933bc47eed07d1f94d1b282976abc0a621",
      "parents": [
        "b54c4d3712936f84deacda2b3c37eee7f80a818c",
        "413a00e43e58a573189cec268d8052d62ba8e405"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Feb 03 18:46:50 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 03 18:46:50 2021 +0000"
      },
      "message": "Merge \"binder: race condition by parcel finalize\""
    },
    {
      "commit": "d7088709fcc9900e96b35cdf839e7aefcafde87c",
      "tree": "cc009191474484fb96cda93b7b644235879133b5",
      "parents": [
        "413a00e43e58a573189cec268d8052d62ba8e405"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Jan 13 00:27:00 2021 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Feb 03 18:36:31 2021 +0000"
      },
      "message": "libbinder: test parcel allocted on another thread\n\nThis shouldn\u0027t ordinarily be done, but it does in Java, and it may be\ndone in the future if we cache Parcel objects in the NDK/Rust backends.\nSo, using the API which we test in Java there to fix the problem.\n\nBug: 139327211\nTest: atest binderLibTest\nChange-Id: Ia60ebb91bf70d30f7183ce55ae4f0c6e8e0a7a24\n"
    },
    {
      "commit": "b54c4d3712936f84deacda2b3c37eee7f80a818c",
      "tree": "b526a3bb5c83a8940ff062ecf95c22e2bab5c82b",
      "parents": [
        "63e30d9a38fbbff54cca1bf94dea8b4057b62151",
        "a840689272abd235904f07a700335fcf8615935a"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Wed Feb 03 17:53:11 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 03 17:53:11 2021 +0000"
      },
      "message": "Merge \"Fix warnings in libs/binder.\""
    },
    {
      "commit": "63e30d9a38fbbff54cca1bf94dea8b4057b62151",
      "tree": "06cf1352aeb3a9da04f0cb79c7af78ddfbb8db00",
      "parents": [
        "bd18538fd8834c4f064167005d2f9fbe55558d53",
        "69492e9372b8cca25fa4964eac1ab3138f51f006"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 03 16:42:01 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 03 16:42:01 2021 +0000"
      },
      "message": "Merge \"Limited use key: feature files\""
    },
    {
      "commit": "bd18538fd8834c4f064167005d2f9fbe55558d53",
      "tree": "4d74ad6ae362462c11f15e2ba907ff24764bc090",
      "parents": [
        "1fe4c9f19e4355c0410d46abf339b4addb2b55c3",
        "45caa84d2d7d55e6fa74f66cfe30c0169a8cc38d"
      ],
      "author": {
        "name": "Rafal Slawik",
        "email": "rslawik@google.com",
        "time": "Wed Feb 03 06:23:59 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 03 06:23:59 2021 +0000"
      },
      "message": "Merge \"Check if CPU time tracking is expected to work\""
    },
    {
      "commit": "a840689272abd235904f07a700335fcf8615935a",
      "tree": "e2df8a5e89ee691af421724f1d2e3d7c2c24dad8",
      "parents": [
        "1fe4c9f19e4355c0410d46abf339b4addb2b55c3"
      ],
      "author": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Tue Feb 02 17:59:43 2021 -0800"
      },
      "committer": {
        "name": "Krzysztof Kosiński",
        "email": "krzysio@google.com",
        "time": "Tue Feb 02 17:59:43 2021 -0800"
      },
      "message": "Fix warnings in libs/binder.\n\nTest: mm\nChange-Id: Ia1387dcfbc789914c4fba80193f4e36d60fec88e\n"
    },
    {
      "commit": "aa59d36d40717f3b5129fd2e7eda40f5b5eb9c9b",
      "tree": "fcf4abefa30aa2d1d5e38387a99099fc3c863642",
      "parents": [
        "c282248fd7c6d1e8a4fa2f4a91e52186aee52082"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Feb 03 00:16:29 2021 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Feb 03 00:46:52 2021 +0000"
      },
      "message": "libbinder: Java/C++ *_TRANSACTION parity\n\nTWEET_TRANSACTION and LIKE_TRANSACTION have long been Java-only features\nin Android. Though, by all accounts, it has been 9.5 years since their\ninclusion, and the social landscape has been made portrait (and back and\nforth, and back and forth, and so goes the pendelum of time), the\nmanaged app, now (!) every binder and daemon, every process, thread,\nevery fiber, every bound iface, whether preinstalled or downloaded,\nenjoys itself a quiet smile or a chuckle or a warm feeling in its heart\nat the directed tweet (or cold rage or fury when the need to argue\narises!). Same too, with the ready-fire like, an uncrafted promotor of\nunconstrained joy and appreciation for the IPCs or APIs, carefully\ncrafted and readily available, or the interesting return value, or heck,\nmaybe even the timing or just for the lols!\n\nThough, due to timing constraints (and the NDK/Rust backend\nabstraction from transaction codes in favor of function APIs which\nencode the protocol of these functions), Android S might not see this\nfunctionality there, it is a future consideration.\n\nFixes: 178706440\nTest: N/A\nChange-Id: I3f628c747b70a77e199abc7252a56fdc36ef4308\n"
    },
    {
      "commit": "dbbbc654445405e3d6734c46cc5d46cf1ec8d93b",
      "tree": "54b491ac8076ead99e8c8122e0c2bdc57f3552b3",
      "parents": [
        "c282248fd7c6d1e8a4fa2f4a91e52186aee52082"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Feb 02 23:02:38 2021 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Feb 02 23:25:39 2021 +0000"
      },
      "message": "lshal: emphasize HIDL in docs/output\n\nSome IMs floating about this recently. For now, lshal is still HIDL\nspecific and binder-facing tools work with AIDL HALs.\n\nIt remains to be seen if lshal will be re-adapted for AIDL in the\nfuture, or if some of the ideas here will be transfered to dumpsys and\nthis binary ultimately deprecated.\n\nBug: N/A\nTest: lshal/lshal --help\nChange-Id: I39be9533b44c085a0688eb39171a0a40f88067b2\n"
    },
    {
      "commit": "73a14706d61601d79a96cb219abebe373eb55d54",
      "tree": "a83023d9697ececb8eb51046911c40a2b587d4ed",
      "parents": [
        "2ac99ed55354d58913a46b01fefb6f4ee4bf9a36"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Nov 24 13:04:46 2020 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Feb 02 15:23:22 2021 -0800"
      },
      "message": "Parcel: Add benchmarking of vector reads and writes\n\nTest: atest binderParcelBenchmark\nBug: 179072375\nChange-Id: I7db425b49e4a3c650b4ec7ae8d21eaa09e4e0327\n"
    },
    {
      "commit": "69492e9372b8cca25fa4964eac1ab3138f51f006",
      "tree": "d386604f789a53bb1f2d7e63986f1d4e47057382",
      "parents": [
        "1fe4c9f19e4355c0410d46abf339b4addb2b55c3"
      ],
      "author": {
        "name": "Qi Wu",
        "email": "siofive@google.com",
        "time": "Sat Jan 16 23:39:48 2021 +0800"
      },
      "committer": {
        "name": "Qi Wu",
        "email": "siofive@google.com",
        "time": "Tue Feb 02 18:13:01 2021 +0000"
      },
      "message": "Limited use key: feature files\n\nAdd files for limited use key feature. So that the app\ndeveloper can know whether KeyMint cannot enforce this\nfeature in hardware, can only enforce when count \u003d\u003d 1\nor can enforce with any number of count(\u003e\u003d1).\n\nTest: compile\nChange-Id: I33349c4f968fa7b16055acd3db2e0cb80c0c5df1\nMerged-In: I33349c4f968fa7b16055acd3db2e0cb80c0c5df1\n"
    },
    {
      "commit": "1fe4c9f19e4355c0410d46abf339b4addb2b55c3",
      "tree": "2192e518bdaf666fe9b08663bc5dd3dc2405ca17",
      "parents": [
        "2ea3652017e7bdbb73e6850d0a999ca4834870ac",
        "bf00bf32a70aedca874f6f8b0f78e2260b95ec3b"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Feb 02 01:35:22 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 02 01:35:22 2021 +0000"
      },
      "message": "Merge \"Remove unused update_out_oat_access_times.\""
    },
    {
      "commit": "2ea3652017e7bdbb73e6850d0a999ca4834870ac",
      "tree": "a70b2985e81bdfbe3c280b0ce039ed028f7a9858",
      "parents": [
        "a9a7a83809821c7b6bda3bdb3d858840e83a279f",
        "1c1d4c71c2178b888f07fb806c89fef2bcf3a41c"
      ],
      "author": {
        "name": "Ady Abraham",
        "email": "adyabr@google.com",
        "time": "Tue Feb 02 01:14:12 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 02 01:14:12 2021 +0000"
      },
      "message": "Merge \"Ensure that expected present time is in the future\""
    },
    {
      "commit": "1c1d4c71c2178b888f07fb806c89fef2bcf3a41c",
      "tree": "a70b2985e81bdfbe3c280b0ce039ed028f7a9858",
      "parents": [
        "a9a7a83809821c7b6bda3bdb3d858840e83a279f"
      ],
      "author": {
        "name": "Snild Dolkow",
        "email": "snild@sony.com",
        "time": "Fri Jan 22 14:42:08 2021 +0100"
      },
      "committer": {
        "name": "Ady Abraham",
        "email": "adyabr@google.com",
        "time": "Tue Feb 02 00:50:00 2021 +0000"
      },
      "message": "Ensure that expected present time is in the future\n\nonMessageInvalidate() sets mExpectedPresentTime to a value originating\nfrom the vsync event that scheduled it. If handling of the invalidate\nis delayed, this value will be in the past, which is clearly not a\nplausible present time. Because of this, queued frames may incorrectly\nbe ignored as \"too early\".\n\nThis has caused problems in screen-on animations: even though the first\nframe is drawn and ready, SurfaceFlinger shows an old frame. This looks\nparticularly bad with a fade-from-black animation: the old frame flashes\nby before the first frame of the animation shows.\n\nHere\u0027s an example timeline of how this problem could manifest:\n\n 1000 ms    INVALIDATE queued with expectedVSyncTimestamp \u003d 1010ms\n 1013 ms    SF calls setPowerMode()\n 1014 ms    SystemUI queues new NotificationShade frame\n 1255 ms    setPowerMode() returns; invalidate can now be handled\n 1256 ms    invalidate runs; mExpectedPresentTime set to 1010ms\n 1257 ms    handlePageFlip() skips NotificationShade frame; \"too early\"\n 1259 ms    refresh runs, composits prehistoric NotificationShade frame\n\nIt\u0027s a bit of a race: if SystemUI manages to queue its new frame before\nthe INVALIDATE message\u0027s timestamp, there won\u0027t be a problem.\n\nTo solve this, let\u0027s check that the expected present time is in the\nfuture, and pick the nearest future vsync point if it\u0027s not. In order\nto not break frame miss detection, mScheduledPresentTime is introduced\nand used instead of mExpectedPresentTime for jank calculations.\n\nFixes: 178415552\nTest: manual on Xperia device; flash of old frame is gone\nTest: compiles on aosp/redfin\nChange-Id: I095f1dd08374fd1d14552cd1af90d95e9718b4dd\nMerged-In: I095f1dd08374fd1d14552cd1af90d95e9718b4dd\n"
    },
    {
      "commit": "a9a7a83809821c7b6bda3bdb3d858840e83a279f",
      "tree": "0a254176cf0f432ac1c370e32a64bb4126529bde",
      "parents": [
        "bcb89efed816dfb202844b3feb048ed23a764ae0",
        "f3d9aa5eaaa2c727e856574a88fa4a32ae6e2396"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Feb 02 00:47:11 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 02 00:47:11 2021 +0000"
      },
      "message": "Merge changes I562f7fd1,I0ab1ed86\n\n* changes:\n  Remove in-process transaction log.\n  Do not test panic capture in Rust.\n"
    },
    {
      "commit": "f3d9aa5eaaa2c727e856574a88fa4a32ae6e2396",
      "tree": "0a254176cf0f432ac1c370e32a64bb4126529bde",
      "parents": [
        "6fc80d6348df26178aef6e2092b32b90fde6a272"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Jan 28 16:38:19 2021 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Feb 01 22:35:24 2021 +0000"
      },
      "message": "Remove in-process transaction log.\n\nThis is used in production as a means to go between languages\n(rust\u003c-\u003eC++) in keystore.\n\nBug: N/A\nTest: N/A\nChange-Id: I562f7fd15d9b85e065074abf7b80e4d439432730\n"
    },
    {
      "commit": "6fc80d6348df26178aef6e2092b32b90fde6a272",
      "tree": "f43f5b7081cfa664073ce44755cab83fda578372",
      "parents": [
        "bcb89efed816dfb202844b3feb048ed23a764ae0"
      ],
      "author": {
        "name": "Matthew Maurer",
        "email": "mmaurer@google.com",
        "time": "Mon Feb 01 13:23:23 2021 -0800"
      },
      "committer": {
        "name": "Matthew Maurer",
        "email": "mmaurer@google.com",
        "time": "Mon Feb 01 14:02:10 2021 -0800"
      },
      "message": "Do not test panic capture in Rust.\n\nWe have switched panic strategy to abort rather than unwind. This\nprevents the previously tested behavior from working correctly.\n\nBug: 178577888\nTest: atest rustBinderSerializationTest\nChange-Id: I0ab1ed86ed1264054f43a9655185496d9c8b6328\n"
    },
    {
      "commit": "bcb89efed816dfb202844b3feb048ed23a764ae0",
      "tree": "0d0288694e1fffcbd4793db388904bc6021c85aa",
      "parents": [
        "2ac99ed55354d58913a46b01fefb6f4ee4bf9a36",
        "a5d864b59e5e3c29e6d334e6ba96e3ddf13a95cb"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Mon Feb 01 21:22:39 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 01 21:22:39 2021 +0000"
      },
      "message": "Merge \"Remove audio HAL V2 from \"interfaces to dump\"\""
    },
    {
      "commit": "b7425079bf06c494a4b5e190598c51148361dc64",
      "tree": "f97c8504c87feff37c1910a0d8997e5e1f4e15fb",
      "parents": [
        "7dfe58cc10486fb3a06309aaf5abfc4290c6931c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jan 26 14:55:48 2021 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 01 11:42:45 2021 -0800"
      },
      "message": "Remove __ANDROID_API__ #if checks.\n\n__INTRODUCED_IN() does the right thing automatically now.\n\nBug: http://b/178449269\nTest: treehugger\nChange-Id: I94d2ad6fafb6d907793a416db82a9e56f4f61d1c\nMerged-In: I94d2ad6fafb6d907793a416db82a9e56f4f61d1c\n"
    },
    {
      "commit": "a5d864b59e5e3c29e6d334e6ba96e3ddf13a95cb",
      "tree": "0d0288694e1fffcbd4793db388904bc6021c85aa",
      "parents": [
        "2ac99ed55354d58913a46b01fefb6f4ee4bf9a36"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Jan 14 01:57:05 2021 +0000"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Sat Jan 30 01:01:01 2021 +0000"
      },
      "message": "Remove audio HAL V2 from \"interfaces to dump\"\n\nThis version is deprecated, not supported in Android S.\n\nBug: 171260360\nTest: m\nChange-Id: Ida070506f296c676f663c89778b295691c562cac\n"
    },
    {
      "commit": "2ac99ed55354d58913a46b01fefb6f4ee4bf9a36",
      "tree": "707aff8cbb005730d90b68332676076a99c0c4f5",
      "parents": [
        "21474550bc37ccb8524dc49c702b1f735376f5eb",
        "3ea4327dc0766ac345f0b0c605f32ac6930044b7"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jan 29 21:24:26 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 29 21:24:26 2021 +0000"
      },
      "message": "Merge \"ServiceManager: support debug dump w/ PIDs\""
    },
    {
      "commit": "45caa84d2d7d55e6fa74f66cfe30c0169a8cc38d",
      "tree": "b88c20dac6112e2736c6afebe691d5325e375edc",
      "parents": [
        "21474550bc37ccb8524dc49c702b1f735376f5eb"
      ],
      "author": {
        "name": "Rafal Slawik",
        "email": "rslawik@google.com",
        "time": "Fri Jan 29 12:25:56 2021 +0000"
      },
      "committer": {
        "name": "Rafal Slawik",
        "email": "rslawik@google.com",
        "time": "Fri Jan 29 12:25:56 2021 +0000"
      },
      "message": "Check if CPU time tracking is expected to work\n\nThis check will allow statsd to decide whether it should add a puller\nfor total CPU time tracking. Reading total CPU time on devices that does\nnot support CPU time tracking is wasteful, passing all zero times around\nand recording \"no data\" state.\n\nBug: 174245730\nTest: atest libtimeinstate_test\nTest: cmd stats pull-source 10095\nChange-Id: Ib6155af4cbd6c639d356118934237d7dfd76b3a8\n"
    },
    {
      "commit": "21474550bc37ccb8524dc49c702b1f735376f5eb",
      "tree": "d94b5498d5d93265df08d3879e8e974d07bc0eea",
      "parents": [
        "c282248fd7c6d1e8a4fa2f4a91e52186aee52082",
        "1742c1bb8abe1f8c5d1dcb4f8e0c53174e06ff46"
      ],
      "author": {
        "name": "Rhed Jao",
        "email": "rhedjao@google.com",
        "time": "Fri Jan 29 01:03:22 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 29 01:03:22 2021 +0000"
      },
      "message": "Merge \"Fixes presubmit test flaky in dumpstate\""
    },
    {
      "commit": "3ea4327dc0766ac345f0b0c605f32ac6930044b7",
      "tree": "d26d70b69408c0e4aaf73dffcfad818094191b46",
      "parents": [
        "c282248fd7c6d1e8a4fa2f4a91e52186aee52082"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Jan 28 22:49:28 2021 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Jan 28 22:51:23 2021 +0000"
      },
      "message": "ServiceManager: support debug dump w/ PIDs\n\nTo enable binder service-name based dumps of services when the same\ninterface might be registered from multiple different processes.\n\nThe getDebugPid command can\u0027t be sent instead to specific instances,\nsince if they are hung, the PID couldn\u0027t be retrieved.\n\nFor partiy w/ HIDL, this uses the \u0027list\u0027 selinux permission to control\nreading debug dumps.\n\nBug: 175322136\nTest: using this info to dump AIDL HALs in ANR\nChange-Id: I4bc7c2df5faa6be1cdcc69b2a7fc882293f1d249\n"
    },
    {
      "commit": "1742c1bb8abe1f8c5d1dcb4f8e0c53174e06ff46",
      "tree": "4b50552415487e024dd7d79e3ab5bd6676eaa842",
      "parents": [
        "73ab3a30ac6a1dd63f9257a091546f10cfa51811"
      ],
      "author": {
        "name": "Rhed Jao",
        "email": "rhedjao@google.com",
        "time": "Wed Jan 27 19:18:52 2021 +0800"
      },
      "committer": {
        "name": "Rhed Jao",
        "email": "rhedjao@google.com",
        "time": "Thu Jan 28 10:38:01 2021 +0800"
      },
      "message": "Fixes presubmit test flaky in dumpstate\n\nThe test assert that file size of primary.prof in the\n`FS/data/misc/profiles/cur/0/com.android.phone/` should\nbe greater than 0. This behavior depends on art module,\nand it\u0027s not always true. Updates the test to assert\nthe file should exist.\n\nBug: 178561542\nTest: atest dumpstate_smoke_test\nChange-Id: I1038c6c10c320cd98fa97f0890fff7f64e29e731\n"
    },
    {
      "commit": "d163b11e2b6eb2f9e0cd0b38edc6a3f0fc701e31",
      "tree": "adb92c0564de3de550aa0fdf891e6ec18035e933",
      "parents": [
        "827e3d5b7d8beaf915e4d8e3ec15f38cfebb7d3e"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Wed Jan 27 23:55:21 2021 +0000"
      },
      "committer": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Wed Jan 27 23:55:21 2021 +0000"
      },
      "message": "Add feature definition for devices that support IMS single registration\n\nDefines a feature for devices to declare that they have an IMS stack\nthat supports a single IMS registration for all IMS applications\nusing the AOSP APIs.\n\nBug: 173715911\nTest: manual\nChange-Id: I6205be7f3c2e9a0a3e716a9486c6730bfc5d90cf\n"
    },
    {
      "commit": "c282248fd7c6d1e8a4fa2f4a91e52186aee52082",
      "tree": "14506406f3b61a4d669217f8ae5df38a8c4cfccd",
      "parents": [
        "6e95c696efb5d1805bbe1c22c8f40c77cb2d609f",
        "a5ca7665cdb316e51842a32f38b345641c5ac27a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 27 00:03:15 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 27 00:03:15 2021 +0000"
      },
      "message": "Merge \"Avoid integer underflow involving maxFreqCount.\""
    },
    {
      "commit": "6e95c696efb5d1805bbe1c22c8f40c77cb2d609f",
      "tree": "be02de1a8e8d46df07bd61492a04ee45c830bfe1",
      "parents": [
        "7dfe58cc10486fb3a06309aaf5abfc4290c6931c",
        "707840a56beb522234976dbee16015acd777b415"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 26 23:05:59 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 26 23:05:59 2021 +0000"
      },
      "message": "Merge \"SurfaceFlinger: VSyncPredictor should be robust with inconsistent vsyncs\""
    },
    {
      "commit": "a5ca7665cdb316e51842a32f38b345641c5ac27a",
      "tree": "edfd819778063889b03cf7f5fb72f4ba0f912582",
      "parents": [
        "7c9b62c53bba7552fbc4a8355a3f3de50b4f57f1"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Tue Jan 26 11:56:58 2021 -0800"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Tue Jan 26 12:09:59 2021 -0800"
      },
      "message": "Avoid integer underflow involving maxFreqCount.\n\nIf a device does not have any policy directories under\n/sys/devices/system/cpu/cpufreq this would previously lead to the\ncputimeinstate subsystem being initialized with an empty set of policy\nfrequencies. This would lead to integer underflows in various loops\nthat enumerate the frequencies when subtracting 1 from a maxFreqCount\nvariable calculated as 0, resulting in us spending a significant amount\nof time in these loops, likely leading to an ANR in system_server\nsince at least the loop in clearUidTimes is executed while holding the\nBatteryStatsImpl lock. Fix the problem by skipping the initialization\nof cputimeinstate if there are no policy directories.\n\nBug: 142352330\nBug: 178231152\nChange-Id: I2ec1e8de0fe2a40ed100c8f14e6ca3f6d6285b82\n"
    },
    {
      "commit": "7dfe58cc10486fb3a06309aaf5abfc4290c6931c",
      "tree": "0ad0fbd8e62a6cdb61ddf2ffb8e009bff8b26247",
      "parents": [
        "827e3d5b7d8beaf915e4d8e3ec15f38cfebb7d3e",
        "f21c54e464b5c2be39e7ab6f2b3f656c5984d937"
      ],
      "author": {
        "name": "Kalesh Singh",
        "email": "kaleshsingh@google.com",
        "time": "Tue Jan 26 14:33:39 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 26 14:33:39 2021 +0000"
      },
      "message": "Merge \"Add mm_events trace instance\""
    }
  ],
  "next": "bf00bf32a70aedca874f6f8b0f78e2260b95ec3b"
}
