)]}'
{
  "log": [
    {
      "commit": "3aeebcf74e2409e22dd59edc393a5db90f2d28f6",
      "tree": "de82950d8537f8a12dad888c4f131e45e0a244d7",
      "parents": [
        "2d7c05873a2db094b446a83058870281fe7629b3",
        "f3ed806737b67d1220944145f458eb364d47bacc"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 31 20:24:14 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 31 20:24:14 2021 +0000"
      },
      "message": "Merge \"libbinder_ndk: allow disabling interface token\""
    },
    {
      "commit": "2d7c05873a2db094b446a83058870281fe7629b3",
      "tree": "201cbc3f29324c0c9a4d460f5a18bf1f7ab8ce12",
      "parents": [
        "1ed06aac9d9ccec98c1754d669ad15b228002323",
        "af1fa6c7c79007e592843a7867c058b035846b90"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 31 16:48:37 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 31 16:48:37 2021 +0000"
      },
      "message": "Merge \"libbinder: include full error if cannot init\""
    },
    {
      "commit": "1ed06aac9d9ccec98c1754d669ad15b228002323",
      "tree": "f087e8fa40d01a9525bb37f7e8f4294869a1ec9e",
      "parents": [
        "3c40080715ea3fd2c942f87e7360ce94d2d9f67c",
        "139913a0e5a285b159525c9cbc7ce0e08e7afe36"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 31 01:32:27 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 31 01:32:27 2021 +0000"
      },
      "message": "Merge \"libbinder: use flexible array member instead of 0 sized array\""
    },
    {
      "commit": "af1fa6c7c79007e592843a7867c058b035846b90",
      "tree": "c875d05f4e3ede27d14c409b6bad3ac2eb3d2de7",
      "parents": [
        "f3af176ff16d9faf0e5198d55f0fa7c9c9daf372"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Aug 30 13:21:48 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Aug 30 20:48:24 2021 +0000"
      },
      "message": "libbinder: include full error if cannot init\n\nWe\u0027ve seen a few cases of the \"Binder driver could not be opened\" error\nappearing in production, but in most of these contexts, we don\u0027t\nactually have access to the full logs (we only have the tombstone).\nHowever, all of the different errors that could happen (running out of\nFDs, failure to mmap, etc..) would be logged previously. Now, the error\nis kept, and it is included in the tombstone.\n\nBug: 197637414 (and many others)\nTest: boot, binderLibTest\nTest: manually verify error is printed (we don\u0027t have an existing test to put this in because\n  ProcessState can only be initialized once):\n    Binder driver \u0027/dev/null\u0027 could not be opened. Terminating: Binder ioctl to obtain version failed: Inappropriate ioctl for device\nMerged-In: I636f1c5bfa9c8932e3db3d84af46ce3b0f1e98bc\nChange-Id: I636f1c5bfa9c8932e3db3d84af46ce3b0f1e98bc\n"
    },
    {
      "commit": "f3ed806737b67d1220944145f458eb364d47bacc",
      "tree": "b6b1a771f1f9cee232b843fcf0d2828e9d2c37c4",
      "parents": [
        "f3af176ff16d9faf0e5198d55f0fa7c9c9daf372"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Aug 27 14:31:14 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Aug 30 10:06:05 2021 -0700"
      },
      "message": "libbinder_ndk: allow disabling interface token\n\nFor compatibility with Java interfaces which don\u0027t use interface tokens.\n\nTest: CtsNdkBinderTestCases\nBug: 188022639\nChange-Id: I77642427993f37971b4b5b5928fc4a3688f17e42\n"
    },
    {
      "commit": "3c40080715ea3fd2c942f87e7360ce94d2d9f67c",
      "tree": "67bfb6de417d79d4f2e0677aba4161251c109b4d",
      "parents": [
        "060d7f3321dd26e6d19f12a0b12a5aab13d99ffe",
        "ecf937dd80999d2b37c5b44cda1065bfd4da42fb"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Aug 27 22:07:21 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 27 22:07:21 2021 +0000"
      },
      "message": "Merge \"binder: RpcServer / RpcSession add API for certs.\""
    },
    {
      "commit": "060d7f3321dd26e6d19f12a0b12a5aab13d99ffe",
      "tree": "90f148d2eaa0821f1dc12c626cd60c9297f14964",
      "parents": [
        "b0a8f735abc55d369b2cdaaf8fe7bf67b49b13ca",
        "ac421259aac7c192bec6c873ba7fd573f36dcfae"
      ],
      "author": {
        "name": "Mohammad Islam",
        "email": "samiul@google.com",
        "time": "Fri Aug 27 18:16:39 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 27 18:16:39 2021 +0000"
      },
      "message": "Merge \"Create new AIDL objects for retrieving information about staged apex\""
    },
    {
      "commit": "ac421259aac7c192bec6c873ba7fd573f36dcfae",
      "tree": "90f148d2eaa0821f1dc12c626cd60c9297f14964",
      "parents": [
        "b0a8f735abc55d369b2cdaaf8fe7bf67b49b13ca"
      ],
      "author": {
        "name": "Samiul Islam",
        "email": "samiul@google.com",
        "time": "Wed Aug 04 15:56:52 2021 +0100"
      },
      "committer": {
        "name": "Mohammad Islam",
        "email": "samiul@google.com",
        "time": "Fri Aug 27 11:24:56 2021 +0000"
      },
      "message": "Create new AIDL objects for retrieving information about staged apex\n\nNative clients will be communicating with PackageManagerNative service\nfor information regarding staged apex packages.\n\nBug: 187444679\nTest: see ag/15462076\nChange-Id: If9a4ec3586a23f83229d5fdce271bf69d9073134\nMerged-In: If9a4ec3586a23f83229d5fdce271bf69d9073134\n(cherry picked from commit 042261d283ab54f586beae836e0941fbf54fdc9c)\n"
    },
    {
      "commit": "b0a8f735abc55d369b2cdaaf8fe7bf67b49b13ca",
      "tree": "e19bcbec61ee1a775daad278e45f0008a2df48de",
      "parents": [
        "35e7d618aa826bc0af4ada03ac61c4fd9441c148",
        "59640db4cf9521d1b0447850f52239ae1802e68c"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Aug 27 00:44:37 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 27 00:44:37 2021 +0000"
      },
      "message": "Merge \"binderRpcWireProtocolTest\""
    },
    {
      "commit": "35e7d618aa826bc0af4ada03ac61c4fd9441c148",
      "tree": "2051c643cda56d8b83df23661170a0e96597190a",
      "parents": [
        "0c3fe57f0f078ec7ba16fb5cf7e59babf5952c40",
        "c05af3b8d14b58b8c6edf975e18af5ea1f205884"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 26 23:55:26 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 26 23:55:26 2021 +0000"
      },
      "message": "Merge \"[Bugfix] Fix compling error when enable LOG_REFS in Parcel.cpp\""
    },
    {
      "commit": "59640db4cf9521d1b0447850f52239ae1802e68c",
      "tree": "41e2ad543a1cd5be498f206bf23867224c93a730",
      "parents": [
        "f3af176ff16d9faf0e5198d55f0fa7c9c9daf372"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Jul 22 17:19:31 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 26 15:37:14 2021 -0700"
      },
      "message": "binderRpcWireProtocolTest\n\nThis adds a test which checks to make sure that the RPC binder wire\nprotocol is backwards compatible. Right now this only checks the Parcel\nformat.\n\nBug: 182938972\nTest: binderRpcWireProtocolTest\nTest: try changing this tests w/ CLs that add a new version\nChange-Id: Ib99d8f0f87af8d97f73739fc1567fdcbee597844\n"
    },
    {
      "commit": "0c3fe57f0f078ec7ba16fb5cf7e59babf5952c40",
      "tree": "ba57451c0b95f5361bc5804c2e348ad9a6daf46f",
      "parents": [
        "0ae8394e3bc7b31281889fa6135cd2245d186c8a",
        "8dde9bc80cb329289a4f36a5ec7adb8ce3b9a3f2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 26 22:33:36 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 26 22:33:36 2021 +0000"
      },
      "message": "Merge \"rust: Use NonNull for non null pointers in proxy.rs\""
    },
    {
      "commit": "0ae8394e3bc7b31281889fa6135cd2245d186c8a",
      "tree": "7e4cc45c6b1ff315765171c67e8a004190cd847d",
      "parents": [
        "f76dca25c290f753c42951dc1497c1766df6a62e",
        "95d15e56fc1e45b1aa11e9ad6ce01f77f0a28c36"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 26 17:19:24 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 26 17:19:24 2021 +0000"
      },
      "message": "Merge \"binder: retry connect() on ECONNRESET for non-blocking sockets.\""
    },
    {
      "commit": "95d15e56fc1e45b1aa11e9ad6ce01f77f0a28c36",
      "tree": "a8718a0219512ea367012118daf12efc697a05c6",
      "parents": [
        "ab281ec6f1922fc5fd175223d739d01018131777"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Aug 25 17:15:15 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Aug 25 17:41:40 2021 -0700"
      },
      "message": "binder: retry connect() on ECONNRESET for non-blocking sockets.\n\nFor non-blocking sockets, if connect() returns EAGAIN / EINPROGRESS, the\ncode calls getsockopt() to get the real error if connect() were called\nwith a blocking socket fd. If ECONNRESET is seen, also retry.\n\nTest: binderRpcTest\nFixes: 197162885\n\nChange-Id: I7c7b8cb105d0d334b75b883ffcff3b0c62337cf4\n"
    },
    {
      "commit": "f76dca25c290f753c42951dc1497c1766df6a62e",
      "tree": "8352554ad46aaa96c1123bea8d06c74386b4df27",
      "parents": [
        "b4be81b1b96d007407e7d0a716a989dbb74b9e65",
        "588d59c6ae1abcad5012d33b15bf4a064315f9ee"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Aug 25 21:06:16 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 25 21:06:16 2021 +0000"
      },
      "message": "Merge changes I0e4fadd8,I9b3b1ffd,If7c74643\n\n* changes:\n  binder: Add getCertificate / addTrustedPeerCerticate.\n  binder: combine TLS context objects.\n  binder: Prettify ErrorQueue::toString.\n"
    },
    {
      "commit": "b4be81b1b96d007407e7d0a716a989dbb74b9e65",
      "tree": "a6c04105f121b92664b40cfcdabb6491a5e2bc1b",
      "parents": [
        "562b324c7212e71f73952fd9290e6c7f73ccf53d",
        "9240975a210f54fad7e4801a30ef63d6ab6b2b7b"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Aug 25 21:03:57 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 25 21:03:57 2021 +0000"
      },
      "message": "Merge \"binder: Enable TLS for binderRpcTest\""
    },
    {
      "commit": "562b324c7212e71f73952fd9290e6c7f73ccf53d",
      "tree": "5c0fe2822d5dd5282147025355fb9b1134142863",
      "parents": [
        "b329eca2cce6deafe40ec780616fc468af082a2d",
        "9a9427cd929d605c90cd660270c08817d75bce77"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Aug 25 19:28:36 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 25 19:28:36 2021 +0000"
      },
      "message": "Merge \"Remove ndk_platform backend. Use the ndk backend.\""
    },
    {
      "commit": "b329eca2cce6deafe40ec780616fc468af082a2d",
      "tree": "c06b899f726fa8f2516b1b4d2a4559cde6a164e7",
      "parents": [
        "f3af176ff16d9faf0e5198d55f0fa7c9c9daf372",
        "7b60b1bd4eb34c158f47e1de10600433acd0266d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 24 23:35:34 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 24 23:35:34 2021 +0000"
      },
      "message": "Merge \"Extend rpc visibility to more virt packages\""
    },
    {
      "commit": "c05af3b8d14b58b8c6edf975e18af5ea1f205884",
      "tree": "41d1c61d2ae37dc3782e206046ee78c0a1ce4a1b",
      "parents": [
        "f3af176ff16d9faf0e5198d55f0fa7c9c9daf372"
      ],
      "author": {
        "name": "yuxi",
        "email": "cruddev@gmail.com",
        "time": "Tue Aug 24 02:52:15 2021 +0000"
      },
      "committer": {
        "name": "yuxi",
        "email": "cruddev@gmail.com",
        "time": "Tue Aug 24 02:52:20 2021 +0000"
      },
      "message": "[Bugfix] Fix compling error when enable LOG_REFS in Parcel.cpp\n\nWhen we try to enable LOG_REFS in Parcel.cpp, we encounter a compling problem, so we try to fix it.\n\nChange-Id: I88310752b84dd7b07751296743615d92c4436ebb\nTest: manual\n"
    },
    {
      "commit": "ecf937dd80999d2b37c5b44cda1065bfd4da42fb",
      "tree": "6526b821f061ed460b7013e54e515c31ff303cd6",
      "parents": [
        "588d59c6ae1abcad5012d33b15bf4a064315f9ee"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Aug 11 17:29:28 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Aug 23 13:58:26 2021 -0700"
      },
      "message": "binder: RpcServer / RpcSession add API for certs.\n\nThese APIs call into RpcTransportCtx::getCertificate\nand RpcTransportClientCtx::addTrustedPeerCertificate,\nrespectively.\n\nFor RpcSession, peer (server) certificates are fixed when\nit is constructed.\n\nTest: binderRpcTest\nBug: 195166979\nChange-Id: I0d1bd93042895aeb3ab1de4fe6b9d90e73d0d116\n"
    },
    {
      "commit": "588d59c6ae1abcad5012d33b15bf4a064315f9ee",
      "tree": "1b4ffbcb76395aed3265aa04ac20454735f1ce4a",
      "parents": [
        "1af485881bce567ed9412b889f22b92c9b1a7e1c"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Aug 16 17:13:58 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Aug 23 13:58:26 2021 -0700"
      },
      "message": "binder: Add getCertificate / addTrustedPeerCerticate.\n\ngetCertificate returns the self-signed certificate\non this context.\n\naddTrustedPeerCertificate adds a peer certificate\nas trusted by this context.\n\nTest: binderRpcTest\nBug: 195166979\nChange-Id: I0e4fadd8e3391dc39f551e4b80e9411b16b696ab\n"
    },
    {
      "commit": "9240975a210f54fad7e4801a30ef63d6ab6b2b7b",
      "tree": "1600a995a811ce3195fc9b4644e680058487e7f8",
      "parents": [
        "ab281ec6f1922fc5fd175223d739d01018131777"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Jul 30 21:25:32 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Aug 23 13:58:26 2021 -0700"
      },
      "message": "binder: Enable TLS for binderRpcTest\n\nTest: binderRpcTest\nBug: 190868302\n\nChange-Id: I06fcf3dd5d91ed073153b25aecf4612040ef11b1\n"
    },
    {
      "commit": "1af485881bce567ed9412b889f22b92c9b1a7e1c",
      "tree": "3859b020be11db4ebe9e0680e22c5caad5de5849",
      "parents": [
        "87a379cea3277944cda07c1923abe0df9ab8ce1a"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Aug 16 17:13:30 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Aug 23 13:58:26 2021 -0700"
      },
      "message": "binder: combine TLS context objects.\n\nThis change creates RpcTransportCtxTls as the base class\nof the server and client context classes. RpcTransportCtxTls\nimplements both addTrustedCertificate and getCertificate. This\nis so that server and client can verify each other.\n\nTest: binderRpcTest\nBug: 195166979\nBug: 196422181\nChange-Id: I9b3b1ffd346bf8a93c2a5b38871295a8bc4c68ce\n"
    },
    {
      "commit": "87a379cea3277944cda07c1923abe0df9ab8ce1a",
      "tree": "5ab85e6bca360e8560c001ce0c39fdb32d86fb6c",
      "parents": [
        "9240975a210f54fad7e4801a30ef63d6ab6b2b7b"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 12 18:53:24 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Aug 23 13:58:26 2021 -0700"
      },
      "message": "binder: Prettify ErrorQueue::toString.\n\nTest: binderRpcTest and inspect output\nChange-Id: If7c74643a99a12babda2b4e64c7c26cac4266b82\n"
    },
    {
      "commit": "f3af176ff16d9faf0e5198d55f0fa7c9c9daf372",
      "tree": "1c7dad83851371a7b851fa06ad5ccee5926f1e26",
      "parents": [
        "0bd3275a71e2e5a5dd6b08a16be92e2e1e775664",
        "70dc879484f1e5fc89a5efd31958113ff2ee36c0"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 23 20:27:58 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 23 20:27:58 2021 +0000"
      },
      "message": "Merge \"change  DEBUG_ACCELERATION define to constexpr\""
    },
    {
      "commit": "70dc879484f1e5fc89a5efd31958113ff2ee36c0",
      "tree": "1c7dad83851371a7b851fa06ad5ccee5926f1e26",
      "parents": [
        "595c911bc25010800071c051c6424a584818706f"
      ],
      "author": {
        "name": "dingxiaobo",
        "email": "dingxiaobo@xiaomi.com",
        "time": "Mon Aug 23 11:25:30 2021 +0800"
      },
      "committer": {
        "name": "dingxiaobo",
        "email": "dingxiaobo@xiaomi.com",
        "time": "Mon Aug 23 11:29:00 2021 +0800"
      },
      "message": "change  DEBUG_ACCELERATION define to constexpr\n\nChange-Id: I57a9df6123088effe31c8ccb8b40b750a94acc32\nSigned-off-by: dingxiaobo \u003cdingxiaobo@xiaomi.com\u003e\n"
    },
    {
      "commit": "0bd3275a71e2e5a5dd6b08a16be92e2e1e775664",
      "tree": "2aad57bd0c0124c0c3c7b499dca31957585e85c7",
      "parents": [
        "5bed090fc5b7538036ab230fbff490411d0774ce",
        "595c911bc25010800071c051c6424a584818706f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 20 18:14:21 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 20 18:14:21 2021 +0000"
      },
      "message": "Merge \"fix long overflow when enable DEBUG_ACCELERATION\""
    },
    {
      "commit": "595c911bc25010800071c051c6424a584818706f",
      "tree": "2aad57bd0c0124c0c3c7b499dca31957585e85c7",
      "parents": [
        "5bed090fc5b7538036ab230fbff490411d0774ce"
      ],
      "author": {
        "name": "dingxiaobo",
        "email": "dingxiaobo@xiaomi.com",
        "time": "Fri Aug 20 11:19:54 2021 +0800"
      },
      "committer": {
        "name": "dingxiaobo",
        "email": "dingxiaobo@xiaomi.com",
        "time": "Fri Aug 20 11:30:11 2021 +0800"
      },
      "message": "fix long overflow when enable DEBUG_ACCELERATION\n\nChange-Id: I231cf3d38594b22604fb704c74eece9dd87420e2\nSigned-off-by: dingxiaobo \u003cdingxiaobo@xiaomi.com\u003e\n"
    },
    {
      "commit": "5bed090fc5b7538036ab230fbff490411d0774ce",
      "tree": "ba52b0c079888ee47afbf38906a75cee071109a8",
      "parents": [
        "9365dde6162900520ba502ac92809caa507ca21e",
        "0f8f60333f779e95e262bcbf86fb7464f662996e"
      ],
      "author": {
        "name": "Ady Abraham",
        "email": "adyabr@google.com",
        "time": "Thu Aug 19 19:13:33 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 19 19:13:33 2021 +0000"
      },
      "message": "Merge \"Add adyabr@ to OWNERS\""
    },
    {
      "commit": "0f8f60333f779e95e262bcbf86fb7464f662996e",
      "tree": "ba52b0c079888ee47afbf38906a75cee071109a8",
      "parents": [
        "9365dde6162900520ba502ac92809caa507ca21e"
      ],
      "author": {
        "name": "Ady Abraham",
        "email": "adyabr@google.com",
        "time": "Thu Aug 19 17:36:43 2021 +0000"
      },
      "committer": {
        "name": "Ady Abraham",
        "email": "adyabr@google.com",
        "time": "Thu Aug 19 17:36:46 2021 +0000"
      },
      "message": "Add adyabr@ to OWNERS\n\nChange-Id: Iaa8d6efc6010f39c28cf3a3a021e4d92a88c549a\n"
    },
    {
      "commit": "9365dde6162900520ba502ac92809caa507ca21e",
      "tree": "1037fa7b04b10b453fa4580db4a13bda43778652",
      "parents": [
        "ab281ec6f1922fc5fd175223d739d01018131777",
        "35e05533759f5467bd38c20524c6d10eb1abb2e7"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 18 20:40:15 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 18 20:40:15 2021 +0000"
      },
      "message": "Merge \"Tilt scale correction for certain resolutions\""
    },
    {
      "commit": "7b60b1bd4eb34c158f47e1de10600433acd0266d",
      "tree": "7ba3d58b62795b8f68f5ff45897f186e97f66708",
      "parents": [
        "ab281ec6f1922fc5fd175223d739d01018131777"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Wed Aug 18 11:53:34 2021 +0900"
      },
      "committer": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Wed Aug 18 11:53:34 2021 +0900"
      },
      "message": "Extend rpc visibility to more virt packages\n\nVirtualization service and microdroid manager will communicate over an\nRPC session on vsock. This allows both packages to use rpc library.\n\nBug: 191845268\nTest: atest MicrodroidHostTestCases\nChange-Id: Icd25d117791dc1ec4232179ea64422bb4fb85062\n"
    },
    {
      "commit": "139913a0e5a285b159525c9cbc7ce0e08e7afe36",
      "tree": "b9dcecc6823751bb468925c855f7d56e5c428b5a",
      "parents": [
        "1291f27a242b61dc26f2a448a69180f50498c772"
      ],
      "author": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Fri Aug 13 19:59:16 2021 +0000"
      },
      "committer": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Mon Aug 16 22:28:00 2021 +0000"
      },
      "message": "libbinder: use flexible array member instead of 0 sized array\n\nHaving an array at the end of a struct without a size is defined as a\nflexible array member. Using a size of zero is not defined by the\nlanguage.\n\nTest: atest binderRpcTest\nChange-Id: Iaec4ea3b636f218957dd70cb36c84ba04bcb8a0e\n"
    },
    {
      "commit": "ab281ec6f1922fc5fd175223d739d01018131777",
      "tree": "c56cd9057f1ea20f8a6e1d3468446ce4479977dc",
      "parents": [
        "603833006c6468e4a8e603904a4cd62f0eb740ae",
        "15fff8c17da046c644334025c7707de81645c14d"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Aug 16 18:43:09 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 16 18:43:09 2021 +0000"
      },
      "message": "Merge changes from topic \"binder_tls\"\n\n* changes:\n  binder: libbinder_tls ensure to check trigger at least once.\n  binder: TLS: ignore SIGPIPE.\n  binder: Add libbinder_tls\n"
    },
    {
      "commit": "8dde9bc80cb329289a4f36a5ec7adb8ce3b9a3f2",
      "tree": "2c52ff4d36cd948e9e6be3e21ca9f1aea76b4802",
      "parents": [
        "1291f27a242b61dc26f2a448a69180f50498c772"
      ],
      "author": {
        "name": "Alice Ryhl",
        "email": "aliceryhl@google.com",
        "time": "Mon Aug 16 16:57:10 2021 +0000"
      },
      "committer": {
        "name": "Alice Ryhl",
        "email": "aliceryhl@google.com",
        "time": "Mon Aug 16 16:57:10 2021 +0000"
      },
      "message": "rust: Use NonNull for non null pointers in proxy.rs\n\nTest: m\nChange-Id: Iaf23ec9eac9bf77908b9b93e439d6d7705101d42\n"
    },
    {
      "commit": "603833006c6468e4a8e603904a4cd62f0eb740ae",
      "tree": "20c7626c0f078d29fe595f8e745e714f180dcc9a",
      "parents": [
        "231bda61aee209a1882d52f25f02642259f9f0da",
        "121a53e0707c4dc85397fc39c6d0ec1f4fb3c52a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 13 18:21:28 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 13 18:21:28 2021 +0000"
      },
      "message": "Merge \"libbinder: even further downgrade oneway spam log\""
    },
    {
      "commit": "231bda61aee209a1882d52f25f02642259f9f0da",
      "tree": "a29d451835c817fb45b38d76283d5959fc5a101b",
      "parents": [
        "8395fee29d9e64b78bd7e64531ccdcff50ddcabb",
        "83401fe32796dacd040b1f073f131050e2146bb8"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri Aug 13 04:45:09 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 13 04:45:09 2021 +0000"
      },
      "message": "Merge \"Parcel: support unique_ptr for recursive types\""
    },
    {
      "commit": "83401fe32796dacd040b1f073f131050e2146bb8",
      "tree": "3bf2b1b7ceb3f06d598c2e8f8593d52b0d3891b2",
      "parents": [
        "8e33ba576e1d8a0c2cac11c403d4b49dc77fe583"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri May 21 20:06:39 2021 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Fri Aug 13 11:28:36 2021 +0900"
      },
      "message": "Parcel: support unique_ptr for recursive types\n\nnullable types in AIDL are now represented in optional in C++, but to\nsupport \"recursive types\" we still need unique_ptr.\n\nAdding unique_ptr utilities for binder_ndk and removing \"deprecated\"\nfrom a few unique_ptr variants of Parcel methods.\n\nBug: 188690695\nTest: aidl_integration_test\nChange-Id: I7994b97784ea838c55a9a2c86f8105ba427030dc\n"
    },
    {
      "commit": "8395fee29d9e64b78bd7e64531ccdcff50ddcabb",
      "tree": "100ac9b91ae50235e15fdf61fe3e36b62c235114",
      "parents": [
        "8e33ba576e1d8a0c2cac11c403d4b49dc77fe583",
        "4d1969799b081fd4a28fc14561627be148f0ba5a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 13 02:04:55 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 13 02:04:55 2021 +0000"
      },
      "message": "Merge \"libbinder_ndk: dump class ptrs in assoc. failure\""
    },
    {
      "commit": "4d1969799b081fd4a28fc14561627be148f0ba5a",
      "tree": "e8446ea888318e9b51e1ec97f18bc57ad64f6f90",
      "parents": [
        "f1aa6cddcebc60d0ca8c4df1849b3b530d046bff"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 12 15:49:44 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 12 23:53:14 2021 +0000"
      },
      "message": "libbinder_ndk: dump class ptrs in assoc. failure\n\nWe know nothing about them if they mismatch now. This could help us\nfigure out certain kind of memory corruption issues or, if we dump\nprocess memory and have access to mapping information, determine where\nthe globals that refer to these different classes come from\n(AIBinder_Class ptrs are usually stored in globals).\n\nBug: 195473723\nTest: see log in logcat\nChange-Id: I3010b62d70a63114fa4610d25860d3602740e185\n"
    },
    {
      "commit": "121a53e0707c4dc85397fc39c6d0ec1f4fb3c52a",
      "tree": "5d3ca3e057e368c9ba0615968e187d8327ce8a1e",
      "parents": [
        "f1aa6cddcebc60d0ca8c4df1849b3b530d046bff"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 12 16:26:46 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 12 23:28:50 2021 +0000"
      },
      "message": "libbinder: even further downgrade oneway spam log\n\nCan\u0027t downgrade this log enough.\n\nFixes: 195968648\nTest: N/A\nChange-Id: I462a7693ae6f0bda99e107ee42d51cb6341536f8\n"
    },
    {
      "commit": "15fff8c17da046c644334025c7707de81645c14d",
      "tree": "251745ead7bb495661ee13e408c528b67900d46d",
      "parents": [
        "d17353cb5b20d50d41d28a189df9426a4120408f"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Aug 10 15:07:56 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 12 11:56:35 2021 -0700"
      },
      "message": "binder: libbinder_tls ensure to check trigger at least once.\n\nIf the SSL_write / SSL_read finishes in one round, we might have\nnever checked the fdTrigger. Ensure to check it at least once\nbefore SSL_write / SSL_read.\n\nTest: binderRpcTest\nBug: 190868302\nChange-Id: I4588475354025f8f02d3eb998e9390d5babbc860\n"
    },
    {
      "commit": "d17353cb5b20d50d41d28a189df9426a4120408f",
      "tree": "bab684694c22c8381aed8c1d1ace40173812a172",
      "parents": [
        "e8212f2bd77615cc65d62560d32ed74c855685e1"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Jun 24 21:56:38 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 12 11:56:35 2021 -0700"
      },
      "message": "binder: TLS: ignore SIGPIPE.\n\nManually implement a new BIO type that ignores\nall signals by using MSG_NOSIGNAL in recv() and\nsend().\n\nTest: binderRpcTest\nFixes: 192022695\nChange-Id: Icc005a397b5f6918345bdf94e7569531f100a942\n"
    },
    {
      "commit": "e8212f2bd77615cc65d62560d32ed74c855685e1",
      "tree": "2fd7c48f27a1097348393840e7364239a5ef13cf",
      "parents": [
        "8e33ba576e1d8a0c2cac11c403d4b49dc77fe583"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Jun 28 15:49:08 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 12 11:56:35 2021 -0700"
      },
      "message": "binder: Add libbinder_tls\n\nIn libbinder_tls, RpcTransportTls implements RpcTransport with TLS.\n\nTest: TH\nTest: binderRpcTest (see follow up CL)\nBug: 190868302\nBug: 195788248\n\nChange-Id: I8f2445f08429581b703727a74ecef11bc44bb294\n"
    },
    {
      "commit": "8e33ba576e1d8a0c2cac11c403d4b49dc77fe583",
      "tree": "bfd7578bff0f85e2d1a7b98a9ca9a40a5961c6ea",
      "parents": [
        "1291f27a242b61dc26f2a448a69180f50498c772",
        "9cac4c0aaf616702ce9a977296ccd5d0f18c6dd1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 12 02:17:09 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 12 02:17:09 2021 +0000"
      },
      "message": "Merge \"libbinder: RpcSession - avoid recursive include\""
    },
    {
      "commit": "9cac4c0aaf616702ce9a977296ccd5d0f18c6dd1",
      "tree": "b2ad7da4676b5a53de3fd47e406b2abe8ece62de",
      "parents": [
        "f1aa6cddcebc60d0ca8c4df1849b3b530d046bff"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Aug 11 17:32:08 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Aug 11 17:32:41 2021 -0700"
      },
      "message": "libbinder: RpcSession - avoid recursive include\n\nConfusing no-op.\n\nBug: N/A\nTest: N/A\nChange-Id: I22d2c153538d4819796792f501aac5d5dc9be67b\n"
    },
    {
      "commit": "1291f27a242b61dc26f2a448a69180f50498c772",
      "tree": "1752a6ceaf6d88a664f651949b667a2ffc5fe3a3",
      "parents": [
        "3c2f902370947c6f35c9964a0aa5993c9d7cec77",
        "8cbe66b6f369c9af46adfa3f4cbfc4830955605e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 11 03:24:54 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 11 03:24:54 2021 +0000"
      },
      "message": "Merge \"binder: don\u0027t specify POLLHUP in .events for poll()\""
    },
    {
      "commit": "3c2f902370947c6f35c9964a0aa5993c9d7cec77",
      "tree": "ca8d72f7627001198318b182cd2163eeb94c2621",
      "parents": [
        "f1aa6cddcebc60d0ca8c4df1849b3b530d046bff",
        "b9c4962d6e19263e9f2beae675be0d45a291a7e5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 11 03:17:44 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 11 03:17:44 2021 +0000"
      },
      "message": "Merge \"binderRpcBenchmark: repeatBinder kernel binder\""
    },
    {
      "commit": "b9c4962d6e19263e9f2beae675be0d45a291a7e5",
      "tree": "ca8d72f7627001198318b182cd2163eeb94c2621",
      "parents": [
        "f1aa6cddcebc60d0ca8c4df1849b3b530d046bff"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 10 17:39:10 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 10 18:18:40 2021 -0700"
      },
      "message": "binderRpcBenchmark: repeatBinder kernel binder\n\nBefore, this was only running rpc binder for the repeateBinder test\ncase.\n\nBM_repeatBinder/0                              61680 ns        33016 ns\n17730\nBM_repeatBinder/1                             162368 ns        87825 ns\n9997\n\nSo, RPC is much slower. Investigation to come. May be related to\nb/182939933 (reading /dev/urandom to come up with addresses for new RPC\nbinder objects).\n\nBug: 182940634\nTest: binderRpcBenchmark\nChange-Id: I02c147bb011994ab9acb9f30de00538f04cfb0d9\n"
    },
    {
      "commit": "8cbe66b6f369c9af46adfa3f4cbfc4830955605e",
      "tree": "54144279325f3d0d9ddd9ba6440669f32bcd279d",
      "parents": [
        "f1aa6cddcebc60d0ca8c4df1849b3b530d046bff"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Aug 10 14:49:07 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Aug 10 15:32:25 2021 -0700"
      },
      "message": "binder: don\u0027t specify POLLHUP in .events for poll()\n\nAccording to poll(2), POLLHUP is ignored in .events. Don\u0027t specify\nit.\n\nTest: pass\nChange-Id: Id9cc908f11bcb914a30dad9e407cb17c1ab00979\n"
    },
    {
      "commit": "f1aa6cddcebc60d0ca8c4df1849b3b530d046bff",
      "tree": "12c5827eed49b29ebddac4e745a9d48b424cb5f6",
      "parents": [
        "b438f33e52bf96feebe7e60caf5227dd9b1bb2fb",
        "9e87d90633c699b4e499664de777a00179b923a1"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 10 16:59:58 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 10 16:59:58 2021 +0000"
      },
      "message": "Merge \"libbinder: run_rpc_tests.sh\""
    },
    {
      "commit": "b438f33e52bf96feebe7e60caf5227dd9b1bb2fb",
      "tree": "086dd5237883a3527515c19ffadfabc10df754c8",
      "parents": [
        "60969843c355ab35e1ba29e8f9d256e70d2c4347",
        "def9faea5ebf63e195f65949c4b6aae89cdb22d9"
      ],
      "author": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Tue Aug 10 16:39:27 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 10 16:39:27 2021 +0000"
      },
      "message": "Merge changes I0daebc18,I87df46d1\n\n* changes:\n  dumpsys: display the client PIDs of all of the services\n  Add API to BpBinder to get handle for debugging\n"
    },
    {
      "commit": "60969843c355ab35e1ba29e8f9d256e70d2c4347",
      "tree": "aeb89c9e87a2c3e3ebb7ccdc92fdb64c1b453351",
      "parents": [
        "93b2cc9617f617da3b2406c1faeb73dfed40f023",
        "a5b0269d3c310fb363f68623e883a4c63ddd10a7"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 10 04:03:11 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 10 04:03:11 2021 +0000"
      },
      "message": "Merge \"servicedispatcher: exit when adb debugging is turned off.\""
    },
    {
      "commit": "93b2cc9617f617da3b2406c1faeb73dfed40f023",
      "tree": "b80ab9de55eb138547560885928d6845f95b0d24",
      "parents": [
        "bf5fdedf6f49c5dce1725699484b5a1a26761573",
        "f6d4229b65253d2ff91ecbc93105a8114d0d3584"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Aug 09 23:24:59 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 09 23:24:59 2021 +0000"
      },
      "message": "Merge changes from topic \"binder_rpc_non_blocking\"\n\n* changes:\n  binder: RpcTranpsortCtx::newTransport Add FdTrigger arg.\n  binder: RpcSession handle post-connect\n  binder: RPC uses non-blocking sockets.\n  binder: Refactor: move FdTrigger to its own file / class.\n  binder: RpcSession initialize mShutdownTrigger earlier\n"
    },
    {
      "commit": "9e87d90633c699b4e499664de777a00179b923a1",
      "tree": "ffc3e191efbbc0c5f11a91f474e7be67c2bfc3aa",
      "parents": [
        "5d4f84df73627101d47341429e00b04448755aff"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Aug 09 15:00:57 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Aug 09 15:01:12 2021 -0700"
      },
      "message": "libbinder: run_rpc_tests.sh\n\nThere are now a few people working on RPC-related features, and there\nare a number of usecases. There have been a couple of cases where\nchanges broke other tests, but this wasn\u0027t realized until later because\npresubmit takes a while to run, and running all of the binder tests\nlocally actually takes a bit of time. Adding this as a quick way to run\nRPC tests while they are actively being developed.\n\nBug: 167966510\nTest: each of the following:\n  ./run_rpc_tests.sh\n  ./run_rpc_tests.sh device\n  ./run_rpc_tests.sh host\n\nChange-Id: I5225c6a0ae373546dbef9fa051f50a08f25d7087\n"
    },
    {
      "commit": "bf5fdedf6f49c5dce1725699484b5a1a26761573",
      "tree": "edd7e11a750350df35ec1dedadd38d1a3d7d4c7f",
      "parents": [
        "bd8ea28f863777fc5cd9a2ff068801135e2b0e2c",
        "1eab345becf85e7d9c6e56fd30924d1e3d8590a8"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Aug 09 18:11:01 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 09 18:11:01 2021 +0000"
      },
      "message": "Merge \"binderRpcTest: work when vsock not supported\""
    },
    {
      "commit": "bd8ea28f863777fc5cd9a2ff068801135e2b0e2c",
      "tree": "08f48c263639a096db54094072f480ba8db60304",
      "parents": [
        "385a3a02d0f2f3fb0e8b04176e9799cfccdb738c",
        "c6746a7cb87c4a146ad3e16fffcf3c44e5b59dcf"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Aug 09 18:10:53 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 09 18:10:53 2021 +0000"
      },
      "message": "Merge \"SharedRefBase: detect double-ownership\""
    },
    {
      "commit": "385a3a02d0f2f3fb0e8b04176e9799cfccdb738c",
      "tree": "053c3eec17964c9867ec2acbc3397af4253ec259",
      "parents": [
        "5d4f84df73627101d47341429e00b04448755aff",
        "24c3f023367cfa47e2440715c6756c3b57c4d048"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon Aug 09 15:23:45 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 09 15:23:45 2021 +0000"
      },
      "message": "Merge \"Implement AsRawFd trait for ParcelFileDescriptor\""
    },
    {
      "commit": "9a9427cd929d605c90cd660270c08817d75bce77",
      "tree": "8b4f448a6c47026bff2f2b6ef8cb01e317219552",
      "parents": [
        "5d4f84df73627101d47341429e00b04448755aff"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Mon Aug 09 09:01:15 2021 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Mon Aug 09 09:03:40 2021 +0900"
      },
      "message": "Remove ndk_platform backend. Use the ndk backend.\n\nThe ndk_platform backend will soon be deprecated because the ndk backend\ncan serve the same purpose. This is to eliminate the confusion about\nhaving two variants (ndk and ndk_platform) for the same ndk backend.\n\nBug: 161456198\nTest: m\nMerged-In: I1e84945fcfef3b2a300811f27ef57059eaf08553\nChange-Id: I1564d49bea7f09f2ee211bc309a6e857f631dbdd\n"
    },
    {
      "commit": "c6746a7cb87c4a146ad3e16fffcf3c44e5b59dcf",
      "tree": "60e8e5743f04cc3d109f6d9c6620d5eb2b6bddf7",
      "parents": [
        "5d4f84df73627101d47341429e00b04448755aff"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Aug 06 15:38:59 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Aug 06 15:40:20 2021 -0700"
      },
      "message": "SharedRefBase: detect double-ownership\n\nIf the internal SharedRefBase weak_ptr is promotable while it is being\ndestroyed, this means that the SharedRefBase object is double-owned, and\nsomething else deleted it. Add an explicit log for this case.\n\nFixes: 194905504\nTest: libbinder_ndk_unit_test\nChange-Id: Ib6aa09ff8e659e52eebe96c14d127a6e7c186cff\n"
    },
    {
      "commit": "24c3f023367cfa47e2440715c6756c3b57c4d048",
      "tree": "f000573f1743bc34c6719150d38fcc3136e227f3",
      "parents": [
        "5bff74281079ff595935bf95793999f2fa3a0d86"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri Aug 06 14:16:33 2021 -0700"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri Aug 06 14:27:20 2021 -0700"
      },
      "message": "Implement AsRawFd trait for ParcelFileDescriptor\n\nParcelFileDescriptor can already be use as a reference of `File`, which\nimplements AsRawFd. Provide AsRawFd directly to make it easier for the\nclients to use.\n\nBug: 194717985\nTest: use in the client\nChange-Id: I7a53367306b38cf0dd43364a698d0c83937d3e4d\n"
    },
    {
      "commit": "5d4f84df73627101d47341429e00b04448755aff",
      "tree": "55843701f08f881c0e0663e4cbaf4f5209d58eb5",
      "parents": [
        "29fa5a47c20732e3d8af0d6b6f6e387c88b10199",
        "2372f9d850837de10d19453088cb32f1939e46dc"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Aug 06 20:19:12 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 06 20:19:12 2021 +0000"
      },
      "message": "Merge \"libbinder: RPC use \u0027status_t\u0027 over \u0027bool\u0027\""
    },
    {
      "commit": "f6d4229b65253d2ff91ecbc93105a8114d0d3584",
      "tree": "cb0e2b922c8cdbd6006a92ccd60879ea63afdb74",
      "parents": [
        "d9f8cef5d12cd4fc71d7308f2e303c3c670a5d77"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 05 23:43:05 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Aug 06 12:49:32 2021 -0700"
      },
      "message": "binder: RpcTranpsortCtx::newTransport Add FdTrigger arg.\n\nFor TLS, creating a new RpcTransport object may require I/O.\nMake them interruptable by providing an FdTrigger argument.\n\nTest: binderRpcTest\nBug: 190868302\n\nChange-Id: I63a6655f50d1b2fa5a484860ec422021e88de3e5\n"
    },
    {
      "commit": "d9f8cef5d12cd4fc71d7308f2e303c3c670a5d77",
      "tree": "bc8de8e8a3159630c0156e7c48982392173dd13f",
      "parents": [
        "b675ffe41b574bd7a13ebbc8682cf147508b5c21"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 05 15:17:31 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Aug 06 12:09:40 2021 -0700"
      },
      "message": "binder: RpcSession handle post-connect\n\nOn non-blocking sockets, connect() may return EAGAIN / EINPROGRESS.\nHandle them properly.\n\nBug: 195683291\nTest: binderRpcTest\n\nChange-Id: Ia98386e41187cb48c528913dd8fd8ab566ec3506\n"
    },
    {
      "commit": "b675ffe41b574bd7a13ebbc8682cf147508b5c21",
      "tree": "563138d017c6ccd0b587876c2c8bc66133b6bce1",
      "parents": [
        "8c950421dbe8d9c2cea5e293b925b01d6f8c52da"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 05 16:37:17 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Aug 06 12:09:40 2021 -0700"
      },
      "message": "binder: RPC uses non-blocking sockets.\n\nWith TLS, even though poll() may have returned for an FD,\nthere may not be a complete packet available, so I/O operations\nwithin libssl may block and not interruptible by the shutdown\ntrigger.\n\nHence, always use non-blocking sockets.\n\nTest: binderRpcTest\nBug: 195683291\nChange-Id: I372e8c3bf010c672b1c4b9f7cb5b789ca20c9480\n"
    },
    {
      "commit": "1eab345becf85e7d9c6e56fd30924d1e3d8590a8",
      "tree": "094c146331e8b2c17cffb21f9bc61a9b3249a7cf",
      "parents": [
        "2372f9d850837de10d19453088cb32f1939e46dc"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 05 16:56:20 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Aug 06 18:19:59 2021 +0000"
      },
      "message": "binderRpcTest: work when vsock not supported\n\nIf vsock isn\u0027t supported at all, don\u0027t abort.\n\nBug: 167966510\nTest: binderRpcTest (on Pixel 3)\nChange-Id: I3384349eb63dea99aa8f3f0f91a8719e0f85a76a\n"
    },
    {
      "commit": "29fa5a47c20732e3d8af0d6b6f6e387c88b10199",
      "tree": "a431a1ab91a48b59e868e48a297af6b299c455aa",
      "parents": [
        "a00f49387562624f0f92c9b1abebef3cf2913628",
        "0803305bb71ce2efaa70f3cc63228457d9db3a55"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Aug 06 18:06:47 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 06 18:06:47 2021 +0000"
      },
      "message": "Merge \"libbinder: remove stale blocking TODO\""
    },
    {
      "commit": "a00f49387562624f0f92c9b1abebef3cf2913628",
      "tree": "1469506e2df43301eb55c48d293d3a79567d3561",
      "parents": [
        "090cd59555cdc2c9e982d9e735acec876430a540",
        "ce240ce27c3db8f0763f4d2283aef67a156b4f00"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Aug 06 18:03:55 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 06 18:03:55 2021 +0000"
      },
      "message": "Merge \"binderRpcBenchmark: test more data sizes\""
    },
    {
      "commit": "8c950421dbe8d9c2cea5e293b925b01d6f8c52da",
      "tree": "4875423b420b08c1b23f91f59302517bf9483537",
      "parents": [
        "832521ebc4e217586adbd8528385bf29bc16307e"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 05 17:13:55 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Aug 06 10:48:34 2021 -0700"
      },
      "message": "binder: Refactor: move FdTrigger to its own file / class.\n\nAlso move interruptable*Fully functions to RpcTransport so that we no\nlonger need pending() and pollSocket().\n\nThis also allows us to hide send() / recv(); callers should use\ninterruptableWriteFully / interruptableReadFully instead, because\nthose repsect the shutdown trigger.\n- Fix one place to use interruptableWriteFully() instead of send() when\n  sending header.\n\ninterruptable*Fully are marked as virtual functions because TLS will\nneed to poll with events dynamically adjusted. See follow-up CLs for\nTLS implementation.\n\nTest: TH\nBug: 190868302\nChange-Id: I131eed3a637b3a30280b320966e466bbfac0fc45\n"
    },
    {
      "commit": "832521ebc4e217586adbd8528385bf29bc16307e",
      "tree": "08efb0c5b588641aa818c85eb2a75193afe4ea8a",
      "parents": [
        "2372f9d850837de10d19453088cb32f1939e46dc"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 05 14:55:40 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Aug 06 10:48:33 2021 -0700"
      },
      "message": "binder: RpcSession initialize mShutdownTrigger earlier\n\nThis is so that we can use mShutdownTrigger when handling\nEINPROGRESS / EAGAIN for connect().\n\nTest: binderRpcTest\nBug: 195683291\n\nChange-Id: I55f985f82523687f29433bb53a6517de2214e810\n"
    },
    {
      "commit": "2372f9d850837de10d19453088cb32f1939e46dc",
      "tree": "80fd01f0864442056ffd639b1a5f7d3025cbf97b",
      "parents": [
        "176a33a2b48a6f0da85cd1eb820577fea3a60551"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 05 15:42:01 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Aug 06 10:09:43 2021 -0700"
      },
      "message": "libbinder: RPC use \u0027status_t\u0027 over \u0027bool\u0027\n\nFor ease of debugging/handling errors (I realized that binderRpcTest\ncurrently crashes on Pixel 3 because of some missing kernel patches -\nthis would have been easier with this, and one potential (even if\ntemporary) solution would be to check the return code).\n\nBug: 167966510\nTest: binderRpcTest, binderRpcBenchmark, binder_parcel_fuzzer,\n    binder_rpc_fuzzer, binderHostDeviceTest\nChange-Id: I1baa2e9380e0ec8f82f8ceb250f3eeb632dc5fbc\n"
    },
    {
      "commit": "def9faea5ebf63e195f65949c4b6aae89cdb22d9",
      "tree": "05a791e1157e6d38575762161bf78d7ea99bf9d7",
      "parents": [
        "f6f2e64c29af2200e89fdf39ccc23d2bb57cce07"
      ],
      "author": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Thu Aug 05 19:05:45 2021 +0000"
      },
      "committer": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Fri Aug 06 17:03:13 2021 +0000"
      },
      "message": "dumpsys: display the client PIDs of all of the services\n\nWhen gathering info on a service, get the BpBinder handle to look up the\nnode number of the binder service in binder_logs/proc/\u003cpid\u003e.\nLook up the node number in binder_logs/state from the binder service.\nThat entry in the state file has the client PIDs.\n\nExample output:\n$ adb shell dumpsys --clients android.hardware.power.IPower/default\nClient PIDs: 437, 708, 203\n\nTest: adb root \u0026\u0026 adb shell dumpsys --clients\nTest: adb shell dumpsys --clients power\nTest: adb shell dumpsys --clients --pid\nChange-Id: I0daebc18cb9f47925ccec5a3eb0b09c4b1e43fe4\n"
    },
    {
      "commit": "090cd59555cdc2c9e982d9e735acec876430a540",
      "tree": "d598fe0227a5dcc72d3183a14b5a7916a9513592",
      "parents": [
        "176a33a2b48a6f0da85cd1eb820577fea3a60551",
        "44a1606ffe3cd89297856e6a56402e08ab89f04d"
      ],
      "author": {
        "name": "Jonglin Lee",
        "email": "jonglin@google.com",
        "time": "Fri Aug 06 06:19:25 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 06 06:19:25 2021 +0000"
      },
      "message": "Merge \"Revert \"binder: SharedRefBase uses enable_shared_from_this\"\""
    },
    {
      "commit": "0803305bb71ce2efaa70f3cc63228457d9db3a55",
      "tree": "93339c6e45d674d3fab46b0e1205095591232641",
      "parents": [
        "176a33a2b48a6f0da85cd1eb820577fea3a60551"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 05 14:46:08 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 05 15:56:25 2021 -0700"
      },
      "message": "libbinder: remove stale blocking TODO\n\nWe have shutdown triggers now, so it\u0027s not a concern.\n\nBug: 186470974\nTest: N/A\nChange-Id: I3d8319d3895def94d03f5588899058718bc7d5d6\n"
    },
    {
      "commit": "44a1606ffe3cd89297856e6a56402e08ab89f04d",
      "tree": "17ec5cc55305992e93834e76169a47690f8214aa",
      "parents": [
        "ed0d79223b73e51e26e03ceff8bbc33d633ad79b"
      ],
      "author": {
        "name": "Kevin Cheng",
        "email": "kevcheng@google.com",
        "time": "Thu Aug 05 22:26:55 2021 +0000"
      },
      "committer": {
        "name": "Kevin Cheng",
        "email": "kevcheng@google.com",
        "time": "Thu Aug 05 22:30:34 2021 +0000"
      },
      "message": "Revert \"binder: SharedRefBase uses enable_shared_from_this\"\n\nThis reverts commit ed0d79223b73e51e26e03ceff8bbc33d633ad79b.\n\nReason for revert: b/195591779\n\nBug: 195591779\n\nChange-Id: I94faf161b0b22b04892be88bb91a7c5a14cd32ed\n"
    },
    {
      "commit": "176a33a2b48a6f0da85cd1eb820577fea3a60551",
      "tree": "353b1857e43f8cc3ced61d5f4425dcbc967e7a3d",
      "parents": [
        "91c6a9f5d8a7a4af33998de62b72e15bc1a3b9bb",
        "218c4070b9b274e604d77cf284140a1f73859a2a"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 05 21:20:49 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 05 21:20:49 2021 +0000"
      },
      "message": "Merge \"binder: RpcTransport: change to size_t.\""
    },
    {
      "commit": "ce240ce27c3db8f0763f4d2283aef67a156b4f00",
      "tree": "d49345d825fc665fff559d84110a5a506dbe119b",
      "parents": [
        "9d6bd9c2ee35d29656e95acc3ee7016d590e9a7e"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 05 13:02:37 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 05 13:51:52 2021 -0700"
      },
      "message": "binderRpcBenchmark: test more data sizes\n\nData on Pixel 3.\n\nTests suffixes:\n        .../0 is KERNEL\n        .../1 is RPC\n...\n------------------------------------------------------------------------------------\nBenchmark                                          Time             CPU   Iterations\n------------------------------------------------------------------------------------\nBM_pingTransaction/0                           34506 ns        15936 ns        44173\nBM_pingTransaction/1                           44578 ns        23682 ns        29419\nBM_repeatTwoPageString/0                      268895 ns       133951 ns         5542\nBM_repeatTwoPageString/1                      273066 ns       136871 ns         4060\nBM_throughputForTransportAndBytes/0/64         41647 ns        20978 ns        31161\nBM_throughputForTransportAndBytes/1/64         50865 ns        26653 ns        27674\nBM_throughputForTransportAndBytes/0/1024       45359 ns        22866 ns        36708\nBM_throughputForTransportAndBytes/1/1024       58353 ns        30732 ns        24405\nBM_throughputForTransportAndBytes/0/2048       42337 ns        21340 ns        31918\nBM_throughputForTransportAndBytes/1/2048       54608 ns        28429 ns        26312\nBM_throughputForTransportAndBytes/0/4096       48556 ns        24274 ns        36713\nBM_throughputForTransportAndBytes/1/4096       63926 ns        33302 ns        21678\nBM_throughputForTransportAndBytes/0/8182       61992 ns        30967 ns        31588\nBM_throughputForTransportAndBytes/1/8182       76709 ns        39386 ns        16124\nBM_throughputForTransportAndBytes/0/16364      59111 ns        27146 ns        21538\nBM_throughputForTransportAndBytes/1/16364      99768 ns        51025 ns        14223\nBM_throughputForTransportAndBytes/0/32728      81425 ns        36794 ns        19077\nBM_throughputForTransportAndBytes/1/32728     145483 ns        69133 ns        10000\nBM_throughputForTransportAndBytes/0/65535     250483 ns       121279 ns         5994\nBM_throughputForTransportAndBytes/1/65535     436443 ns       210857 ns         4502\nBM_throughputForTransportAndBytes/0/65536     242461 ns       117834 ns         9015\nBM_throughputForTransportAndBytes/1/65536     412841 ns       199778 ns         3333\nBM_throughputForTransportAndBytes/0/65537     348937 ns       158662 ns         5700\nBM_throughputForTransportAndBytes/1/65537     485328 ns       219897 ns         3345\nBM_repeatBinder/0                             149947 ns        81256 ns         7093\nBM_repeatBinder/1                             142770 ns        77031 ns         7460\n\nFuture considerations:\n- what about other socket types (not UDS)\n- control for binder scheduling hints\n- more optimizations in libbinder\n\nBug: 182940634\nTest: binderRpcBenchmark (results above)\nChange-Id: I0db9a95d9336b6f943da9efe59ef7736a65f90e4\n"
    },
    {
      "commit": "f6f2e64c29af2200e89fdf39ccc23d2bb57cce07",
      "tree": "e0975f7c2e7a6f95ecfb10b3611ccd95cef56726",
      "parents": [
        "5bff74281079ff595935bf95793999f2fa3a0d86"
      ],
      "author": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Thu Aug 05 19:03:47 2021 +0000"
      },
      "committer": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Thu Aug 05 19:03:47 2021 +0000"
      },
      "message": "Add API to BpBinder to get handle for debugging\n\nThis is the local handle for the process requesting it.\n\nTest: build\nChange-Id: I87df46d166bf5041972624af42369a76adb52ee9\n"
    },
    {
      "commit": "218c4070b9b274e604d77cf284140a1f73859a2a",
      "tree": "e0cfb94a27c4f74531816e8716d1585a852f101c",
      "parents": [
        "5bff74281079ff595935bf95793999f2fa3a0d86"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Aug 04 14:59:10 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Aug 05 18:41:49 2021 +0000"
      },
      "message": "binder: RpcTransport: change to size_t.\n\n- Change return type to Result\u003csize_t\u003e because negative numbers\n  (-1) are converted to an Error().\n- Change size argument from int to size_t because size_t is unsigned\n  and is the best type to represent a \"size\".\n\nTest: pass\nBug: 190868302\nFixes: 195592175\nChange-Id: Ide26d2d5cc11a9b776fc3dc0a2281300f611b327\n"
    },
    {
      "commit": "91c6a9f5d8a7a4af33998de62b72e15bc1a3b9bb",
      "tree": "1ffb99e058b89805b01b5d2a7693c30912e19253",
      "parents": [
        "5bff74281079ff595935bf95793999f2fa3a0d86",
        "4198a12cc93d5ffb84a516097f516f3175071254"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Aug 05 17:38:00 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 05 17:38:00 2021 +0000"
      },
      "message": "Merge \"libbinder: allow externally created connections\""
    },
    {
      "commit": "4198a12cc93d5ffb84a516097f516f3175071254",
      "tree": "b96fd7d9275944d1395bf42e7de77e0d4d1a252f",
      "parents": [
        "702115c3195b7cf886439441c32daaafd6e8362f"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 03 17:37:58 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Aug 04 23:21:45 2021 +0000"
      },
      "message": "libbinder: allow externally created connections\n\nWe want to allow:\n- VM B process S has server using RpcServer normally\n- VM A process V calls socket() and connect()\n- VM A process V passes connected socket to VM A process C\n- VM A process C talks to S over socket directly\n\nWhere:\n- V \u003d virtmanager process\n- S \u003d server process (e.g. compOS)\n- C \u003d client process (e.g. installd)\n\nThis way, within a VM, only one process needs permissions to connect to\nservices, and using this service, we can control access to VM services.\n\nBug: 193801719\nTest: binderRpcTest\nChange-Id: I5af60fd24354bce21d79676231172b6357b0c1a3\n"
    },
    {
      "commit": "5bff74281079ff595935bf95793999f2fa3a0d86",
      "tree": "3c878d2c21fe1cc83f6cf3112e5cc75782de596a",
      "parents": [
        "9d6bd9c2ee35d29656e95acc3ee7016d590e9a7e",
        "702115c3195b7cf886439441c32daaafd6e8362f"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Aug 04 21:58:53 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 04 21:58:53 2021 +0000"
      },
      "message": "Merge changes I809345c5,Ic6c6bec4\n\n* changes:\n  binder: Use RpcTransport\n  binder: Add RpcTransport class.\n"
    },
    {
      "commit": "9d6bd9c2ee35d29656e95acc3ee7016d590e9a7e",
      "tree": "658acf0fb677000dd729d358128dc5314e38f906",
      "parents": [
        "153f30b93816c48caf05ce6afd6788110abe63a5",
        "68251d7df223bc8a8d1e1fb33dab8679bb750795"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Wed Aug 04 20:42:12 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 04 20:42:12 2021 +0000"
      },
      "message": "Merge \"[LSC] Add LOCAL_LICENSE_KINDS to frameworks/native\""
    },
    {
      "commit": "153f30b93816c48caf05ce6afd6788110abe63a5",
      "tree": "3cab312f863ad412cfdded87b1a1377c59a795e0",
      "parents": [
        "ba971dd0348570c67a2e711b1f9830e6b3ca6d1a",
        "132d5bfb58efcb1d1d8e3b4b6a0967603e43ad29"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Aug 04 18:32:39 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 04 18:32:39 2021 +0000"
      },
      "message": "Merge \"libbinder: RPC reject excess threads\""
    },
    {
      "commit": "ba971dd0348570c67a2e711b1f9830e6b3ca6d1a",
      "tree": "e1035796093179a9758fcd8b1c21c766a43e2c96",
      "parents": [
        "a5c24dce2fcbe55ac20073b3c64d9e4aa5518436",
        "ed0d79223b73e51e26e03ceff8bbc33d633ad79b"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Aug 04 18:32:38 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 04 18:32:38 2021 +0000"
      },
      "message": "Merge \"binder: SharedRefBase uses enable_shared_from_this\""
    },
    {
      "commit": "a5c24dce2fcbe55ac20073b3c64d9e4aa5518436",
      "tree": "3b0a994c6eda57cf301ed9a719161e8738d3368d",
      "parents": [
        "6bf1365b1d8073985fd43b8b45b43c2f27e3a653",
        "f3b9c4f8188f1edd21b38fbdd88a60df38408975"
      ],
      "author": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Wed Aug 04 14:47:41 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 04 14:47:41 2021 +0000"
      },
      "message": "Merge \"binder RPC add IP address argument when setting up Inet socket\""
    },
    {
      "commit": "6bf1365b1d8073985fd43b8b45b43c2f27e3a653",
      "tree": "83fe18e358dde00d4462127e7092af7d3b17e9ce",
      "parents": [
        "506048be9e760bc2a2fd218aae79f2da33dfa260",
        "6212901557bf8309c9b7168c2089e1834400fe41"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Aug 04 02:40:05 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 04 02:40:05 2021 +0000"
      },
      "message": "Merge \"libbinder: use libbase HexString\""
    },
    {
      "commit": "702115c3195b7cf886439441c32daaafd6e8362f",
      "tree": "b8e1ef85f9b980ebd4f7d6943a1a84453586f5c5",
      "parents": [
        "f6b4d5c4505f9af62280b8511ffce0e85cb2f373"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Jun 24 15:39:18 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 03 17:43:08 2021 -0700"
      },
      "message": "binder: Use RpcTransport\n\n- after accept() / connect(), call sslAccept() /\n  sslConnect(), respectively.\n- replace ::send() / ::recv() with RpcTransport::\n  send() / recv() / peek() accordingly.\n\nAlso refacator binderRpcTest to prepare for TLS implementation.\n\nTest: TH\nTest: binderRpcTest\nBug: 190868302\n\nChange-Id: I809345c59a467cd219ebcec7a9db3a3b7776a601\n"
    },
    {
      "commit": "f6b4d5c4505f9af62280b8511ffce0e85cb2f373",
      "tree": "deec068f31f0c844801ba50096c05d7bc1c0a629",
      "parents": [
        "6212901557bf8309c9b7168c2089e1834400fe41"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Jun 23 19:12:32 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 03 17:41:54 2021 -0700"
      },
      "message": "binder: Add RpcTransport class.\n\nRpcTransport represents the transport\nlayer. The transport layer may have security (TLS) enabled\nor not, depending on how it is configured.\n\nIn libbinder, RpcTransportRaw implements RpcTransport without TLS.\n\nAdd RpcTransportShim that wraps usage of RpcTransport*. If TLS is not\nrequested, return RpcTranpsortRaw. Otherwise return RpcTransportTls.\n\nRpcTransportTls will be added in follow up CL.\n\nBug: 190868302\nTest: TH\nChange-Id: Ic6c6bec4a2135e42f32840dcd5f60b57e57439b5\n"
    },
    {
      "commit": "6212901557bf8309c9b7168c2089e1834400fe41",
      "tree": "e50951a611bd8cca47076c0354773a437dc8181b",
      "parents": [
        "a588da3ea77900adff9992ff4a231b965e931fdb"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Jul 29 12:14:44 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 03 17:41:40 2021 -0700"
      },
      "message": "libbinder: use libbase HexString\n\nBug: N/A\nTest: boot, binder_parcel_fuzzer, binderClearBuf test\nMerged-In: I5c7d40334057cf8f91b64e2fea7809933565820d\nChange-Id: I5c7d40334057cf8f91b64e2fea7809933565820d\n"
    },
    {
      "commit": "132d5bfb58efcb1d1d8e3b4b6a0967603e43ad29",
      "tree": "562ad509bee4d6db930a08c24f9ec8502083cdfd",
      "parents": [
        "a588da3ea77900adff9992ff4a231b965e931fdb"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 03 16:13:24 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue Aug 03 16:13:24 2021 -0700"
      },
      "message": "libbinder: RPC reject excess threads\n\nExisting code allows arbitrarily many threads to be attached to a\nsession, even though the server specifies a maximum.\n\nBug: 189955605\nTest: binderRpcTest (it\u0027s not possible to exploit this with existing\n    APIs)\nChange-Id: I674f1cef759ae1c4fa7d0c27bbd8f8714f7c16ed\n"
    },
    {
      "commit": "a5b0269d3c310fb363f68623e883a4c63ddd10a7",
      "tree": "77f941188b59656e218ce5ed9d61666cde4ef410",
      "parents": [
        "506048be9e760bc2a2fd218aae79f2da33dfa260"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Jul 22 20:06:48 2021 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Aug 03 14:01:19 2021 -0700"
      },
      "message": "servicedispatcher: exit when adb debugging is turned off.\n\nTest: manual by doing the following:\n\n1. cd /data/local/tmp\n   nohup servicedispatcher \u0026\n   bg\n   # Now disconnects cable and reconnect, confirm that servicedispatcher\n   #  still exists\n   # Turn USB debugging off, confirm that servicedispatcher does not\n   # exist. Though, servicedispatcher does not leave any logs, indicating\n   # that it may be killed by other processes, e.g. adbd, because it is\n   # spawned from shell.\n\n2. Add an rc file that starts servicedispatcher on property trigger.\nAfter setting the property, confirm that it is started.\nNow disconnects cable and reconnect, confirm that servicedispatcher\nstill exists.\nTurn USB debugging off, confirm that servicedispatcher does not\nexist. Logcat suggests that servicedispatcher receives callback from\nAdbService and exit()s.\n\nNote: this change does NOT prevent servicedispatcher from starting up\nwhen USB debugging is already turned off. This is because AdbService\ncannot provide the state about USB debugging.\n\nFixes: 190867939\nChange-Id: I887e51f814a24d05f26cc8d756f30e150c43b423\n"
    },
    {
      "commit": "f3b9c4f8188f1edd21b38fbdd88a60df38408975",
      "tree": "0b1966fee18fd1d2d8be4bd6429125f910276f51",
      "parents": [
        "506048be9e760bc2a2fd218aae79f2da33dfa260"
      ],
      "author": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Tue Aug 03 15:50:13 2021 +0000"
      },
      "committer": {
        "name": "Devin Moore",
        "email": "devinmoore@google.com",
        "time": "Tue Aug 03 20:50:36 2021 +0000"
      },
      "message": "binder RPC add IP address argument when setting up Inet socket\n\nThis allows connections on any IP address that the device has.\n127.0.0.1 only allows local connections.\n\nTest: test remote connection across two different devices with static ip\nof 10.10.10.2\nTest: m servicedispatcher\nTest: atest binderRpcTest binderLibTest\n\nChange-Id: Idaa61875dadb5196006faddb13e55fdd8a379d52\n"
    },
    {
      "commit": "506048be9e760bc2a2fd218aae79f2da33dfa260",
      "tree": "81e3f11821e701a01e68908af1b14cc2c5422122",
      "parents": [
        "a588da3ea77900adff9992ff4a231b965e931fdb",
        "a5a35deb6cc8d82917fcb0ce168fa65a662135dd"
      ],
      "author": {
        "name": "Christian Wailes",
        "email": "chriswailes@google.com",
        "time": "Tue Aug 03 17:36:07 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 03 17:36:07 2021 +0000"
      },
      "message": "Merge \"Fix warnings in preparation for Rust 1.54.0\""
    },
    {
      "commit": "a588da3ea77900adff9992ff4a231b965e931fdb",
      "tree": "9df7bf6fd5b82a6393934d7712c2751dd5b4a3af",
      "parents": [
        "a42cf8d65f8fa426ecda84413d10bd52da8b7782",
        "40b736e02e45d743821a51d24ed9580bbbffc71e"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Aug 02 20:08:14 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 02 20:08:14 2021 +0000"
      },
      "message": "Merge \"libbinder: disallow upgrade of explicit version\""
    },
    {
      "commit": "68251d7df223bc8a8d1e1fb33dab8679bb750795",
      "tree": "81b61beb4082c7c16a6e020b345b35ec13f18b5b",
      "parents": [
        "a42cf8d65f8fa426ecda84413d10bd52da8b7782"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Mon Aug 02 13:02:45 2021 -0700"
      },
      "committer": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Mon Aug 02 13:02:45 2021 -0700"
      },
      "message": "[LSC] Add LOCAL_LICENSE_KINDS to frameworks/native\n\nAdded SPDX-license-identifier-Apache-2.0 to:\n  cmds/cmd/fuzzer/Android.bp\n\nBug: 68860345\nBug: 151177513\nBug: 151953481\n\nTest: m all\n\nExempt-From-Owner-Approval: janitorial work\nChange-Id: I85a77883c074895c8ac3b42e0456ac2d8f2da295\n"
    },
    {
      "commit": "ed0d79223b73e51e26e03ceff8bbc33d633ad79b",
      "tree": "a87ad4ffc100291998a94d299bd6ef6f93c70647",
      "parents": [
        "ac9df9ed1fe8dcf6243bc57f395ecb13ab49eaaa"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jul 30 18:06:20 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Aug 02 10:36:12 2021 -0700"
      },
      "message": "binder: SharedRefBase uses enable_shared_from_this\n\nSo that make_shared of a SharedRefBase object will not cause\ndouble-ownership. For code compat reasons, we can\u0027t actually remove this\nclass (many places reference it).\n\nFixes: 194905504\nTest: CtsNdkBinderTestCases\nChange-Id: I04671965d97960d6630004883df77c17de066d4b\n"
    },
    {
      "commit": "a42cf8d65f8fa426ecda84413d10bd52da8b7782",
      "tree": "b61856cda76959f67984e3b70baa3450216f98fe",
      "parents": [
        "3d2a8f50294c2b7e4a82095a530e938a2c856d98",
        "75788cdd92390b29f11850fdbf635cb9962c6115"
      ],
      "author": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Mon Aug 02 09:55:59 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 02 09:55:59 2021 +0000"
      },
      "message": "Merge \"Predefine U_IN_DOXYGEN in NDK Doxyfile\""
    },
    {
      "commit": "40b736e02e45d743821a51d24ed9580bbbffc71e",
      "tree": "1996d88d16682fe31453e4ba46ad65985343deca",
      "parents": [
        "ac9df9ed1fe8dcf6243bc57f395ecb13ab49eaaa"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jul 30 14:37:10 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jul 30 14:45:24 2021 -0700"
      },
      "message": "libbinder: disallow upgrade of explicit version\n\nIf we have explicitly set a version, we want to test that that version\nis actually being used, and we don\u0027t want the other side of the\nconnection to decide to artificially upgrade the version.\n\nBug: 182938972\nTest: binderRpcTest (w/ Cls to simulate versions added)\nChange-Id: Id784672100c0445d5ea77c4fc3b063daa5efa0b0\n"
    },
    {
      "commit": "3d2a8f50294c2b7e4a82095a530e938a2c856d98",
      "tree": "0055dbc1d1af29cfe3697abd14fa010aa0317520",
      "parents": [
        "7b2c012fedd90a86f99752584a229d5a8168a942",
        "656e9d1158d331390c1e7b512fa3637da53993b3"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jul 30 20:21:31 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jul 30 20:21:31 2021 +0000"
      },
      "message": "Merge \"bindeRpcBenchmark: rpc uses separate process\""
    }
  ],
  "next": "7b2c012fedd90a86f99752584a229d5a8168a942"
}
