)]}'
{
  "log": [
    {
      "commit": "45e78fa78c2a17815efe0160c9afebbfa07b1af1",
      "tree": "09482abddf7f072afbf7daadbac2493e42dd401c",
      "parents": [
        "9d9121284b66a1222849a7d73fe1121f0d320a3f",
        "836a3100bdf7f5ab1853fee44295d86299f8073b"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Sep 05 22:04:35 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Sep 05 22:04:35 2017 +0000"
      },
      "message": "Merge \"libcameraservice: fix static analyzer complaints\"\nam: 836a3100bd\n\nChange-Id: Ia58b6c67c50ab2ddf127f612048e5e3fd999fb3a\n"
    },
    {
      "commit": "836a3100bdf7f5ab1853fee44295d86299f8073b",
      "tree": "df1ee95a962d2b5ae2b156f1b0460e2cd67cf5db",
      "parents": [
        "7fa5bce9882698c578141fe48984c93f561a9caa",
        "a0b8496016dcd98dc9b8086f0d22b14efb7e48f2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Sep 05 21:48:44 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Sep 05 21:48:44 2017 +0000"
      },
      "message": "Merge \"libcameraservice: fix static analyzer complaints\""
    },
    {
      "commit": "a0b8496016dcd98dc9b8086f0d22b14efb7e48f2",
      "tree": "869dcf8871d50fddba95b3da280b5b42e69c40d2",
      "parents": [
        "0fdeb09e898c39d9e353311577b72f1a53bc11f3"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Aug 29 17:46:19 2017 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Aug 29 17:46:44 2017 -0700"
      },
      "message": "libcameraservice: fix static analyzer complaints\n\nDue to https://bugs.llvm.org/show_bug.cgi?id\u003d34365, the static analyzer\ncomplains about use of copied `sp`s. In this case, the copy is entirely\nunnecessary, since we\u0027re just going to destroy the copied-from sp\nanyway.\n\nSpeed things up a bit + appease the analyzer by moving instead.\n\nBug: 27101951\nTest: mma. Static analyzer no longer complains.\nChange-Id: I148212e418cb3f8728383db92b564523525b633a\n"
    },
    {
      "commit": "f73c5c5e056d9e51fc4cde14cd01d94eb3ad3409",
      "tree": "22e42fe0fde559ff6701a8754a380304e0b93dcb",
      "parents": [
        "68ce743ef9ad6b1f37bfdf55eb67d836696bd422",
        "e9815965b56a4db216e481d89d99adbed190933d"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Aug 30 00:11:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Aug 30 00:11:58 2017 +0000"
      },
      "message": "Merge \"Add new syscall used by new unwinder.\"\nam: e9815965b5\n\nChange-Id: I6e24f5c0cf7219ce875328fc0ee5367f08464552\n"
    },
    {
      "commit": "1646e29f1890a24890bd09c3e1f3e816542c275b",
      "tree": "7a969dd47d3ae71bc13b5c4c721f2c3411141704",
      "parents": [
        "82651d413eb66978f2020058235811c0f5bb2094"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Aug 29 13:18:05 2017 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Aug 29 13:18:05 2017 -0700"
      },
      "message": "Add new syscall used by new unwinder.\n\nThe new unwinder also uses process_vm_readv, so added to all policies.\n\nBug: 65166211\n\nTest: Did debuggerd -b of media.extractor and media.codec process.\nChange-Id: Ifad0bc505602ec4879b0a8efe27c5a12dfa28fab\n"
    },
    {
      "commit": "3173b6f66ed39195d1071f3d13f0e6a317e61e82",
      "tree": "9d4b56cb13364858bbc39ac6bf20271c3a1b6e3a",
      "parents": [
        "38d841eafaeb1237e4060d1ff461b42827d8dbe6",
        "37417526c943ed17405177790e24f381d51492d6"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Aug 10 14:32:18 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Aug 10 14:32:18 2017 +0000"
      },
      "message": "aaudio: fix ownership problems with file descriptors\nam: 37417526c9\n\nChange-Id: I7ab11dc9f697394656333f71d12e9deac1f8ecd4\n"
    },
    {
      "commit": "37417526c943ed17405177790e24f381d51492d6",
      "tree": "3f443cc772ae925970e992987f2ed8a8569604a4",
      "parents": [
        "5d6cc7d118a7e91d4fdd3f9dad086cfd1129e4ca"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Aug 08 13:20:45 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Aug 09 20:59:27 2017 -0700"
      },
      "message": "aaudio: fix ownership problems with file descriptors\n\nUse unique_fd to track file descriptors.\nFix extra close of file descriptor in SharedMemoryParcelable.cpp.\nThis bug was causing unrelated file descriptors to be closed!\n\nBug: 64311216\nTest: write_sine.cpp, FD should survive aaudio close\nChange-Id: I4f38c83510a49ea22b79b96d970ee48153417249\nMerged-In: I4f38c83510a49ea22b79b96d970ee48153417249\n"
    },
    {
      "commit": "15cda5e5a6c3271ad569268483e77294fcddbf8e",
      "tree": "fdae28bb43d9db599ebd85397bb40e1598b21e21",
      "parents": [
        "9dcd8c28c90179d15731b72516b0ec67ea35ad0c",
        "a7a28931f13d2612bc6e8742d470364f93bdfe03"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Aug 08 00:23:54 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Aug 08 00:23:54 2017 +0000"
      },
      "message": "Merge \"APM: cap earpiece voice in call by voice volume\" into oc-dr1-dev\nam: a7a28931f1\n\nChange-Id: If15dba7ded2caa947bc8b15413148da990e35b24\n"
    },
    {
      "commit": "719a987e9d8cb54bc7da74941a8bfacbc844900d",
      "tree": "4632b96c5136184ffb14b243fbb44d713ca4a98a",
      "parents": [
        "ddef08e7254cd593881711b9f812e062676b4b3d"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Sat Aug 05 13:51:35 2017 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Aug 07 12:25:57 2017 -0700"
      },
      "message": "APM: cap earpiece voice in call by voice volume\n\nThe volume curves between AUDIO_STREAM_VOICE_CALL and other streams\n  used during a call on AUDIO_DEVICE_OUT_EARPIECE can vary greatly,\n  particularly when the volume curve is used to tune the voice signal\n  going to earpiece, not just to select a desired curve shape.\nThis can be problematic during a call as a sound playing on a different\n  stream may be assigned a much louder attenuation value than that\n  of voice.\nThe fix consists in comparing the attenuation computed for earpiece\n  to the one for VOICE_CALL, and using the lowest value (with a 3dB\n  headroom).\n\nTest: see bug\nBug: 63395386\nBug: 63976807\nBug: 38194285\n\nChange-Id: Ia55e05e2a1d6fc55d45147f4234b693a905714cc\n"
    },
    {
      "commit": "74aa2e0d857a9fb49228c66da25a3ce078091f08",
      "tree": "6e8790f1a0910742cb0c1c9c9e85412f648ad105",
      "parents": [
        "9efd51f1a10511cd7d42b1a045962d3b1ca588cc",
        "faeb8b20e8ce98d308ca5ec095eeba6583cd9ec6"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Jul 31 13:58:04 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 31 13:58:04 2017 +0000"
      },
      "message": "aaudio: fix getXRunCount\nam: faeb8b20e8\n\nChange-Id: Ic3d3c6b4f237b33d3b2bd73f619a43e37c9c667e\n"
    },
    {
      "commit": "faeb8b20e8ce98d308ca5ec095eeba6583cd9ec6",
      "tree": "ca5897bcd530e9f0e5167d30ed7945171d0a11c9",
      "parents": [
        "d478859f02323b03e2927a10055c42331f6dacc7"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Jul 25 15:15:07 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Jul 28 13:19:29 2017 -0700"
      },
      "message": "aaudio: fix getXRunCount\n\nMixer was not advancing FIFO when underflowed so the client could not\ndetect the xrun.\nAlso underruns could cause the stream to drift in time relative to other\nstreams.\n\nBug: 64033855\nTest: trigger underruns by sleeping in a callback\nChange-Id: Ia038f5048ffbff3b82e9d86e6807483dfe6879d0\n"
    },
    {
      "commit": "ac139a7be5526e525b9ef8cc24638cdeaf4df306",
      "tree": "35e75006cfb7a0e9d5f4cfb9b303064072993a4e",
      "parents": [
        "b1882b1d68bb8dbd55d9244470aee05ec406ad98",
        "4b5215993a7d78c0b9f1d5be9e55fb41cd8f32bc"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jul 27 23:25:27 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 27 23:25:27 2017 +0000"
      },
      "message": "Merge \"Camera: add proper nullptr check\" into oc-dr1-dev\nam: 4b5215993a\n\nChange-Id: I804efa28aa2ae3db93af81c6dd05d8e2ad7990b4\n"
    },
    {
      "commit": "4b5215993a7d78c0b9f1d5be9e55fb41cd8f32bc",
      "tree": "77debf6b33e909510932d38f5cfd422da13ac477",
      "parents": [
        "e6e9a4811dc43e5c393b2c45eca64d1f1608e8d0",
        "3d145ae9158eca80c4cbfe436c5b8b04cb514c46"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jul 27 23:11:00 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 27 23:11:00 2017 +0000"
      },
      "message": "Merge \"Camera: add proper nullptr check\" into oc-dr1-dev"
    },
    {
      "commit": "3d145ae9158eca80c4cbfe436c5b8b04cb514c46",
      "tree": "e285579dece0d6d7e120d1a743cc3e6c327291a6",
      "parents": [
        "dfcfad27da2216229b0141a736218ca06340ed5c"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jul 27 12:47:03 2017 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jul 27 12:47:03 2017 -0700"
      },
      "message": "Camera: add proper nullptr check\n\nTest: CTS\nBug: 64118349\nChange-Id: I2fd5c3f32d4e13560a88f4657c4f25faedd869ba\n"
    },
    {
      "commit": "b1882b1d68bb8dbd55d9244470aee05ec406ad98",
      "tree": "1355535902f26aa3d4ffa81f71a74c067d2015ad",
      "parents": [
        "264a6e84e7b6c475264d594f963a085cc3c40f6e",
        "e6e9a4811dc43e5c393b2c45eca64d1f1608e8d0"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 27 01:52:32 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 27 01:52:32 2017 +0000"
      },
      "message": "AudioFlinger: fix set parameters on mmap streams\nam: e6e9a4811d\n\nChange-Id: Ib5f75151e73feef3b297f7a2fa8704b8f0264ca2\n"
    },
    {
      "commit": "e6e9a4811dc43e5c393b2c45eca64d1f1608e8d0",
      "tree": "1eb1c7d9c18b8eeb1739f6383aa7cd9aef030b83",
      "parents": [
        "dfcfad27da2216229b0141a736218ca06340ed5c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 25 19:26:02 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 26 14:39:19 2017 -0700"
      },
      "message": "AudioFlinger: fix set parameters on mmap streams\n\nBug: 63935167\nTest: Verify capture from USB mic on mmap input stream\nChange-Id: I416eb90ef0e9d51d54f6450c374c086ab078d288\n"
    },
    {
      "commit": "264a6e84e7b6c475264d594f963a085cc3c40f6e",
      "tree": "c576df274a093bf2b0af39992506ff68db5e1dd9",
      "parents": [
        "438b5382101c9acbecf4a40509aec28cfea58156",
        "dfcfad27da2216229b0141a736218ca06340ed5c"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Jul 26 20:16:54 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 26 20:16:54 2017 +0000"
      },
      "message": "Merge \"Allow getrandom() in media.codec process\" into oc-dr1-dev\nam: dfcfad27da\n\nChange-Id: I50e264eef7d9f2bc01873060206a48a36e84d914\n"
    },
    {
      "commit": "dfcfad27da2216229b0141a736218ca06340ed5c",
      "tree": "a94779f37e5fd5250c7b4476fe78f0c3e51325de",
      "parents": [
        "72ad4b91d6ece44b7967080c44695227c6789147",
        "d371ee54c05f51a7f94471c09244b8637b922594"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 26 19:53:42 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 26 19:53:42 2017 +0000"
      },
      "message": "Merge \"Allow getrandom() in media.codec process\" into oc-dr1-dev"
    },
    {
      "commit": "438b5382101c9acbecf4a40509aec28cfea58156",
      "tree": "431837575a5ccfecf2f550599a584af37c5d7998",
      "parents": [
        "8e3c14dfdcd215f001ad8e15bf22ea499b739bbe",
        "72ad4b91d6ece44b7967080c44695227c6789147"
      ],
      "author": {
        "name": "David Lin",
        "email": "dtwlin@google.com",
        "time": "Wed Jul 26 18:13:45 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 26 18:13:45 2017 +0000"
      },
      "message": "audiopolicy: do not check for mode_in_communication for voip flags\nam: 72ad4b91d6\n\nChange-Id: Id44c8b7ef6b969dd99d1203618074037360d47c5\n"
    },
    {
      "commit": "d371ee54c05f51a7f94471c09244b8637b922594",
      "tree": "18a2adeb2955d0a578ebf6380b6b07ab85d110cf",
      "parents": [
        "db5beef4cf663e01dcdd65e953dc136b06ac81f4"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Jul 26 04:06:28 2017 -0700"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Jul 26 04:06:28 2017 -0700"
      },
      "message": "Allow getrandom() in media.codec process\n\nTest: Run camera-fast-front-back-switch.sh in the bug\n\nBug: 63907147\nChange-Id: I65d3fe66d9cd9663e431db4a56bc66f6c06a0548\n"
    },
    {
      "commit": "72ad4b91d6ece44b7967080c44695227c6789147",
      "tree": "9024805bd48a40a394aaca464ba4ec16b1efc738",
      "parents": [
        "db5beef4cf663e01dcdd65e953dc136b06ac81f4"
      ],
      "author": {
        "name": "David Lin",
        "email": "dtwlin@google.com",
        "time": "Tue Jul 25 23:46:47 2017 -0700"
      },
      "committer": {
        "name": "David Lin",
        "email": "dtwlin@google.com",
        "time": "Tue Jul 25 23:46:47 2017 -0700"
      },
      "message": "audiopolicy: do not check for mode_in_communication for voip flags\n\nSome VoIP clients may choose to open the streams as soon as the phone\nstate is set to MODE_RINGTONE to allow lower start latency when the call\nis connected. This patch removes the unnecessary check conditions for\nMODE_IN_COMMUNICATION since the stream type is sufficient indicator for\nsetting the flags for VoIP calls.\n\nBug: 62782025\nTest: manual voip mo and mt calls tests\nChange-Id: Idc7e1b6f33921580c0937dee71b2b2105cbd31eb\nSigned-off-by: David Lin \u003cdtwlin@google.com\u003e\n"
    },
    {
      "commit": "78611d7da9283d999adc52126bd0888e94e7bd86",
      "tree": "019c34e025e705658773591ce704f2c6a610219d",
      "parents": [
        "a0c514ddcfc8e02bd1c2dabd1e1be84c8963ba5a",
        "84201fee0b18165187cb407378abef7723d82111"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Jul 24 23:26:24 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 24 23:26:24 2017 +0000"
      },
      "message": "Merge \"Camera: fix emulator deadlock\" into oc-dr1-dev\nam: 84201fee0b\n\nChange-Id: I0761a575e3526a56bf60ca84913db55cfeaba416\n"
    },
    {
      "commit": "84201fee0b18165187cb407378abef7723d82111",
      "tree": "3a10d83148fc49ddb6f43d2ce219467fa382d533",
      "parents": [
        "ef00a24944032e3fcdaef43f81fea87e6297eacf",
        "598fc608a5e316c0385239ffae3ad3e261b248cf"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 24 23:23:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 24 23:23:51 2017 +0000"
      },
      "message": "Merge \"Camera: fix emulator deadlock\" into oc-dr1-dev"
    },
    {
      "commit": "a0c514ddcfc8e02bd1c2dabd1e1be84c8963ba5a",
      "tree": "338669e996ad58de10198f4902359c2e86b0d5ab",
      "parents": [
        "5c999028cf6e84b4ecf575c2e36a4c3498e3d094",
        "ef00a24944032e3fcdaef43f81fea87e6297eacf"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Jul 24 20:45:15 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 24 20:45:15 2017 +0000"
      },
      "message": "Merge \"Camera: fix race in disconnect and deleteStream\" into oc-dr1-dev\nam: ef00a24944\n\nChange-Id: I62fa67330411b38cfdc9189eaaee84a9940f267b\n"
    },
    {
      "commit": "ef00a24944032e3fcdaef43f81fea87e6297eacf",
      "tree": "448291434f10fd9caaa3108fe5c0b6ca3746a1b6",
      "parents": [
        "b2bae26bf4f537973fcfe4cc620044de3044b525",
        "5090c73caee76c3af27c58a7cd887178001b06ff"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 24 20:36:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 24 20:36:06 2017 +0000"
      },
      "message": "Merge \"Camera: fix race in disconnect and deleteStream\" into oc-dr1-dev"
    },
    {
      "commit": "598fc608a5e316c0385239ffae3ad3e261b248cf",
      "tree": "9c535db422e70d5f93f11dbe0f23e50dac5dceda",
      "parents": [
        "5090c73caee76c3af27c58a7cd887178001b06ff"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Jul 24 11:37:23 2017 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Jul 24 12:12:51 2017 -0700"
      },
      "message": "Camera: fix emulator deadlock\n\nTest: Emulator FastBasicTest 100 iteration, CTS on real device\nBug: 63933389\nChange-Id: I27013d64a9cb29cb95591dc0598afbb59ac96290\n"
    },
    {
      "commit": "5c999028cf6e84b4ecf575c2e36a4c3498e3d094",
      "tree": "4bdea031a89a1b6a5fa6b0c54d408393982f2a52",
      "parents": [
        "97f97edf956ac5afe441007da1f35d0d06822ccd",
        "318ba174a6c1c6aa43ce209e7cda03c88c151a1d"
      ],
      "author": {
        "name": "Nobuo, Ishii X",
        "email": "nobuo.ishii@sony.com",
        "time": "Fri Jul 21 20:49:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 21 20:49:50 2017 +0000"
      },
      "message": "Merge \"Camera: Correct ae regions request for metering area\" am: f402866c6a am: b94492816f\nam: 318ba174a6\n\nChange-Id: I3b4ff96e103c4d6dc0bed8c17f436e36a266335a\n"
    },
    {
      "commit": "318ba174a6c1c6aa43ce209e7cda03c88c151a1d",
      "tree": "212a398183eb2aa17170156d6d6442b145629f75",
      "parents": [
        "088db676d6d5edb62ce0698248f0e3d548c3730d",
        "b94492816f28bde8607a1bc9e0d1f980a265b2f7"
      ],
      "author": {
        "name": "Nobuo, Ishii X",
        "email": "nobuo.ishii@sony.com",
        "time": "Fri Jul 21 20:47:19 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 21 20:47:19 2017 +0000"
      },
      "message": "Merge \"Camera: Correct ae regions request for metering area\" am: f402866c6a\nam: b94492816f\n\nChange-Id: I225bb33f61e34baaf3e52bd026bedf13b6e3ad16\n"
    },
    {
      "commit": "b94492816f28bde8607a1bc9e0d1f980a265b2f7",
      "tree": "7a29b93e718f0ac9728e5f891d9cf42b723006a5",
      "parents": [
        "5c38332e6be30b6e218bf8e9c5c98ee5919f10a7",
        "f402866c6aab58d8f991f1122976714caebf7eee"
      ],
      "author": {
        "name": "Nobuo, Ishii X",
        "email": "nobuo.ishii@sony.com",
        "time": "Fri Jul 21 20:44:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 21 20:44:51 2017 +0000"
      },
      "message": "Merge \"Camera: Correct ae regions request for metering area\"\nam: f402866c6a\n\nChange-Id: I190d98bb4006f157f03994fcf8fc1755a939c683\n"
    },
    {
      "commit": "5090c73caee76c3af27c58a7cd887178001b06ff",
      "tree": "d13846fc6999e4ad63130b35d6da8b07c0de34a1",
      "parents": [
        "57cd4032c0d24056ac6a4a0776094a6f9b371676"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jul 20 16:05:29 2017 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Jul 21 10:32:22 2017 -0700"
      },
      "message": "Camera: fix race in disconnect and deleteStream\n\nCheck and return buffers to just deleted streams.\nAlso disallow deleteStream when camera runs into error to\nsimplify the stream lifecycle when error happens.\n\nTest: CTS, manual tests\nBug: 63863140\nChange-Id: I476737442041aebd393ec05998969d959cda0228\n"
    },
    {
      "commit": "97f97edf956ac5afe441007da1f35d0d06822ccd",
      "tree": "af10461a08a02d4701de410ddb860e71a3a072d0",
      "parents": [
        "9328361eb4646840f2a491759b6d688004bb61bc",
        "b2bae26bf4f537973fcfe4cc620044de3044b525"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Jul 21 16:10:56 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 21 16:10:56 2017 +0000"
      },
      "message": "Merge \"Camera: Avoid freeing outstanding input buffers\" into oc-dr1-dev\nam: b2bae26bf4\n\nChange-Id: I2fc4e48314aed88f3360049c28c8dbcec16a2235\n"
    },
    {
      "commit": "b2bae26bf4f537973fcfe4cc620044de3044b525",
      "tree": "c26eb2f0193cf589b036e488096a5afbd54420b9",
      "parents": [
        "d937a5cf8533cc571ef2ac03d543bc15aacffdcf",
        "889234d4b84ef011c21e28be51ff614231603a06"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 21 16:05:00 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 21 16:05:00 2017 +0000"
      },
      "message": "Merge \"Camera: Avoid freeing outstanding input buffers\" into oc-dr1-dev"
    },
    {
      "commit": "9328361eb4646840f2a491759b6d688004bb61bc",
      "tree": "6353fba065feb3cc47aa55f9bbd5e6639e2e03ce",
      "parents": [
        "c63c9c9a267a5dffeae3463d11053262f77b8b36",
        "d937a5cf8533cc571ef2ac03d543bc15aacffdcf"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Jul 21 03:36:12 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 21 03:36:12 2017 +0000"
      },
      "message": "Merge \"aaudio: reduce glitching by improving sleep timing\" into oc-dr1-dev\nam: d937a5cf85\n\nChange-Id: I8db212d45e2eccf8a7d9785a406cccd49e2167d2\n"
    },
    {
      "commit": "d937a5cf8533cc571ef2ac03d543bc15aacffdcf",
      "tree": "03373f58f71394f5df6b35039f5bfab48962280b",
      "parents": [
        "57cd4032c0d24056ac6a4a0776094a6f9b371676",
        "fd34a9310659aa53e9e10d6826651577a75f6447"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 21 03:31:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 21 03:31:06 2017 +0000"
      },
      "message": "Merge \"aaudio: reduce glitching by improving sleep timing\" into oc-dr1-dev"
    },
    {
      "commit": "fd34a9310659aa53e9e10d6826651577a75f6447",
      "tree": "dc284d0eb17cbd8a023a2aec52d854c809b02c38",
      "parents": [
        "679b6f6eaaeba35fcf96cb04a784308211d4b319"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Jul 19 07:03:52 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Jul 20 16:10:41 2017 -0700"
      },
      "message": "aaudio: reduce glitching by improving sleep timing\n\nALways sleep a minimum time to avoid busy wait in real-time thread.\nAccount for wakeup jitter in threads on the other side of a FIFO.\nAvoid race condition that caused a longer sleep than necessary.\nFix calculation of mFreeRunning for capture mode.\n\nAlso added systrace logging, which was used to debug this.\n\nBug: 63814792\nTest: Run GStomper on Walleye with MMAP on, see bug\nChange-Id: I7b20098580ff454365425bd21e43c17ade532a0a\n"
    },
    {
      "commit": "889234d4b84ef011c21e28be51ff614231603a06",
      "tree": "c0092cef9a6cd772b1c7d546acb6a437e454f124",
      "parents": [
        "679b6f6eaaeba35fcf96cb04a784308211d4b319"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Tue Jul 18 18:21:26 2017 -0700"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Thu Jul 20 11:44:02 2017 -0700"
      },
      "message": "Camera: Avoid freeing outstanding input buffers\n\nThe producer end can disconnect at any time which\nwill trigger the freeing of the input buffer. If\nany input buffers are outstanding and being processed\nby the camera device freeing them can cause stability\nissues.\n\nBug: 63682712\nTest: Manual using application.\nChange-Id: I25da97786d75e82b1b13dce34953de597bea9b2e\n"
    },
    {
      "commit": "c63c9c9a267a5dffeae3463d11053262f77b8b36",
      "tree": "0646cfa43f86611c555ac7808e6866c93c9dbdf1",
      "parents": [
        "9e0561a787b80d1c96e40741b3ee8f4bb456d1f8",
        "57cd4032c0d24056ac6a4a0776094a6f9b371676"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jul 20 17:43:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 20 17:43:11 2017 +0000"
      },
      "message": "Merge \"Camera3Device: Don\u0027t time out on long exposures\" into oc-dr1-dev\nam: 57cd4032c0\n\nChange-Id: Ieda8cfeb352c14b857f8a9f0b7ed33bc0ce0abe1\n"
    },
    {
      "commit": "57cd4032c0d24056ac6a4a0776094a6f9b371676",
      "tree": "a25a25301c9ad9f03a00798547863623f9292678",
      "parents": [
        "679b6f6eaaeba35fcf96cb04a784308211d4b319",
        "10bd57e0112ca12155463d44ab327fbf11fde7bc"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jul 20 17:37:41 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 20 17:37:41 2017 +0000"
      },
      "message": "Merge \"Camera3Device: Don\u0027t time out on long exposures\" into oc-dr1-dev"
    },
    {
      "commit": "9e0561a787b80d1c96e40741b3ee8f4bb456d1f8",
      "tree": "a05ecd70a2ca30b347957ef3822f0bc67e5bb373",
      "parents": [
        "31b16502cfe969e8f4d74efe6c6b531958ddcaf9",
        "679b6f6eaaeba35fcf96cb04a784308211d4b319"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Thu Jul 20 00:34:21 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 20 00:34:21 2017 +0000"
      },
      "message": "Merge \"Camera: fix deadlock with flush\" into oc-dr1-dev\nam: 679b6f6eaa\n\nChange-Id: I9fa7a09448ff4b61584e91d04ba974c48e2f4854\n"
    },
    {
      "commit": "679b6f6eaaeba35fcf96cb04a784308211d4b319",
      "tree": "fdeb8fa26bebfb291dd44c0781d7fe0bac3e013a",
      "parents": [
        "3e4de776665ff287cfd487ca4c7df87fbf73efa4",
        "657c1877d86a0d1353d2170026e2fcf46cf1eae0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jul 20 00:30:42 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 20 00:30:42 2017 +0000"
      },
      "message": "Merge \"Camera: fix deadlock with flush\" into oc-dr1-dev"
    },
    {
      "commit": "31b16502cfe969e8f4d74efe6c6b531958ddcaf9",
      "tree": "f24805baa7578f95c4e4503f2778f89ac540151a",
      "parents": [
        "a617486fd9ffd7e645465a10d8aa2e1358daf25c",
        "3e4de776665ff287cfd487ca4c7df87fbf73efa4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 19 22:47:44 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 19 22:47:44 2017 +0000"
      },
      "message": "audioflinger: enable volume listener on direct outputs\nam: 3e4de77666\n\nChange-Id: I4be0cd0d693626c9049583942239fdd35b2e53c6\n"
    },
    {
      "commit": "3e4de776665ff287cfd487ca4c7df87fbf73efa4",
      "tree": "4c2a96d88ce1df146906cfabc3178a531810c60d",
      "parents": [
        "719e24e82381cccdcb84524c5bef9a3b3ad7c1b4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 16 16:55:08 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 19 20:19:58 2017 +0000"
      },
      "message": "audioflinger: enable volume listener on direct outputs\n\nAlways allow effects with no process function on any output\nthread type as there is no impact on performance and no risk of\nthe audio properties not being supported by the effect.\n\nBug: 63015903\nTest: place a Skype call over SCO and verify the volume listener\ncan be created.\n\nChange-Id: I99db7802cec88a618808e500b74f4c78165199fe\n"
    },
    {
      "commit": "657c1877d86a0d1353d2170026e2fcf46cf1eae0",
      "tree": "79933dda3a4fd9ce3205298d8de67b92b56e7aec",
      "parents": [
        "4f771e05dba8fc3f01ad2af4befe50f085e5f3fd"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jul 18 18:09:57 2017 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Jul 19 12:05:38 2017 -0700"
      },
      "message": "Camera: fix deadlock with flush\n\nTest: CTS, run testReprocessAbort 50 times\nBug: 63701864\nChange-Id: Id41b68da143c9292437f35f8960ce4f80b9d59f7\n"
    },
    {
      "commit": "0a484a048208b130c13ba1ee959b6c6a45c446b3",
      "tree": "16dbd5382465a2d33e83aff7287d64042f3514fc",
      "parents": [
        "ae6088e4563a4503df06566accda7e21f0ccdf0e"
      ],
      "author": {
        "name": "Nobuo, Ishii X",
        "email": "nobuo.ishii@sony.com",
        "time": "Wed Jun 14 16:38:34 2017 +0900"
      },
      "committer": {
        "name": "Hidenari Koshimae",
        "email": "hidenari.koshimae@sonymobile.com",
        "time": "Wed Jul 19 06:32:51 2017 +0000"
      },
      "message": "Camera: Correct ae regions request for metering area\n\nThe size of ae regions may be zero by rounding error.\nBut it should be at least 1 if metering area size is not zero.\n\nThis problem causes CTS fail for\nandroid.hardware.cts.CameraTest#testMeteringAreas on\nthe device which has the active array width less than 3556\nif the preview size is 1920x1080.\n\nBug: 63795820\nTest: ran Camera CTS\nChange-Id: Ie3995e40aedba193393df8fd05d95f740a25ef3d\n"
    },
    {
      "commit": "2dd56c9e2c9874471d3c9ec7d2bbfdaccbd554d4",
      "tree": "6432b4bd2f70fa04e6be7c02477ac9162923fe68",
      "parents": [
        "d36be4e4d85a2671de4f410b5ed1a6d1314ab553",
        "c1fe2634dc228640119849692cd1defb88bc2209"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Jul 18 22:22:19 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 18 22:22:19 2017 +0000"
      },
      "message": "Merge \"aaudio: fix intermittent hang and position error\" into oc-dr1-dev\nam: c1fe2634dc\n\nChange-Id: I44d29f0bc88935ccba6b365fec242568d35f6079\n"
    },
    {
      "commit": "c1fe2634dc228640119849692cd1defb88bc2209",
      "tree": "453a26bb059c59f8216f0883768706ea43620c14",
      "parents": [
        "29204646b945adf58390b7d06f2cb223d6b2c4c0",
        "940083c3049e269f6c150d5477eccb6bad32b129"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 18 22:15:39 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 18 22:15:39 2017 +0000"
      },
      "message": "Merge \"aaudio: fix intermittent hang and position error\" into oc-dr1-dev"
    },
    {
      "commit": "10bd57e0112ca12155463d44ab327fbf11fde7bc",
      "tree": "10f9e7fac4f86f0b6cf80eaffe137fc12d911f60",
      "parents": [
        "29204646b945adf58390b7d06f2cb223d6b2c4c0"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Jun 23 16:22:44 2017 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jul 18 13:57:40 2017 -0700"
      },
      "message": "Camera3Device: Don\u0027t time out on long exposures\n\n - Calculate expected duration based on request settings instead\n   of using a fixed timeout for shutdown\n - Ensure the timeouts are always at least 5 seconds anyway\n\nTest: Camera CTS passes with a long-exposure device\nBug: 38212789\nChange-Id: I6b154710314cdc84b223f1a9f39fead9262ce27b\n"
    },
    {
      "commit": "ef28fdb8d849f1bda5799080b898e429bc29259c",
      "tree": "41a43d7f1fdcc8043bc3fc7ad8f56de62f7ebb08",
      "parents": [
        "03e1cd73c64654d096243325ac3e6dc3f0b6e2fe",
        "4dbbda2d8c84eabc0cd7c7ee032c2280258f4ffb"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Jul 18 13:53:16 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 18 13:53:16 2017 +0000"
      },
      "message": "Merge \"audio:  reduce logspam from MMAP mode\" into oc-dr1-dev\nam: 4dbbda2d8c\n\nChange-Id: I05dc5fc8eed6e3623f01b87df205d009f04cc3f8\n"
    },
    {
      "commit": "4dbbda2d8c84eabc0cd7c7ee032c2280258f4ffb",
      "tree": "25332d68058c967fcd1686bd9032459b7ab4a8c4",
      "parents": [
        "d8365c54d049aade9e02ccae722f311f846cad9a",
        "c7abac4329e15cda4bbbd25f8fc4a93b70d70d0a"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Jul 18 13:47:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 18 13:47:40 2017 +0000"
      },
      "message": "Merge \"audio:  reduce logspam from MMAP mode\" into oc-dr1-dev"
    },
    {
      "commit": "03e1cd73c64654d096243325ac3e6dc3f0b6e2fe",
      "tree": "236dbc6422080fef61d691f61f944991125a19c8",
      "parents": [
        "1198d860283bfc31b39c587580463eef9fcc6720",
        "d8365c54d049aade9e02ccae722f311f846cad9a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 18 00:39:26 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 18 00:39:26 2017 +0000"
      },
      "message": "audio flinger: fix AEC and NS suspend logic\nam: d8365c54d0\n\nChange-Id: Ibe210d88cbd423dfb6c9840946e3d4e35c27dfd1\n"
    },
    {
      "commit": "940083c3049e269f6c150d5477eccb6bad32b129",
      "tree": "ae4c20530003d7c9086d343a3b3e7d1d5b17562e",
      "parents": [
        "af842eb79ed9943b7a4495136197e093fc7d8ba7"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Jul 17 17:00:02 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Jul 17 17:00:02 2017 -0700"
      },
      "message": "aaudio: fix intermittent hang and position error\n\nFix hang caused by recursive mutex.\nFix disconnect caused by getPosition() failing, which was\njust because the stream wasn\u0027t ready yet.\n\nBug: 63775537\nBug: 63709749\nTest: run \"aaudio_loopback -pl -Pl -c2 -n6 -te -m\" many times\nChange-Id: Ic1d54360b55cfc8ecc1809584c262bc0976c58bb\n"
    },
    {
      "commit": "d8365c54d049aade9e02ccae722f311f846cad9a",
      "tree": "b0678982480e7a46b21fd0a855fd1cfd242ffdb1",
      "parents": [
        "30bf42ca7242f5f7849cbe7ce61fc994b88c5b56"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 16 15:27:05 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 17 15:26:56 2017 -0700"
      },
      "message": "audio flinger: fix AEC and NS suspend logic\n\nMake sure we suspend/restore AEC and NS only when the suspend condition\nactually changes to avoid mismatch in number of suspends/restores\ncausing the ref counting mechanism to leave the effects in suspend mode\nwhile they should not.\n\nAlso clear the suspend state on an effect session before parking it in\nthe orphan chains list so that it is in default state whne attached to a\nnew record thread.\n\nBug: 63015903\nTest: verify that switching BT SCO on/off with Duo enables or disables\nAEC and NS accordingly\n\nChange-Id: I4d0f0bf818deca3952da3c67bb7e83cb500429c7\n"
    },
    {
      "commit": "1198d860283bfc31b39c587580463eef9fcc6720",
      "tree": "57944797a7387aabdc39243df69a909fe0c2f561",
      "parents": [
        "ef63d8b63e6cc81aaad77e46364d6360a0df5855",
        "30bf42ca7242f5f7849cbe7ce61fc994b88c5b56"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Mon Jul 17 19:09:34 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 17 19:09:34 2017 +0000"
      },
      "message": "Merge \"Add parameters validation on AAudio MMap server\" into oc-dr1-dev\nam: 30bf42ca72\n\nChange-Id: I6e200b18f9d1c7a02b702a41715ef061b5cafdd8\n"
    },
    {
      "commit": "30bf42ca7242f5f7849cbe7ce61fc994b88c5b56",
      "tree": "f1212996c4a23eee3d8671813b1a57d1613c4c64",
      "parents": [
        "32ab0585ffe4c84fa9b873ab2a51ed977d70b02f",
        "901f65deb49786f4dffd39ac965c0bb681392c0b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 17 19:04:45 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 17 19:04:45 2017 +0000"
      },
      "message": "Merge \"Add parameters validation on AAudio MMap server\" into oc-dr1-dev"
    },
    {
      "commit": "c7abac4329e15cda4bbbd25f8fc4a93b70d70d0a",
      "tree": "f2402076af44c039478a9bfec1017903a702aa40",
      "parents": [
        "af842eb79ed9943b7a4495136197e093fc7d8ba7"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Jul 17 11:13:37 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Jul 17 11:13:37 2017 -0700"
      },
      "message": "audio:  reduce logspam from MMAP mode\n\nBug: 63760826\nTest: run CTS nativemedia/aaudio and notice less logging\nChange-Id: I04564963f85577a53f40f1bad064f5e79723ac76\n"
    },
    {
      "commit": "ef63d8b63e6cc81aaad77e46364d6360a0df5855",
      "tree": "a2a268a9a1f1dd1922abf4256308c2672e65d8ab",
      "parents": [
        "abb8fb7f78c68ae9a960c8e9107fe663da7ff709",
        "32ab0585ffe4c84fa9b873ab2a51ed977d70b02f"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Mon Jul 17 18:06:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 17 18:06:59 2017 +0000"
      },
      "message": "Merge \"Camera: fix bufferFreed callback object lifecycle issue\" into oc-dr1-dev\nam: 32ab0585ff\n\nChange-Id: Ief8f546531f68d6521f69ad0e8d7307b390703c6\n"
    },
    {
      "commit": "32ab0585ffe4c84fa9b873ab2a51ed977d70b02f",
      "tree": "36351650f159729fc63e0c7d1622f761e8d134b6",
      "parents": [
        "af842eb79ed9943b7a4495136197e093fc7d8ba7",
        "db1e864daf162007341d6715094330c13bf5482f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 17 18:01:56 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 17 18:01:56 2017 +0000"
      },
      "message": "Merge \"Camera: fix bufferFreed callback object lifecycle issue\" into oc-dr1-dev"
    },
    {
      "commit": "abb8fb7f78c68ae9a960c8e9107fe663da7ff709",
      "tree": "384f1a42b8673d2407e6a825d065e0f1c58f8e77",
      "parents": [
        "7e6e52f56208694f52bd94d95b21217684968121",
        "af842eb79ed9943b7a4495136197e093fc7d8ba7"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Sat Jul 15 18:19:40 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 18:19:40 2017 +0000"
      },
      "message": "Merge \"Camera: Fix \"use after free\" for mOutstandingBuffers\" into oc-dr1-dev\nam: af842eb79e\n\nChange-Id: Ia107339f617ccd73510ab8ceeeb61559fb1de958\n"
    },
    {
      "commit": "af842eb79ed9943b7a4495136197e093fc7d8ba7",
      "tree": "9af834fcbca893485c5b1c69bb5d323400c81438",
      "parents": [
        "80e7e68dbf734da1c387152f1757aa70e88ddf5a",
        "1c484a65f1afeec8e4bf2aecbeab9df103f14c85"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jul 15 18:14:19 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 15 18:14:19 2017 +0000"
      },
      "message": "Merge \"Camera: Fix \"use after free\" for mOutstandingBuffers\" into oc-dr1-dev"
    },
    {
      "commit": "c56bb398f4a1a391b540e2c6fe2862fde0248b3c",
      "tree": "8e32fc821f2cb2bd860129c6930231a75bc1c3c8",
      "parents": [
        "4a9524812b602399ceac9e2ce24ffe1e3ad58f88",
        "e68bb3371238e32e45cd3133a143f7a096aa9c2b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 01:04:08 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 01:04:08 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev am: 125fc63d73 am: a5d728cce1 am: ccd8680538 am: dd36008b78\nam: e68bb33712\n\nChange-Id: Ia8dd203330a310795c71282386ed527f9eb7267f\n"
    },
    {
      "commit": "80e7e68dbf734da1c387152f1757aa70e88ddf5a",
      "tree": "bd7a2d12878881c57ff715393a49a8dfdbad1110",
      "parents": [
        "42ab59fcd8b54ef206ea4bdcd1299cce11bac355",
        "dd36008b782ec1da0ded327dc51292d102c690d4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 01:00:07 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 01:00:07 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev am: 125fc63d73 am: a5d728cce1 am: ccd8680538\nam: dd36008b78\n\nChange-Id: Icd196218ebeaa40b2463b1a35eb2cb9e27d76b0c\n"
    },
    {
      "commit": "e68bb3371238e32e45cd3133a143f7a096aa9c2b",
      "tree": "1d9ee9962cff59ef4762cfb07385c1637e5b4da7",
      "parents": [
        "aee0c0b5080ecbb3cc06e78daf8538bef8e9416d",
        "dd36008b782ec1da0ded327dc51292d102c690d4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 01:00:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 01:00:06 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev am: 125fc63d73 am: a5d728cce1 am: ccd8680538\nam: dd36008b78\n\nChange-Id: I4ffd95bcaa4dd9a6637c93e85d4c3c18c0a7f89f\n"
    },
    {
      "commit": "dd36008b782ec1da0ded327dc51292d102c690d4",
      "tree": "62688bd7c8ba2a2e0f770cd8fb7550293abbe5c8",
      "parents": [
        "024216f32b482c9a9609263f9c1711fc08f86087",
        "ccd8680538d3bc3b3c0ef201b3511ee065eca12f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 00:56:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 00:56:06 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev am: 125fc63d73 am: a5d728cce1\nam: ccd8680538\n\nChange-Id: I0af69333bcb67ef6534175ce986fc05e5a26ffa6\n"
    },
    {
      "commit": "ccd8680538d3bc3b3c0ef201b3511ee065eca12f",
      "tree": "34afa2ab795ffd73ee304c1a53f83a594d615b5f",
      "parents": [
        "4fa1ff8958e29dd89ddce99dfc6d94ea2146481b",
        "a5d728cce1d43536c56fffe919df19a897b95665"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 00:52:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 00:52:06 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev am: 125fc63d73\nam: a5d728cce1\n\nChange-Id: I82e1af7e7ff4b7dcc7a9b1121893f7514fdbf05d\n"
    },
    {
      "commit": "a5d728cce1d43536c56fffe919df19a897b95665",
      "tree": "3ab3064f8c7e6c4c721844ceaebb08243b8e0e5e",
      "parents": [
        "8ea826e20d1b1ffc8983f94a589744614f1e1dcd",
        "125fc63d73ea651f051c4b5c4b00fc35e43cacec"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 15 00:48:07 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 15 00:48:07 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into nyc-mr1-dev\nam: 125fc63d73\n\nChange-Id: I33f038d357f2f698df9b37f09ac03e72c32b9bd8\n"
    },
    {
      "commit": "1c484a65f1afeec8e4bf2aecbeab9df103f14c85",
      "tree": "72f0e7680065017a1553f2cc00e60766cefcccd6",
      "parents": [
        "ac31fb897846c6e8c72ade7fa5e4ab3c00bf77c9"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Jul 14 15:14:19 2017 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Jul 14 16:27:58 2017 -0700"
      },
      "message": "Camera: Fix \"use after free\" for mOutstandingBuffers\n\nFix below use after free issues:\n\n\u003d\u003d4947\u003d\u003dERROR: AddressSanitizer: heap-use-after-free on address\n0xec61f434 at pc 0xf1954c18 bp 0xed3ff6f0 sp 0xed3ff6e8\nREAD of size 4 at 0xec61f434 thread T12 (C3Dev-1-ReqQueu)\n  #0 0xf1954c17 in _ZN7android7camera313Camera3Stream23removeOutstandingBufferERK21camera3_stream_buffer\n  frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.cpp:508\n  #1 0xf1954c17 in _ZN7android7camera313Camera3Stream12returnBufferERK21camera3_stream_bufferx\n  frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.cpp:543\n  #2 0xf193c663 in _ZN7android13Camera3Device13RequestThread21cleanUpFailedRequestsEb\n  frameworks/av/services/camera/libcameraservice/device3/Camera3Device.cpp:4131\n  #3 0xf193db5b in _ZN7android13Camera3Device13RequestThread10threadLoopEv\n  frameworks/av/services/camera/libcameraservice/device3/Camera3Device.cpp:3854\n  #4 0xf1562f35 in _ZN7android6Thread11_threadLoopEPv system/core/libutils/Threads.cpp:747\n  #5 0xf0ee6947 in _ZL15__pthread_startPv bionic/libc/bionic/pthread_create.cpp:214\n  #6 0xf0eba381 in __start_thread bionic/libc/bionic/clone.cpp:47\n\n0xec61f434 is located 68 bytes inside of 136-byte region [0xec61f3f0,0xec61f478)\nfreed by thread T0 here:\n  #7 0xf1a64963 in _ZdlPvSt11align_val_tRKSt9nothrow_t [asan_rtl]\n  #8 0xf155df09 in _ZNK7android7RefBase9decStrongEPKv system/core/libutils/RefBase.cpp:435\n  #9 0xf19693ab in _ZN7android7camera319Camera3OutputStream22BufferReleasedListener16onBufferReleasedEv\n    frameworks/av/services/camera/libcameraservice/device3/Camera3OutputStream.cpp:720\n  #3 0x1ff56dfb  (\u003cunknown module\u003e)\n\nBug: 62218367\nChange-Id: Ib03415f73a1e3c283520af752904b1bcc40bff28\n"
    },
    {
      "commit": "db1e864daf162007341d6715094330c13bf5482f",
      "tree": "76789003760a648ef9951ea15148029b2ef905e1",
      "parents": [
        "7bb115f1033fd7ef5e3556fc384aac475d16cce7"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Jul 14 15:19:30 2017 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Jul 14 15:37:50 2017 -0700"
      },
      "message": "Camera: fix bufferFreed callback object lifecycle issue\n\nMake sure the callback object won\u0027t be freed in the middle\nof callback execution.\n\nTest: CTS + stress test\nBug: 63683767\nChange-Id: I6fb1b754cadb3d499c1c246687d2f60d444d00bb\n"
    },
    {
      "commit": "901f65deb49786f4dffd39ac965c0bb681392c0b",
      "tree": "c80ff068d9aae5d4292387883b24b6be6b2f8ad7",
      "parents": [
        "6ac42ebf890ce99b401e1962db8ceecfb38b7a65"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Wed Jul 12 17:56:35 2017 -0700"
      },
      "committer": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Fri Jul 14 13:42:46 2017 -0700"
      },
      "message": "Add parameters validation on AAudio MMap server\n\nBug: 63384314\nTest: adb shell /system/bin/write_sine -m -pl -n4 \\\n\u0026\u0026 adb shell /system/bin/write_sine -pl -n4 \\\n\u0026\u0026 adb shell /system/bin/write_sine_callback -m -pl -n4 \\\n\u0026\u0026 adb shell /system/bin/write_sine_callback -pl -n4 \\\n\u0026\u0026 adb shell /system/bin/CtsNativeMediaAAudioTestCases32\n\nChange-Id: I462f956e8fc25eb583699af6389e0f299243eafb\n"
    },
    {
      "commit": "f021afb79508d2aa06469855416fc89387fab1ed",
      "tree": "26ab3f58b806f48b570991207480f8def77b0276",
      "parents": [
        "bc1ab2ffbbc1e185da19f92e5549f6024771e3d8",
        "7bb115f1033fd7ef5e3556fc384aac475d16cce7"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Jul 14 00:09:03 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 14 00:09:03 2017 +0000"
      },
      "message": "Merge \"Camera: fix buffer leak in device error condition\" into oc-dr1-dev\nam: 7bb115f103\n\nChange-Id: I7f67785d81650c2dd15eaa10c59e4a110c68a47e\n"
    },
    {
      "commit": "7bb115f1033fd7ef5e3556fc384aac475d16cce7",
      "tree": "eb340f49ba586e1a7f035b99447f5e3e3029e995",
      "parents": [
        "ac31fb897846c6e8c72ade7fa5e4ab3c00bf77c9",
        "f3fe36ff1d730aea85fe652b778c6e093b1242e7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 14 00:00:03 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 14 00:00:03 2017 +0000"
      },
      "message": "Merge \"Camera: fix buffer leak in device error condition\" into oc-dr1-dev"
    },
    {
      "commit": "bc1ab2ffbbc1e185da19f92e5549f6024771e3d8",
      "tree": "8188c53fba5bf53640eccc4f14684117f9fe1ead",
      "parents": [
        "556a5a06e8fab58cdf3f449c5f9de64daffae763",
        "8d0dd68b05a7a82d684ad78a0d33c8b9ddfc526f"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Thu Jul 13 22:51:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 13 22:51:59 2017 +0000"
      },
      "message": "remove extraneous `using namespace android` and deprecate utils/Log.h am: 357552eb72\nam: 8d0dd68b05\n\nChange-Id: I49931f5a7becf28517e3801f6089fb720746a2ee\n"
    },
    {
      "commit": "357552eb724722dc620c56d2151bdfad07467952",
      "tree": "54dae79fff516a8d0d9e95a303a6c3680e3bf0df",
      "parents": [
        "37cd5f116dfbde69be3625e7a2112346393b0ef1"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Wed Jul 12 13:48:26 2017 -0700"
      },
      "committer": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Thu Jul 13 22:39:27 2017 +0000"
      },
      "message": "remove extraneous `using namespace android` and deprecate utils/Log.h\n\nThis namespace is not used by this file and its declaration is removed\nin a separate CL from utils/Log.h, which is the only place it is\ndefined, so we must remove this extraneous line.\n\nAlso, since that separate CL is deprecating utils/Log.h in favor of\nlog/log.h, we make the switch to the new header.\n\nTest: Build\nExempt-From-Owner-Approval: Owners file needs updating\nChange-Id: I34aa80765d30c79f8cb67eaf95a9995066bd672e\n"
    },
    {
      "commit": "63d16055f18d03744bde025fdb77edf31b15908b",
      "tree": "b0295bcd77bd6786d273f07cd5c49aebfe8bedef",
      "parents": [
        "a27803d0bf1887602e452304a5d82216a314168e",
        "437f48e64adb5d4180b621c6c1f5f2a200b81f82"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jul 13 00:50:38 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 13 00:50:38 2017 +0000"
      },
      "message": "Merge \"CameraService: Clean up ICameraServiceProxy; send it more info\" into oc-dr1-dev\nam: 437f48e64a\n\nChange-Id: I88f946699006b41fc6f90c4365f3de75ae3a3381\n"
    },
    {
      "commit": "437f48e64adb5d4180b621c6c1f5f2a200b81f82",
      "tree": "0a6dcba59fe12157a412961d7e8603296e88244f",
      "parents": [
        "6ac42ebf890ce99b401e1962db8ceecfb38b7a65",
        "e8c96c765b95ec7dcd10732621a825fce05960c6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jul 13 00:44:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 13 00:44:40 2017 +0000"
      },
      "message": "Merge \"CameraService: Clean up ICameraServiceProxy; send it more info\" into oc-dr1-dev"
    },
    {
      "commit": "a27803d0bf1887602e452304a5d82216a314168e",
      "tree": "e23a9e11efc1df7a04e51e19228bbf33649f4e31",
      "parents": [
        "7c126c23f4f1d70454e2a3564cd55fd000af34bd",
        "6ac42ebf890ce99b401e1962db8ceecfb38b7a65"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 12 20:49:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 12 20:49:58 2017 +0000"
      },
      "message": "Merge \"aaudio: indicate client UID and PID to audio flinger\" into oc-dr1-dev\nam: 6ac42ebf89\n\nChange-Id: Ifc32388d25b4a1a4c6edee785f00775c7e864f3a\n"
    },
    {
      "commit": "6ac42ebf890ce99b401e1962db8ceecfb38b7a65",
      "tree": "4492d55993c5277b46332bc26c390e9eec819537",
      "parents": [
        "4a907a1760ee9ee3ab603f064cfe24a2cb32ec82",
        "cb4dae216758d9e9a28050f65097f1ce905c03e9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 12 20:42:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 12 20:42:51 2017 +0000"
      },
      "message": "Merge \"aaudio: indicate client UID and PID to audio flinger\" into oc-dr1-dev"
    },
    {
      "commit": "f3fe36ff1d730aea85fe652b778c6e093b1242e7",
      "tree": "fc7d192a4251aeab772e903b6254571bfcdb9c2b",
      "parents": [
        "4a907a1760ee9ee3ab603f064cfe24a2cb32ec82"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Fri Jul 07 18:23:18 2017 -0700"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Wed Jul 12 13:40:02 2017 -0700"
      },
      "message": "Camera: fix buffer leak in device error condition\n\nTest: CTS, manually inspect dmabuf after camera closed\nBug: 63302673\nChange-Id: Ie91ef4f92aaacb7e7c70c660f6a072168871cb10\n"
    },
    {
      "commit": "7c126c23f4f1d70454e2a3564cd55fd000af34bd",
      "tree": "407ac6496da02dd2825e61a4ebed762d97bd038e",
      "parents": [
        "a4209484214f292eabde20745d08c3b0f6782651",
        "4a907a1760ee9ee3ab603f064cfe24a2cb32ec82"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed Jul 12 19:48:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 12 19:48:17 2017 +0000"
      },
      "message": "Merge \"audioflinger: Fix missing \u0027return\u0027 statement in \u0027getParameters\u0027\" into oc-dr1-dev\nam: 4a907a1760\n\nChange-Id: If4bbc53fbccefa506f1c89d46de1265fc9bcacf0\n"
    },
    {
      "commit": "cb4dae216758d9e9a28050f65097f1ce905c03e9",
      "tree": "4c3c49679384d70006675e9e06c7e8e8117e206c",
      "parents": [
        "0acb3209107802e2ab116f8374aab886579729bb"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 01 19:39:32 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 12 12:17:33 2017 -0700"
      },
      "message": "aaudio: indicate client UID and PID to audio flinger\n\nImplement correct indication of client UID and PID to audio flinger\nfor AAudio MMAP streams in both exclusive mode and shared mode.\n- Add start/stop client methods on MMAP streams used only when the MMAP\nstream is in AAudio service and carries a mix of shared streams.\n- Add \"In Service\u0027\" indication from \"client\" side to AAudioServiceStreamMMAP\nso that the behavior can be adapted accordingly.\n- Modify logic on audio flinger side with regard to mmap tracks and\naudio HAL stream activity:\n  - use same audio session for all clients on a same stream to match\n  audio policy logic to share same direct output stream for clients on same\n  session. This is also more consistent with current volume and effect\n  handling as all MMAP  clients sharing the same output stream have the\n  same volume and use case.\n  - start/stop the HAL when the stream is started/stopped with the initial client\n  handle (returned when the stream is opened) but do not create a track.\n  AAudioService implementation will always send an additional start command before\n  first client starts and a stop command after last client stops,\n  in both shared and exclusive mode.\n  - start/stop a track only if the start/stop stream command is received\n  with a handle different from the initial handle.\n- Allow more than one active client from the same UID on a MMAP input in audio policy.\n\nBug: 62950008\nTest: verify playback and capture in mmap mode\nMerged-In: I86151bbb637ff172d2fd5f813056eab13a7bcd3c\nChange-Id: I86151bbb637ff172d2fd5f813056eab13a7bcd3c\n"
    },
    {
      "commit": "aa165e5358403341aaca87bd7bedc39e425ea6b6",
      "tree": "c09eec55161beaca6b4838d7d398157c9cc19bc8",
      "parents": [
        "ed0f8f425d90254590bf49e2b6e2fe77be679701"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed Jul 12 10:39:16 2017 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed Jul 12 10:39:16 2017 -0700"
      },
      "message": "audioflinger: Fix missing \u0027return\u0027 statement in \u0027getParameters\u0027\n\nWithout a \u0027return\u0027, the code attempts to call a method on\na null thread instance.\n\nBug: 62918718\nTest: doesn\u0027t crash when bogus audio_io_handle passed to \u0027getParameters\u0027\nChange-Id: I356dfd9531e0de41d869b8e29909dee5843dc795\n"
    },
    {
      "commit": "9f2b9d3a001834c1e1990ac8e2a8717ad38c7eee",
      "tree": "f20cfefdb64d64fc8182b5b4daed603b378dd215",
      "parents": [
        "47ab9fea542fe518b04df30a6c10a25e0eec91f7",
        "ed0f8f425d90254590bf49e2b6e2fe77be679701"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 11 17:58:57 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 11 17:58:57 2017 +0000"
      },
      "message": "Merge \"audio policy: fix audio device properties loading\" into oc-dr1-dev\nam: ed0f8f425d\n\nChange-Id: I2d4580aae05072e2f12d1393a0b53c973d3bfe4e\n"
    },
    {
      "commit": "c7ab309ecbb289cd1296430f724166a26bd45afe",
      "tree": "499766fbb5598e74f874966bfad6a56bea4e8e0b",
      "parents": [
        "25c4535f04eb2229eca4dfa0da04b13c004f3446"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 15 18:43:46 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 11 02:11:00 2017 +0000"
      },
      "message": "audio effects: filter reserved effect commands\n\nBlock effect commands reserved for framework use when\nreceived on server side IAudioEffect. Applications have no reason\nto use these commands and they present a unnecessary attack surface.\n\nBug: 62019992\nTest: run CTS tests for audio effects\nChange-Id: Ie680d5d5650f99dbabf93891703e1cde2c2e852d\n"
    },
    {
      "commit": "e8c96c765b95ec7dcd10732621a825fce05960c6",
      "tree": "0197cb1e0849140d5be7aaf085cff87ad91177cf",
      "parents": [
        "15fb0ee6bd752ccde960b961dd1e9113c37e5f8b"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 27 12:24:07 2017 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jul 10 11:59:00 2017 -0700"
      },
      "message": "CameraService: Clean up ICameraServiceProxy; send it more info\n\n- Remove hand-written ICameraServiceProxy C++ impl; use the AIDL-\n  generated version instead\n- Send client package name and camera facing with the camera state\n  notices\n\nTest: Verify by logging that information sent to proxy is correct;\n      no camera CTS regressions.\nBug: 32449509\nChange-Id: I7a305b76b4f1d5c08b7938108bd73c95986508e0\n"
    },
    {
      "commit": "83efe1c6bd6fa206560377960358ec95aa6a1c41",
      "tree": "5dd69d5f069370fffc9ae73660f9c8641017b636",
      "parents": [
        "15fb0ee6bd752ccde960b961dd1e9113c37e5f8b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 09 16:51:08 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 09 16:51:08 2017 -0700"
      },
      "message": "audio policy: fix audio device properties loading\n\nOnly load removable digital device properties from streams\nwith dynamic profiles. This avoids aggregating properties from\nother stream profiles when the device can also be reached via those\nprofiles.\n\nBug: 38423100\nTest: connect various USB devices and check properties are loaded\nproperly.\n\nChange-Id: Ie5eed397d3a475848a3d423d18ffae9d55917ac4\n"
    },
    {
      "commit": "b2d55a72e0bf9e015aeff68b33f5b2e3dd3d1517",
      "tree": "9266bdc003c0dde1694133abfe81415fbe82fa66",
      "parents": [
        "2681203d83dbfe33e947c54f672ccf364c7c3d60",
        "15fb0ee6bd752ccde960b961dd1e9113c37e5f8b"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Jul 07 23:10:32 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 07 23:10:32 2017 +0000"
      },
      "message": "Merge \"aaudio: do not assert if deleting an unopened stream\" into oc-dr1-dev\nam: 15fb0ee6bd\n\nChange-Id: If35f2ec8b17da06b3c43bddb836107982b9535c6\n"
    },
    {
      "commit": "5a26e665e1abb00ed1c8a7e421e19763324776e9",
      "tree": "91ba3e7ef4123ea42403936e451836f8b993339f",
      "parents": [
        "c06dd405a61b24116ac08415709e5575b2583492"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Jul 07 12:44:48 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Jul 07 12:47:52 2017 -0700"
      },
      "message": "aaudio: do not assert if deleting an unopened stream\n\nBug: 63440754\nTest: write_sine.cpp, see bug for repro case\nChange-Id: I1f7ed1bd97d4cfcd54d27d41d708c6c03d3d88ac\n"
    },
    {
      "commit": "0323eba087faa28845b9074e5751b4914bbb6f71",
      "tree": "15f8be3a1fcdaeaea675e593a86fe32c6dd346e4",
      "parents": [
        "983bd9792caa00f00aff246c21f236974409c9ba",
        "98d6d9227f6599a5aa7b023217c02a01cc4536cb"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Jul 07 03:24:55 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 07 03:24:55 2017 +0000"
      },
      "message": "aaudio: stop calling virtual methods from destructor\nam: 98d6d9227f\n\nChange-Id: I3e5212360642396db4f4cd5e1624946b292bdd57\n"
    },
    {
      "commit": "98d6d9227f6599a5aa7b023217c02a01cc4536cb",
      "tree": "847f63fabe692cdcc73dcdda8c681cd9f4087e97",
      "parents": [
        "014a56b57af9e4c744d1ac6f5a95eb1ac7e3f445"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Jul 06 11:52:45 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Jul 06 16:41:07 2017 -0700"
      },
      "message": "aaudio: stop calling virtual methods from destructor\n\nWas calling close(), which is abstract and virtual.\nThis may have been related to some audioserver crashes.\nAlso cleaned up some strong pointer handling.\n\nBug: 63390734\nBug: 63353455\nTest: run CTS nativemedia/aaudio many times\nChange-Id: Ib95aed60a64771b64395c67f0921c67146f9d10f\n"
    },
    {
      "commit": "b66815f31c762eef2d1b84fa6f5d9f9b158ca18c",
      "tree": "ab34e19a88d57de931ae621fe53a244ca12bd917",
      "parents": [
        "c2080abab02fa8ccb7e94591a26a06f619f73bea",
        "d51329eca85112973867a6bf0d210e82d6d1c411"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 02 02:30:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Jul 02 02:30:17 2017 +0000"
      },
      "message": "aaudio: enable exclusive MMAP mode support\nam: d51329eca8\n\nChange-Id: I7b618a0073c1bada8c263ab9c56baf54698f5e10\n"
    },
    {
      "commit": "d51329eca85112973867a6bf0d210e82d6d1c411",
      "tree": "f29ad645223b5ea22b709f4d3362f27aa14d6a9a",
      "parents": [
        "4501b3510f9b2af2ff63a0471de24e3feea1d0a8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 30 16:06:16 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Jul 02 00:32:10 2017 +0000"
      },
      "message": "aaudio: enable exclusive MMAP mode support\n\nAllow exclusive MMAP mode only if the HAL indicates\nthat the FD returned for shared memory buffer can be shared\nwith any application.\n\nNOTE: the way the HAL indicates this is temporary until the audio\nHAL is modified in next HIDL release.\n\nBug: 37167970\nTest: check playback and capture in mmap exclusive and shared mode\nChange-Id: I09c1461b2f99532ded2ef9d36d483b82096fda68\n"
    },
    {
      "commit": "c2080abab02fa8ccb7e94591a26a06f619f73bea",
      "tree": "85f60f8f2f1f0e3931b0221f808a562e17b8509f",
      "parents": [
        "4e862f65057744afe776617f5b3aac16c093b94e",
        "4501b3510f9b2af2ff63a0471de24e3feea1d0a8"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Sat Jul 01 23:54:09 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 01 23:54:09 2017 +0000"
      },
      "message": "aaudio: improved dumpsys\nam: 4501b3510f\n\nChange-Id: Ieef211c004dc07f0cd9ec49860ae52057ec01f42\n"
    },
    {
      "commit": "4501b3510f9b2af2ff63a0471de24e3feea1d0a8",
      "tree": "486de512a65eaad91323fd521823b7230088643d",
      "parents": [
        "8dd045aaf7079fce7c3f0d8457d4e4c7055bac03"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Jun 29 18:12:36 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jul 01 14:28:57 2017 -0700"
      },
      "message": "aaudio: improved dumpsys\n\nAdd more information about various streams and endpoints.\n\nBug: 38396780\nTest: adb shell dumpsys media.aaudio\nChange-Id: I5cc116574bfc3aa93703c182d933dbdfcbefad7a\n"
    },
    {
      "commit": "4e862f65057744afe776617f5b3aac16c093b94e",
      "tree": "25e0086fb91d2b3dcb92746a7d1389a0cc33d4af",
      "parents": [
        "994194aecceaf273dd7ad3dddbee22f5df03dfc6",
        "8dd045aaf7079fce7c3f0d8457d4e4c7055bac03"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Sat Jul 01 19:57:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 01 19:57:30 2017 +0000"
      },
      "message": "Merge \"aaudio: limit number of streams per process\" into oc-dr1-dev\nam: 8dd045aaf7\n\nChange-Id: Id45d02293f50707413c4a43247ce6402759fb941\n"
    },
    {
      "commit": "8dd045aaf7079fce7c3f0d8457d4e4c7055bac03",
      "tree": "5b203cad3e40edd47e80af2e45a2b2c623820962",
      "parents": [
        "80f5e44d6072b5f0b379d2f845503492463bc683",
        "9169294539ad46e08e2fe76a93c37ed965c13058"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jul 01 19:52:04 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 01 19:52:04 2017 +0000"
      },
      "message": "Merge \"aaudio: limit number of streams per process\" into oc-dr1-dev"
    },
    {
      "commit": "9169294539ad46e08e2fe76a93c37ed965c13058",
      "tree": "7f99790dd7625f12d19a1365666e4c541451f0ae",
      "parents": [
        "6ec18f8ce3d797fdd5722926ac17c1f4eda7904d"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Jun 30 12:23:05 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Sat Jul 01 08:01:51 2017 -0700"
      },
      "message": "aaudio: limit number of streams per process\n\nTesting the new max streams restriction revealed the bug\ninvolving the second shared stream.\n\nBug: 62951298\nBug: 63171495\nTest: test_n_streams.cpp can open MAX_STREAMS_PER_PROCESS MMAP streams\nChange-Id: Ibea7d9c4716326a37c669954b52f397ed2968caa\n"
    },
    {
      "commit": "994194aecceaf273dd7ad3dddbee22f5df03dfc6",
      "tree": "b22266d78a22b74baffbdbfcd9871e732ed4349a",
      "parents": [
        "be2a4194a31777ed53aec265c5a53feeeeb66435",
        "80f5e44d6072b5f0b379d2f845503492463bc683"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Sat Jul 01 05:35:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 01 05:35:30 2017 +0000"
      },
      "message": "Merge \"aaudio: disconnect when onTearDown() called\" into oc-dr1-dev\nam: 80f5e44d60\n\nChange-Id: Ieb2008d6725c1f507ed8fcf483897c8e69ec3a72\n"
    },
    {
      "commit": "5ef003b750ae5188c36d6512584da442be125148",
      "tree": "60b325497093e81d50c9c535cc6fe061a1c9dab9",
      "parents": [
        "fef6b3d4fdd5dcde27e29990dec6ee226aa7b873"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Jun 30 11:43:37 2017 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Sat Jul 01 03:29:28 2017 +0000"
      },
      "message": "aaudio: disconnect when onTearDown() called\n\nIt will be called, for example, when switching from speaker to Bluetooth.\n\nBug: 62883778\nTest: run a long app and switch to or from Bluetooth\nChange-Id: Iafb9b52d85c30fee71de46abfb99a27a1daabf59\n"
    },
    {
      "commit": "69d3d0dfb6660be8c5cc3b99560fac766ef1a2d9",
      "tree": "58e1da8b15cb54e535ed4293c820aadd477027a8",
      "parents": [
        "1911951ad3bfa72a8ea38aa8bc80358cd3cef55e",
        "fef6b3d4fdd5dcde27e29990dec6ee226aa7b873"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Sat Jul 01 03:11:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 01 03:11:51 2017 +0000"
      },
      "message": "Merge \"aaudio: fix resource leak in client tracking\" into oc-dr1-dev\nam: fef6b3d4fd\n\nChange-Id: I9aa64dc3e76f0858ca898a1be036e38ba5ab810f\n"
    },
    {
      "commit": "fef6b3d4fdd5dcde27e29990dec6ee226aa7b873",
      "tree": "5073ebd53662e6f7d47ffd5402e9a74da74db7b3",
      "parents": [
        "097da17bd5af3689194fa6d7fce3a5a114717c4c",
        "b63320a36e69c52b46cd099e83fe5922070c43a1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jul 01 03:03:58 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 01 03:03:58 2017 +0000"
      },
      "message": "Merge \"aaudio: fix resource leak in client tracking\" into oc-dr1-dev"
    },
    {
      "commit": "1911951ad3bfa72a8ea38aa8bc80358cd3cef55e",
      "tree": "f16040267db3c8b49be7e4b9c6dbd18140498c6e",
      "parents": [
        "cbaf5e98ee28107874f1b3f2f14b38ea2f33b9df",
        "097da17bd5af3689194fa6d7fce3a5a114717c4c"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Sat Jul 01 02:08:47 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jul 01 02:08:47 2017 +0000"
      },
      "message": "Merge \"aaudio: fix mixer volume\" into oc-dr1-dev\nam: 097da17bd5\n\nChange-Id: I32d35f0b0d5ec43950362def009f3e71f18c5cdc\n"
    }
  ],
  "next": "097da17bd5af3689194fa6d7fce3a5a114717c4c"
}
