)]}'
{
  "log": [
    {
      "commit": "9f495beafec4cb5f446b4f45de6dd5a6863a9cb2",
      "tree": "cf1fdb7b621090364f2a542d583cc20c90636a84",
      "parents": [
        "59db65fba7a8268728187a468f86d41635399f96"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Jun 08 16:29:08 2020 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Jun 15 18:25:29 2020 -0700"
      },
      "message": "Remove references to libc_scudo.\n\nAs scudo is now the default native allocator, there is no need to\nkeep this library around.\n\nTest: Builds and walleye boots.\nChange-Id: I98e37eea78198223be6c4434891a8261d6d74e39\nMerged-In: I98e37eea78198223be6c4434891a8261d6d74e39\n(cherry picked from commit e5c49d54aa5cfad7da80a1dcc893b6bb92abffb9)\n"
    },
    {
      "commit": "8d483277892288edc230f526588f5a033ac245d8",
      "tree": "9b45f6ca25d741191c98c66f88f34315f1972250",
      "parents": [
        "66993734088cb0763bba4723cfa1164f76271aca",
        "3c0f2d0400949bfa234eed1d0e31e73a1a0e10f5"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Mar 30 22:43:45 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Mar 30 22:43:45 2020 +0000"
      },
      "message": "Merge \"MediaMetrics: Move LimitProcessMemory to libmediautils\" into rvc-dev am: 3c0f2d0400\n\nChange-Id: I4fb0e14850d7967edbcaeb10a03a5de80f6ee5bf\n"
    },
    {
      "commit": "d7e0dd45243735bed789589ca767485ce3fc4e7b",
      "tree": "4ad113977dd16b064452aafdc74db03b99214e7c",
      "parents": [
        "36696ba9a249d629c4827fda442352b396a11056"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 27 16:42:34 2020 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Mar 30 10:03:22 2020 -0700"
      },
      "message": "MediaMetrics: Move LimitProcessMemory to libmediautils\n\nEliminates the need for libmedia in media.metrics, cutting\nRSS nearly in half.\n\nTest: adb shell showmap \u0027$(pgrep -f media.metrics)\u0027\nTest: adb shell showmap \u0027$(pgrep -f media.extractor)\u0027\nBug: 152256321\nChange-Id: Id8aae66de84e712915888422b7372fd2b880570d\n"
    },
    {
      "commit": "de61db831acd6242cc24f3908b91c15ed09e2b64",
      "tree": "ca18c0f15aaa4f4a06f26a562e519addb57448c3",
      "parents": [
        "3d564ffd21230840801fd63fbc6a57a5fc723a4b",
        "3006a83565b6863f247bf634faa929b84608026e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Mar 23 17:20:00 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Mar 23 17:20:00 2020 +0000"
      },
      "message": "Merge \"MediaMetrics: limit maximum memory used\" into rvc-dev am: 3006a83565\n\nChange-Id: I061de949fe39ae3ebd8faf011564b8d9ebb0a332\n"
    },
    {
      "commit": "6c22190e49f47b3debc122e15ca042befdd39cee",
      "tree": "e1f359598e1b2f0fd2810780e649def0ef00c349",
      "parents": [
        "8d386f779d76eb2a87ec570bf6ee3c0ce674085f"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 20 16:35:24 2020 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 20 17:30:41 2020 -0700"
      },
      "message": "MediaMetrics: limit maximum memory used\n\nUse media utility function limitProcessMemory().\n\nTest: restrict mediametrics memory by property, ensure restart\nBug: 152084875\nChange-Id: I20b51cecd67e9ac5e03ab34c1c68b1cfd0b8a964\n"
    },
    {
      "commit": "a65491044f490a9c8b7968de229ddce781267e07",
      "tree": "69695696e3b86fd97981586cbcdd5a1003f2e1bd",
      "parents": [
        "ecaf388d27ffa8004064f4ab3fb9644594573676",
        "763e86dcf13242d723b9879bcacd606cbed47ff5"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Mar 12 00:52:06 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Mar 12 00:52:06 2020 +0000"
      },
      "message": "Merge \"Give 32-bit mediaextractor permission to mremap()\" into rvc-dev am: 763e86dcf1\n\nChange-Id: Ic446c2a919dc5361f81bafef89f7e1d793f953b9\n"
    },
    {
      "commit": "c8c4e1823b5ccefe7a886a8689cdfad10afd836d",
      "tree": "856da186879fae5dba15aef9c5e64e05fdca41ad",
      "parents": [
        "5e3b7679084322e027a7e5121ff0f4944b3b6de6"
      ],
      "author": {
        "name": "Robin Lee",
        "email": "rgl@google.com",
        "time": "Wed Mar 11 22:06:47 2020 +0100"
      },
      "committer": {
        "name": "Robin Lee",
        "email": "rgl@google.com",
        "time": "Wed Mar 11 21:22:54 2020 +0000"
      },
      "message": "Give 32-bit mediaextractor permission to mremap()\n\nTest: Boot device, see if setup video plays\nTest: atp/tv_***_video_playback_smoke_test\nBug: 151156096\nBug: 151163101\nChange-Id: I768bf36765fdc5dbd81c4c7632741f47e148147b\n"
    },
    {
      "commit": "778a4730c74f8cb19212f64f9e6f93cd821479a8",
      "tree": "f9c353f27b2d4a6cdf1c722f7dec9ca67ec1a2e1",
      "parents": [
        "2364e55d316364133d2af941814ad4591e6da502",
        "cb676a8e307242535185c230b7f0cdfbf170fdca"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 10 22:32:44 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 10 22:32:44 2020 +0000"
      },
      "message": "Merge \"Revert \"mediaextractor: ignore platform\u0027s profiler assist signal\"\" am: 47daf67f56 am: cb676a8e30\n\nChange-Id: Id05baaba130721e7b90891d5bf4b0ff425154a46\n"
    },
    {
      "commit": "d2c690c50e19c6b73fb8a405c4a919b63eb7ac4f",
      "tree": "c71be6172c06af8707ebbd7dfba1f708c74c1b4a",
      "parents": [
        "0c3505bfb63906067c42eb4e4f03fc2cf565ba14"
      ],
      "author": {
        "name": "Ryan Savitski",
        "email": "rsavitski@google.com",
        "time": "Tue Mar 10 20:35:03 2020 +0000"
      },
      "committer": {
        "name": "Ryan Savitski",
        "email": "rsavitski@google.com",
        "time": "Tue Mar 10 20:50:42 2020 +0000"
      },
      "message": "Revert \"mediaextractor: ignore platform\u0027s profiler assist signal\"\n\nThis reverts commit 0c3505bfb63906067c42eb4e4f03fc2cf565ba14.\n\nReason for revert: aosp/1242758 protects against sigsys-based seccomp\ncrashes from within the profiling signal handler. This should make the\nmediaextractor-specific disabling of the profiling handler unnecessary.\n\nTest: sent profiling signal to mediaextractor, observed logging\n      that confirmed that the sendmsg() violation was recovered-from.\nBug: 149328505\nChange-Id: I70a3bf94584cecf398f6b66161a2c0583e841070\n"
    },
    {
      "commit": "73cf83bc6e56e3b4c25b178d8fb9693c4b8e8de1",
      "tree": "a40061519cd76bb4434176fd62eed6a781280fe9",
      "parents": [
        "d829d6654345aaf17886496f7a3442ba87c57c91",
        "b3f7cd2ec35e4fa1eb013afa13906e25bfc4bcec"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Wed Feb 26 16:22:44 2020 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 26 16:22:44 2020 +0000"
      },
      "message": "Merge \"Use std::optional for nullable\" into rvc-dev-plus-aosp"
    },
    {
      "commit": "b3f7cd2ec35e4fa1eb013afa13906e25bfc4bcec",
      "tree": "8b7049d25c7a3d2a77e0b72d5e0be8e9bb82494e",
      "parents": [
        "b9bfddabc21c0819e7feccecddf09a70ade2670f"
      ],
      "author": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Thu Jan 23 12:27:18 2020 +0900"
      },
      "committer": {
        "name": "Jooyung Han",
        "email": "jooyung@google.com",
        "time": "Wed Feb 26 04:01:10 2020 +0000"
      },
      "message": "Use std::optional for nullable\n\nAIDL now use std::optional to represent nullable types for efficiency\ninstead of std::unique_ptr which might cause additional heap allocation.\n\nBug: 1447732670\nTest: m\nMerged-In: I9045bc6fc2eb06839203af6db94a80de9b83ad1f\nChange-Id: I9045bc6fc2eb06839203af6db94a80de9b83ad1f\n(cherry picked from commit 3f9a3b407aeff0311038b2097d657446c4f98b90)\n\nExempt-From-Owner-Approval: CP from master\n"
    },
    {
      "commit": "539ce465ce4a10e7aeef4cdda037b9a977d22d29",
      "tree": "42f21bd5960159e2a8b6a7ef87292c9d580f3bae",
      "parents": [
        "1426aacf633823c11aaaa1ab242334c9cff32ff3",
        "44574860b8dd1ada87b6e7e50d20a1c9e610316a"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Feb 26 03:19:58 2020 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 26 03:19:58 2020 +0000"
      },
      "message": "Merge \"include policy files within media APEX files\" into rvc-dev"
    },
    {
      "commit": "44574860b8dd1ada87b6e7e50d20a1c9e610316a",
      "tree": "b140b18273d0fecbddd21ecdfac9a4473af47890",
      "parents": [
        "590a4e630d7a807f5e0ba4ff8532257fef0ed1f4"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Feb 13 12:39:14 2020 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Feb 25 19:57:25 2020 +0000"
      },
      "message": "include policy files within media APEX files\n\nensures that the @include\u0027d policy files (code_coverage, crash_dump)\nused by mainlined media processes are carried within the respective\nAPEX files. Parent policy files now @include the copy held within\nthe apex.\n\nBug: 147914640\nTest: built/booted/examined filesystem\nChange-Id: I34213fbc93ca51696b6a5a3c60bfd3ffa7ce6764\n"
    },
    {
      "commit": "1426aacf633823c11aaaa1ab242334c9cff32ff3",
      "tree": "494e55b32534ad300ff03650f4c6d56d8aa822db",
      "parents": [
        "590a4e630d7a807f5e0ba4ff8532257fef0ed1f4"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Feb 25 10:00:39 2020 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Feb 25 19:54:14 2020 +0000"
      },
      "message": "Re-enable MediaBuffer shared memory use\n\nThis was accidentally removed when converting MediaExtractorService\nto AIDL, but is needed for large MediaBuffers\n\nBug: 147152626\nBug: 147835592\nTest: CTS, manual test app\n\nChange-Id: I403968efa4319f316aa2ba5c0d7db71a0781b883\n"
    },
    {
      "commit": "222322a1a35b1b6f48dd55a783dd6589cabedbe9",
      "tree": "c233bec6c198906d996bcc2be1536972366b6bd8",
      "parents": [
        "f90cedc965079fd8cd222c0a3d65cfd40a78d009",
        "835cd9974815d3377ab28a3d9213a0680f6b4824"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 16:13:39 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 16:13:39 2020 +0000"
      },
      "message": "Merge \"mediaextractor: ignore platform\u0027s profiler assist signal\" am: 1554d6f2c0 am: aa86c6a861 am: 835cd99748\n\nChange-Id: I0217f3884253f0ff37d2e52b14b1dec259f93fa3\n"
    },
    {
      "commit": "835cd9974815d3377ab28a3d9213a0680f6b4824",
      "tree": "af4bca7862551641936673d6cf0bb13fc70cc752",
      "parents": [
        "f7eb29cb23bbd4e824426a5be167f8b369fd8095",
        "aa86c6a8614fd61df5ea6b8559156d00dcf8c607"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 16:00:35 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 16:00:35 2020 +0000"
      },
      "message": "Merge \"mediaextractor: ignore platform\u0027s profiler assist signal\" am: 1554d6f2c0 am: aa86c6a861\n\nChange-Id: I62af7e280d9874172b05e43244a20ddb81d3ed50\n"
    },
    {
      "commit": "0c3505bfb63906067c42eb4e4f03fc2cf565ba14",
      "tree": "c4d00018b679cc0830a203b26ab77c61fedc18bb",
      "parents": [
        "74773d73744226ea446c9b590e1fc845457c443d"
      ],
      "author": {
        "name": "Ryan Savitski",
        "email": "rsavitski@google.com",
        "time": "Tue Feb 11 17:06:39 2020 +0000"
      },
      "committer": {
        "name": "Ryan Savitski",
        "email": "rsavitski@google.com",
        "time": "Tue Feb 11 21:22:18 2020 +0000"
      },
      "message": "mediaextractor: ignore platform\u0027s profiler assist signal\n\nDue to security constraints, platform profilers that do remote stack\nunwinding need the target process\u0027 cooperation. This is implemented via\na bionic signal handler.\n\nOn debug builds, media extractor can end up being targeted by such\nsystem-wide profiling, which can crash the process due to\nseccomp/minijail (specifically, due to sendmsg that is used for sending\nfile descriptors over a unix socket).\n\nTested: synced updated binary to crosshatch-userdebug, confirmed that\n        sending signal 36 with si_val 1 doesn\u0027t crash mediaextractor.\nBug: 149328505\nChange-Id: Idf34e08edf99a82c72146aebeb5e46e5cf5af2f3\n"
    },
    {
      "commit": "387f252dbbd0ebf29cf9638b5203ed3b275cbcab",
      "tree": "53e9398eb8b0bb2032c8a7694c7958dee5bc5085",
      "parents": [
        "6094af6abb61a78b7926a529aee3f678f5122890"
      ],
      "author": {
        "name": "Ytai Ben-Tsvi",
        "email": "ytai@google.com",
        "time": "Tue Feb 04 15:02:32 2020 -0800"
      },
      "committer": {
        "name": "Ytai Ben-Tsvi",
        "email": "ytai@google.com",
        "time": "Mon Feb 10 14:29:18 2020 -0800"
      },
      "message": "Crash the process when midi extraction times out\n\nThis is intended to recover from cases when the MIDI extractor gets\nstuck in an infinite (or very long) loop.\nThe extractor code is 3rd party and hard to harden - this gives us\nat least an eventual recovery.\n\nChange-Id: I8d2fd85f91d1d2749c5620cf8518583076d2f6d7\nBug: 127313764\nBug: 127313537\nBug: 127313223\nBug: 127312550\nBug: 127310810\nBug: 126380818\n"
    },
    {
      "commit": "4c8f695ecbdcbca36d00f981c1e8942022e8de55",
      "tree": "cb91d48ff31114685054ecd3e56e2b0fbbc46b50",
      "parents": [
        "d0078cd32bc8f2868680ef81e75ee9495397c211",
        "0121d9c83b795aee3ad4448c7870f30634bd82a9"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 05 23:48:06 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 05 23:48:06 2020 +0000"
      },
      "message": "jailed media processes can dump code coverage data am: 0ad729efbb am: 7cf46ee5e7 am: 0121d9c83b\n\nChange-Id: I008e7511208092d7a57e982122fea8e1e2302208\n"
    },
    {
      "commit": "0ad729efbbe1951d4bad01eebea3843cb23b0420",
      "tree": "3c3c37e358d0e1a0227b5a6ce4e82f14de44d760",
      "parents": [
        "a67cf12a109f36152600a621a7c979b4ab273dd9"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Nov 05 15:07:27 2019 -0800"
      },
      "committer": {
        "name": "Oliver Nguyen",
        "email": "olivernguyen@google.com",
        "time": "Tue Feb 04 18:58:28 2020 +0000"
      },
      "message": "jailed media processes can dump code coverage data\n\nuse @include to bring in the minijail policy information needed so that\nwe can write out code coverage information on such builds;  the included\ncode coverage policy files is appropriate full/empty based on code\ncoverage flags.\n\nBug: 139313557\nBug: 148178774\nBug: 148177815\nTest: \u0027kill -37\u0027 on processes in a code-coverage-enabled build\nTest: \u0027kill -37\u0027 on processes in a NON code-coverage-enabled build\nChange-Id: I9d5880343347ddc586e50f9eafb65e1ff7ba3748\n(cherry picked from commit 40d50f3fead98414d4c4a5627c179cbf20c3b86e)\n"
    },
    {
      "commit": "7c96ea7ff84e1084332548583841735b694bfebd",
      "tree": "eb5d7c1bcb91cea21469e46b7c014ae44635a217",
      "parents": [
        "255f610f5ab71b5e36d93744dfe058daf6c96041"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jan 10 15:46:22 2020 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 16 15:55:18 2020 -0800"
      },
      "message": "Remove mediametrics include symlinks\n\nBug: 143245419\nTest: build\nChange-Id: I6c836e60c0fe078f5ab7370aec156bdd6e8dcbf0\n"
    },
    {
      "commit": "51207514eb834ee1a3c1d3218a9615116dc15bab",
      "tree": "1af90c549976b7d12f5b776daf1345853f2ade06",
      "parents": [
        "fa12f52ba2c0f528277bfe7d7543f5f53361850c"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Dec 03 16:24:48 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Dec 13 09:27:38 2019 +0900"
      },
      "message": "unique_fd is passed by value in AIDL interfaces\n\nFileDescriptor type in AIDL was translated into const unique_fd\u0026 in C++.\nNow, it is unique_fd, i.e. passed by value, to make it easier to keep it\nbeyond the scope of the call.\n\nBug: 144943748\nTest: m\nChange-Id: Ic6b1a4cba71c0fedb206b5ca3fb65b9944bbd69f\n"
    },
    {
      "commit": "dab79b3d09783e5053dc91b860eac06bd415cbfd",
      "tree": "229183838216adea270164035e0544354f4bfb5b",
      "parents": [
        "68db3a07ae337de45b82c6e45d41c2c325f8e2dd"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Nov 18 08:25:47 2019 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Nov 21 14:15:00 2019 -0800"
      },
      "message": "AIDLize MediaExtractorService\n\nUse .aidl instead of handwritten binder code for MediaExtractorService.\n\nTest: build, CTS\n\nChange-Id: Ibc93eca9128552c23359218ac3bf12319391e1b1\n"
    },
    {
      "commit": "40d50f3fead98414d4c4a5627c179cbf20c3b86e",
      "tree": "75d6490f84ab01ef31ddbd689d5754ff6f40c559",
      "parents": [
        "54ae7b773e2e1e1f9e373e8d803c39f2295ed2f0"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Nov 05 15:07:27 2019 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Nov 08 08:10:10 2019 -0800"
      },
      "message": "jailed media processes can dump code coverage data\n\nuse @include to bring in the minijail policy information needed so that\nwe can write out code coverage information on such builds;  the included\ncode coverage policy files is appropriate full/empty based on code\ncoverage flags.\n\nBug: 139313557\nTest: \u0027kill -37\u0027 on processes in a code-coverage-enabled build\nTest: \u0027kill -37\u0027 on processes in a NON code-coverage-enabled build\nChange-Id: I9d5880343347ddc586e50f9eafb65e1ff7ba3748\n"
    },
    {
      "commit": "cd8793a325408a5f77aee9bd719d2591fa4a30fd",
      "tree": "7accb34ca7b8b5fd261bde7a5bee21f22cbb8326",
      "parents": [
        "fcb1f7fa5a99a45596230876d5072d8351cac503",
        "e25539a93f04b06361252e2aa8baab534efbc1de"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Oct 23 10:05:18 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 23 10:05:18 2019 -0700"
      },
      "message": "Merge changes from topic \"libdrmframework\" am: 84a53822a1 am: 460618a6d1 am: c317c587d5\nam: e25539a93f\n\nChange-Id: Ib8636ca3d1a5e251de8a4ce3643f0f88dfe85234\n"
    },
    {
      "commit": "79b0c24b58af5fbfec814a2a11506ef0f72541c3",
      "tree": "2551d295da89029c75f6a9219a6bc1a3b2980b98",
      "parents": [
        "1f72838954cb3689fb58eef6276553d9a45ff0a8"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Sun Oct 13 08:17:34 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Oct 15 11:00:29 2019 -0700"
      },
      "message": "Make DataSourceFactory singletone\n\nThis is preparation for having a subclass of DataSourceFactory which\nis only used in mediaserver process with OMA (forward-lock) use case.\n\nTest: build\nBug: 142567168\nChange-Id: I2a1ab3d1ae89f657a84376d9a95d4e814b545b4f\n"
    },
    {
      "commit": "fa8be7d2371d66db6c7838060d5729f6fd9374ef",
      "tree": "aa00504b96299a891446e46c81c6b0d72c9aae02",
      "parents": [
        "58ae37b5b34d6a2bddd46494230a58f5fcc3f5e3"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Sep 23 12:15:57 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 09 07:41:58 2019 -0700"
      },
      "message": "Split datasource out of libstagefright\n\ninto libdatasource, which contains:\n  DataSourceFactory\n  (Clear)FileSource\n  (Clear)MediaHTTP\n  DataURISource\n  HTTPBase\n  NuCachedSource2\n\nThis is needed to break a circular dependency in an upcoming CL.\n\nTest: build, boot\n\nChange-Id: I34d9937235c78f18f51b18945342a0743e209577\nMerged-In: I34d9937235c78f18f51b18945342a0743e209577\n"
    },
    {
      "commit": "42057ce1890b2be250b95f56734a47b93c8ad537",
      "tree": "7bfbe8147243430c306546b6a7e5caaa1e94d9cc",
      "parents": [
        "df0b56ba22cc201e535a2efc2245214355b6adf2"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Sep 23 12:15:57 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 08 09:30:45 2019 -0700"
      },
      "message": "Split datasource out of libstagefright\n\ninto libdatasource, which contains:\n  DataSourceFactory\n  (Clear)FileSource\n  (Clear)MediaHTTP\n  DataURISource\n  HTTPBase\n  NuCachedSource2\n\nThis is needed to break a circular dependency in an upcoming CL.\n\nTest: build, boot\n\nChange-Id: I34d9937235c78f18f51b18945342a0743e209577\n"
    },
    {
      "commit": "289d452597ec62d88c99eeed1fb6f37f8b4b4526",
      "tree": "ab6cc82eec468eaf46826598b630534c90f79f4e",
      "parents": [
        "b82f9fbdb1903a3bfa136b85dc7d24ab01c9fb21"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Thu May 16 15:56:24 2019 -0700"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Thu May 16 15:56:58 2019 -0700"
      },
      "message": "Add \"liblog\" to shared_libs\n\nWithout it, code can\u0027t build with \"#define LOG_NDEBUG 0\" enabled in\nMediaExtractorService.cpp\nBug: 132908270\nTest: build\n\nChange-Id: I013ea3a4e6b7f85d73c3c3eb7518e98d98c46ea5\n"
    },
    {
      "commit": "1526ab3ea008ffbe967d56dea2bfe6f1199b9c97",
      "tree": "fba50f593158321276d87cdf58fccd227fcd8dce",
      "parents": [
        "d023624cd9d9b16171a7673a19c14d55d1b2ede4",
        "c728a42d4f9f03f74b901fc7dd7fba1bc06579e9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 10 17:33:29 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 10 17:33:29 2019 +0000"
      },
      "message": "Merge changes Idbea7883,Ie49cec34 into qt-dev\n\n* changes:\n  extractor: load extractors on boot, not on request.\n  Revert \"Make tombstone in the child process on loading failure.\"\n"
    },
    {
      "commit": "c728a42d4f9f03f74b901fc7dd7fba1bc06579e9",
      "tree": "e41bb014ce60d61ac54c4bfad108d37836239e38",
      "parents": [
        "673236b3a962335013baddee4065be138eb610b8"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 08 11:17:01 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed May 08 11:17:01 2019 -0700"
      },
      "message": "extractor: load extractors on boot, not on request.\n\nTest: build + dumpsys media.extractor\nBug: 131106476\nChange-Id: Idbea788340c4849f1286727c159a8eb43d6a7bb0\n"
    },
    {
      "commit": "80e1a6dd0dde5302bd00e742d840550288427094",
      "tree": "d5c54e6364b3753e74a2d7ef9dc2b31631f864fc",
      "parents": [
        "eb1b8e4a365a8833ebdaba4975d7b3e610ed709f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Apr 30 15:52:10 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon May 06 09:26:50 2019 -0700"
      },
      "message": "Move mediaextractor seccomp policy into apex\n\nBug: 112767732\nTest: build, run\nChange-Id: I3d63b6346c1305ba662077eb81b714cbe24ccfb9\nMerged-In: I3d63b6346c1305ba662077eb81b714cbe24ccfb9\n"
    },
    {
      "commit": "b47712a9eb1843e25f19f78d015e19b1f6698a83",
      "tree": "8a84a2fef7b8bae4aeaf17b8846b714778f15f90",
      "parents": [
        "ba9a05060f0c0810647f98037dc353fc75e60506"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Apr 01 14:43:50 2019 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Apr 02 14:57:25 2019 -0700"
      },
      "message": "Move codec and extractor to libc_scudo.\n\nThe mediaswcodec and mediaextractor use the scudo libraries as a\nsanitizer. This has some downsides since it bypasses all of the normal\nallocation handlers used by the rest of the system.\n\nSwitching from the plain sanitizer to a wrapper library libc_scudo.so\nallows the use of the allocation handler code from\nbionic/libc/bionic/malloc_common.cpp.\n\nThis is a temporary workaround, later versions of Android should\nsupport scudo as a first class native allocator.\n\nNOTE: The two libraries that make up the scudo override combined are\nsmaller than the libclang_rt.scudo-XXX.so library, so this is a space\nwin too.\n\nBug: 123689570\n\nTest: Builds and boots. Verified that scudo is used as the allocator.\nTest: Verified that the allocation limit is properly set for mediaextractor.\nTest: Ran a few of the CtsMediaTestCases tests.\n\nChange-Id: I3bdf76bfeea503b33da765e093e38818b620a481\n"
    },
    {
      "commit": "a2cfcba3b2db5c7ee464a318ab94422a5c24212e",
      "tree": "6b7d5e4f45884b7932f3a59ade04deb196d1c08e",
      "parents": [
        "1a05ccfebe5b7c6242d145a75b4ae6967b0828c0",
        "6d5636d7719d08fcde5e98e54bab854d235ecbfd"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Mar 29 08:00:00 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 29 08:00:00 2019 -0700"
      },
      "message": "Merge \"Remove updatable from mediaserver and mediaextractor\" am: 207ff86dce am: 6e046089ac\nam: 6d5636d771\n\nChange-Id: I1e345f9d2625c421d854cb29a38a225845cb7313\n"
    },
    {
      "commit": "207ff86dcec301503f3db080b2d1105e6760da16",
      "tree": "1c791c7735e4fb9a53bf28824cb7c3d2e45ab1aa",
      "parents": [
        "75a0fc7cd7f856ae41c38d11b591b90dc6eb156f",
        "8892ca82ad2bb759cf22fca5da46355ce7f3ef82"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 29 14:30:21 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 29 14:30:21 2019 +0000"
      },
      "message": "Merge \"Remove updatable from mediaserver and mediaextractor\""
    },
    {
      "commit": "969975c53fbf5a78304fa7eb4107629c0a353509",
      "tree": "a33c02ed25ab4442394b2342239341d340b363a2",
      "parents": [
        "e3a7f1b68091e9e8c6acd8ae07419075b082dd0b",
        "f6254a307e688ce9d7b5a7bdc676b8349499325d"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Mar 20 17:35:03 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 20 17:35:03 2019 +0000"
      },
      "message": "Merge \"Switch to use aicu/AIcu.h\""
    },
    {
      "commit": "f6254a307e688ce9d7b5a7bdc676b8349499325d",
      "tree": "53e84b79cd3b2cf6a7d7843125aceb2f01f57573",
      "parents": [
        "5ee05596015a14d01212ad73c085f0558bb3c863"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Mar 11 19:35:25 2019 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Mar 20 17:34:40 2019 +0000"
      },
      "message": "Switch to use aicu/AIcu.h\n\nSwitch to using a dynamically-linked library function to initialize\nICU, not a statically-linked function. This means the knowledge of file\npaths stays in the runtime module.\n\nBug: 120493361\nTest: build/boot\nExempt-From-Owner-Approval: It\u0027s just a cherry-pick\nMerged-In: Ibe1d5ffd50e5cce76b1b01788954dcfb4762b1c6\nChange-Id: Ibe1d5ffd50e5cce76b1b01788954dcfb4762b1c6\n"
    },
    {
      "commit": "21209964dc6b51318c2037e9bfd57f5d78ba13f4",
      "tree": "f66fc88e65597da63ba8b3b899b55d565424c434",
      "parents": [
        "9afa4a0d5eef110c6224a628f34517721fa890f8",
        "90a970a1680cf42fcd3da54d5c07b24a16ab391a"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Tue Mar 19 14:12:57 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Mar 19 14:12:57 2019 -0700"
      },
      "message": "Merge \"Switch from getrlimit(RLIMIT_AS) to android_mallopt(M_SET_ALLOCATION_LIMIT_BYTES).\" am: e3a7f1b680 am: e8fde3739f\nam: 90a970a168\n\nChange-Id: I52334126a054ab5aacf97ede1c8255d22aa40622\n"
    },
    {
      "commit": "007ac1ad82b7112e2e77db4914b93cd461c93c73",
      "tree": "531128cb966a4b5888fc7ebf44ba776a4d6fc471",
      "parents": [
        "5ee05596015a14d01212ad73c085f0558bb3c863"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Thu Nov 29 15:08:46 2018 -0800"
      },
      "committer": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Mon Mar 18 13:48:02 2019 -0700"
      },
      "message": "Switch from getrlimit(RLIMIT_AS) to android_mallopt(M_SET_ALLOCATION_LIMIT_BYTES).\n\nThe RLIMIT_AS limit was introduced as a security mitigation, but it\nisn\u0027t exactly what the media processes want to control. It is also\nproblematic under sanitizers which allocate large amounts of address\nspace as shadow memory, and is especially problematic under shadow\ncall stack, which requires 16MB of address space per thread. Instead,\nuse the newly introduced android_mallopt(M_SET_ALLOCATION_LIMIT_BYTES)\nto control the allocator\u0027s memory limit directly.\n\nAlso remove ASAN/HWASAN/CFI specific hacks; they are no longer\nnecessary because these tools consume address space using mmap and\nnot the allocator, and remove the 64-bit pointer check before calling\n__scudo_set_rss_limit, since otherwise the limit would stop being\nenforced in 32-bit mode with Scudo.\n\nBug: 118642754\nChange-Id: Ie66128626976c0b04d5dafd455c375bbfdccc083\n"
    },
    {
      "commit": "9447c68921904a3cb05faf1fed358a7d1d78313c",
      "tree": "bf26b85ae4d1e5a4660e3ad1bddcee2b678a649c",
      "parents": [
        "0428b8e5a53c3c37e0f76decc7a8f32854488062"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Mar 11 19:35:25 2019 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Mar 15 19:27:21 2019 +0000"
      },
      "message": "Switch to use aicu/AIcu.h\n\nSwitch to using a dynamically-linked library function to initialize\nICU, not a statically-linked function. This means the knowledge of file\npaths stays in the runtime module.\n\nBug: 120493361\nTest: build/boot\nChange-Id: Ibe1d5ffd50e5cce76b1b01788954dcfb4762b1c6\n"
    },
    {
      "commit": "8892ca82ad2bb759cf22fca5da46355ce7f3ef82",
      "tree": "25be44543a04983c76d25c2d4b5023ccf2702dce",
      "parents": [
        "5ee05596015a14d01212ad73c085f0558bb3c863"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Mar 05 21:52:08 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Mar 14 07:35:53 2019 +0900"
      },
      "message": "Remove updatable from mediaserver and mediaextractor\n\nBug: 125549215\nTest: m; device boots\nTest: play some video\nChange-Id: Ib8ec81bcb476e0d1c9736962b49e4c5ccb58af03\n"
    },
    {
      "commit": "9129dee98e302fdf274875e4673d1f6718b98160",
      "tree": "53880f48e14eb9a9a6fd1743ec8e5941d4ff5d22",
      "parents": [
        "13c8870eb5b25dbf0e5b7d99f19a6c1d3d8ddab3"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Mar 05 10:40:58 2019 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Mar 05 10:42:51 2019 -0800"
      },
      "message": "Remove unnecessary dependencies.\n\nTest: mmm and TH\nChange-Id: Ia494778ae1a896f25ee861ec49018d133bc64c82\n"
    },
    {
      "commit": "b52f0a0a9c40b08d7a559c8547ae10eff9d7607b",
      "tree": "479d78218e43451441131eb7128f282660d419fb",
      "parents": [
        "b81347ef8c64fa0f8e830cb4100fd4c5f8a123dd"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Feb 22 01:02:40 2019 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Feb 25 13:03:26 2019 -0800"
      },
      "message": "Remove unused code path in MediaExtractor(Factory|Service)\n\nTest: build, boot, dumpsys media.extractor\nBug: 125134086\nChange-Id: I723570315285d7c2caadffd71cd2d15efde11819\n"
    },
    {
      "commit": "eb8c7bf64aa39ca688631802a18b45bd8a2631d4",
      "tree": "3c72e4625bade31999fdac71a32703e12c57d25a",
      "parents": [
        "850847df034369c54da382ef43693349cdfb3c97"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Feb 01 13:06:00 2019 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Feb 04 16:01:36 2019 +0000"
      },
      "message": "Remove support for loading extractors from apk\n\nBug: 123250010\nTest: boot, play video\nChange-Id: I19c66d76f98a593ac9082054a2faccedcd73a55d\n"
    },
    {
      "commit": "d49da02d968f1ea8f184fb48f631c0707a2800eb",
      "tree": "7c6bb11ede5fda77bd5bccebf8384c8dad0e624a",
      "parents": [
        "47279e630f47ce1e220ceda4da90e94de273d2eb",
        "43aa42e4dd94692cb2fea5415ca7d2e417f943a1"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Jan 23 15:10:59 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 23 15:10:59 2019 -0800"
      },
      "message": "Merge \"Delay mediaserver/mediaextractor during boot\" am: 855ae44d9f am: 18cb1f5b7f\nam: 43aa42e4dd\n\nChange-Id: Ie94b484f16472de217edf38177b98590e0f29487\n"
    },
    {
      "commit": "855ae44d9f4acc7ac8720464ef94d159c9063e8b",
      "tree": "e6adf99dcc5cd4e50a9f34d5e7bbcbb0f25e9ea4",
      "parents": [
        "b2e28dac2e5d4c00a797e50e9f2e486f90234acd",
        "38354d04ae7562cdbf8b30b5b1dbbf8253ccf480"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Jan 23 22:54:28 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 23 22:54:28 2019 +0000"
      },
      "message": "Merge \"Delay mediaserver/mediaextractor during boot\""
    },
    {
      "commit": "38354d04ae7562cdbf8b30b5b1dbbf8253ccf480",
      "tree": "277626956a585f6c24fabbab2a002cdc3d298a3e",
      "parents": [
        "55e72131c26aa4d276bbb319c8dacebc06ce6e55"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Jan 23 10:59:24 2019 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Jan 23 13:57:49 2019 +0000"
      },
      "message": "Delay mediaserver/mediaextractor during boot\n\nDelay start of mediaserver and mediaextractor during boot until after the\nRuntime APEX is mounted.\n\nThey depend on ICU / the ICU .dat file which are provided by the Runtime\nAPEX.\n\nTest: flash \u0026 boot\nBug: 123275379\nBug: 113373927\nBug: 123176717\nChange-Id: Idfe80054b6afe8f7449e698f59413ecefb280957\n"
    },
    {
      "commit": "5fd6ad72852fb723ddc4783abd6b9138357b3e12",
      "tree": "a51d4e6e9b4a8afd770eac6945f329544fd48879",
      "parents": [
        "0691d4e2454e4d5be799cda8a2865d08e86e535a",
        "0b30b6aa5194e7ccb29fb840ba30e6b4983de6aa"
      ],
      "author": {
        "name": "bohu",
        "email": "bohu@google.com",
        "time": "Wed Jan 16 13:23:51 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 16 13:23:51 2019 -0800"
      },
      "message": "Merge \"seccomp: allow open for x86_64 arch\" am: 0d8553c9a1 am: 6b67980e6c\nam: 0b30b6aa51\n\nChange-Id: I8b2d915db330ec934021965fc616f753681316fd\n"
    },
    {
      "commit": "0d8553c9a1368d0837e8b154e19d15728417cd22",
      "tree": "57009ed58b5ef17b460940183607149e0bd643fd",
      "parents": [
        "a3db2b4c1ff1e4f5b0f57443a0ea2abee71a1c83",
        "7c3f3cf4e74627a7754dde87013f3b67e68721bd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 16 21:04:33 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 16 21:04:33 2019 +0000"
      },
      "message": "Merge \"seccomp: allow open for x86_64 arch\""
    },
    {
      "commit": "7c3f3cf4e74627a7754dde87013f3b67e68721bd",
      "tree": "47283dba61ff04c2271ff5b8ed7d1d44024957a9",
      "parents": [
        "69addc70699041e50afaf5bc8914bb7de54b1598"
      ],
      "author": {
        "name": "bohu",
        "email": "bohu@google.com",
        "time": "Tue Jan 15 14:13:24 2019 -0800"
      },
      "committer": {
        "name": "bohu",
        "email": "bohu@google.com",
        "time": "Wed Jan 16 09:59:35 2019 -0800"
      },
      "message": "seccomp: allow open for x86_64 arch\n\nBUG: 122902673\nTest:\nlunch sdk_gphone_x86_64-userdebug\nmake -j\nemulator\n\nmediaextractor should not be killed by minijail anymore\n\nChange-Id: I0e2547376fb6e8d6a7e9316c6013cedf6a9cdeac\n"
    },
    {
      "commit": "e2c2b961c4401f5edf88105d779dc112ff99de96",
      "tree": "312aa59a4be3127f4b6100c23245b42479cbb031",
      "parents": [
        "f11ef77d2e64da9c558e2b1eaee2353d87d30297",
        "5986d79bb646ffbf38a1daaa9bb26e002d5bcc8d"
      ],
      "author": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Tue Jan 15 15:49:42 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 15 15:49:42 2019 +0000"
      },
      "message": "Merge \"Enable Scudo for mediaextractor\""
    },
    {
      "commit": "57822099ae5f887353ff07cb15563a4aac54336c",
      "tree": "59204dd1a84bab7c42773957b8c909ddd7dc5482",
      "parents": [
        "435ba2e250da24bed173d4ca7415f5adb5f7846b"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jan 07 14:51:32 2019 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jan 10 09:01:21 2019 -0800"
      },
      "message": "Export support types from extractors\n\nMake each extractor  plugin export a list of file types it supports,\nso we no longer need to hardcode such a list in the framework.\n\nTest: manual\nChange-Id: I1e41a5d477ea56960ad3e4bc35f5183c03c3fe3a\n"
    },
    {
      "commit": "5986d79bb646ffbf38a1daaa9bb26e002d5bcc8d",
      "tree": "33dc1c94c7b93cf926e75ca6af3e30cc30b9fd57",
      "parents": [
        "58b9bd5b6f271d7382c56288e98f031e48ba65dc"
      ],
      "author": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Mon Jan 07 11:55:03 2019 -0800"
      },
      "committer": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Mon Jan 07 11:55:03 2019 -0800"
      },
      "message": "Enable Scudo for mediaextractor\n\nScudo is a hardened usermode allocator that aims at mitigating\nheap-based vulnerabilities (heap overflow, double free, etc).\n\nSee go/scudo-allocator for more information.\n\nThis change enables the allocator for the mediaextractor service,\neffectively linking in the Scudo dynamic library to the binary.\nAllocation functions will be serviced by the allocator.\n\nThe \u0027deallocation-type-mismatch\u0027 check had to be disabled as some\nthird party libraries were triggering it.\n\nIn the event of a heap bug detected, the allocator will abort the\nprocess with a \u0027Scudo ERROR\u0027 message in the log followed by the cause\n(corrupted header, invalid state \u0026 so on) and the stack trace.\n\nTest: CtsMediaTestCases on a marlin\nBug: 63907455\nChange-Id: I9e0ea03c0d39e723a880e7fcd761fe0718bbbacd\n"
    },
    {
      "commit": "f36cccb50b189965177ecd7bdc3b3f36ad207fa6",
      "tree": "fc90e02d7d10e42bb9665678d9ac85437ae4cd5a",
      "parents": [
        "1ce37f1de3f7185ccffd4d9145b036941a582fe4"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Nov 20 19:11:07 2018 +0000"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Jan 07 18:36:10 2019 +0000"
      },
      "message": "Use ICU in libandroidicu\n\nlibicuuc and libicui18n are moved into APEX, but\nthey have no stable ABI due to the version suffix.\n\nUse libandroidicu which provides stable symbol.\nSee http://go/apex-stable-icu4c-interface for the design.\nSee http://aosp/801855 for libandroidicu implementation.\n\nBug: 117094880\nTest: m checkbuild\nMerged-In: Ida6aac85dfb79bf8e7a3a2540e567ee211279e09\nChange-Id: Ida6aac85dfb79bf8e7a3a2540e567ee211279e09\n(cherry picked from commit b6826d9e88b521c5c970cf748db83b43c70d56d1)\n"
    },
    {
      "commit": "b6a2daca03f37b95d999aae53dce9a68a0cdb936",
      "tree": "31f6b4bb2bbb6cfd89284e61f1d509ca80d9104f",
      "parents": [
        "03de12c486f8db9db83f4ec2555b1d28ec01acf6",
        "b6826d9e88b521c5c970cf748db83b43c70d56d1"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Jan 07 18:18:16 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 07 18:18:16 2019 +0000"
      },
      "message": "Merge \"Use ICU in libandroidicu\""
    },
    {
      "commit": "e22ed7bc6b62eb90b18212cd74f332ace49ff407",
      "tree": "4fa7897760342d95e4ed68a097a50f1d8f6bce76",
      "parents": [
        "5240850ee820089cd4ae4274f15a0b6dd8fc2150",
        "adadf1c18f5cf507ae13f0464fceeb717c8c7f94"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 03 00:27:24 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 03 00:27:24 2019 +0000"
      },
      "message": "Merge \"Enable fstat to seccomp filter for x86_64\""
    },
    {
      "commit": "adadf1c18f5cf507ae13f0464fceeb717c8c7f94",
      "tree": "85c6ac86a7612ae6632c631802be3cef32c49276",
      "parents": [
        "fd7fa089178267bf6cabd691b674f87364f589bd"
      ],
      "author": {
        "name": "ji, zhenlong z",
        "email": "zhenlong.z.ji@intel.com",
        "time": "Tue Nov 06 16:04:51 2018 +0800"
      },
      "committer": {
        "name": "Karthik Ramakrishnan",
        "email": "karthikmr@google.com",
        "time": "Wed Jan 02 21:57:15 2019 +0000"
      },
      "message": "Enable fstat to seccomp filter for x86_64\n\nbug: 120238328\nTest: run CTS case - android.security.cts.ProcessMustUseSeccompTest\n\nChange-Id: I08ac4d75d77061a48641973cff61d51fee3c5c28\n"
    },
    {
      "commit": "b6826d9e88b521c5c970cf748db83b43c70d56d1",
      "tree": "f6ad0f52bc55d3c13f71f4a572a16fd80d8e26e6",
      "parents": [
        "d1265e14e77943e84a52fd7c04922280dd598899"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Nov 20 19:11:07 2018 +0000"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Wed Jan 02 17:30:17 2019 +0000"
      },
      "message": "Use ICU in libandroidicu\n\nlibicuuc and libicui18n are moved into APEX, but\nthey have no stable ABI due to the version suffix.\n\nUse libandroidicu which provides stable symbol.\nSee http://go/apex-stable-icu4c-interface for the design.\nSee http://aosp/801855 for libandroidicu implementation.\n\nBug: 117094880\nTest: m checkbuild\nChange-Id: Ida6aac85dfb79bf8e7a3a2540e567ee211279e09\n"
    },
    {
      "commit": "ff0508b3d64e54829b69170adace3bbea4f6a5b6",
      "tree": "07a6bedb573eccac1664985112fc22b0b7b3d6a1",
      "parents": [
        "48d4fff79246d1a988b5538f9f9db5fc57746f9c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 14 15:17:58 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Dec 18 12:50:30 2018 -0800"
      },
      "message": "Convert MPEG2 extractor to V3 format\n\nand move it to the media APEX.\n\nBug: 111407253\nTest: manual, CTS\nChange-Id: Ibcbdd0e901e9d79b5a857b5d0a65bd6b1ec675a6\n"
    },
    {
      "commit": "e92a5c7d3b0face0059566118e68d19c95284f39",
      "tree": "2001e358d8195313a65d4e7c682b6a11ae3f96ed",
      "parents": [
        "706e8765fb5809e6814f156981de45675e88fbad"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 13 09:52:38 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 13 15:46:05 2018 -0800"
      },
      "message": "Convert OggExtractor to V3 format\n\nand move it to the media APEX.\n\nBug: 111407253\nTest: manual, CTS\nChange-Id: Ia6b6edc42f8bb374d4cc07888fb0f45030ca462f\n"
    },
    {
      "commit": "c656c8df182f2b7a1ad0d692ad7730e9c3c4c293",
      "tree": "4dc69c70343e1e8d203502ccfed34c6ff5c116c2",
      "parents": [
        "20478518b4b01195f7aa473e12ee2b29509667b8"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Dec 13 09:56:33 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Dec 13 09:56:33 2018 -0800"
      },
      "message": "Move MKV/MP4 extractors to APEX\n\nTest: make systemimage on marlin\nBug: 111407253\nChange-Id: Icd90893f7498090ea9d8cbe29f3845e98d794ebc\n"
    },
    {
      "commit": "f652118da25973feedf3593f50a0854d97e951bd",
      "tree": "2d2f12f089a5911f0780edd7d196503ef004feba",
      "parents": [
        "590c815a94442634adc9616eaf38bc97137371a3"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Dec 10 19:04:01 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Dec 12 12:38:33 2018 -0800"
      },
      "message": "Move WAV/FLAC/MIDI/AAC/MP3/AMR extractors to APEX\n\nTest: build \u0026 boot \u0026 dumpsys media.extractor\nBug: 112766425\nChange-Id: I6207c370f830e85830115787a0d5b2958a53869d\n"
    },
    {
      "commit": "7fa7c86510509efe0af098893a661516794e0490",
      "tree": "431a40ff3eda2c9c968e9824fc3a5ce29841186c",
      "parents": [
        "0b6db2c97404943d7b5628eee50e58fd92e51054"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Dec 06 09:07:58 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Dec 10 13:51:55 2018 -0800"
      },
      "message": "mediaextractor: load extractor plug-ins from apex\n\nNote: media apex is not added in the default build.\nThe new code path will be no-op for now.\n\nTest: boot \u0026 adb shell dumpsys media.extractor\nBug: 112766843\nChange-Id: I1bdf2c41cc5f88c80c2fd20677dce1d58420e947\n"
    },
    {
      "commit": "022902955253c9ad750169243bbea64bf197a32b",
      "tree": "7a96efd177f9ba0963163b19cf9eadb2b7654728",
      "parents": [
        "c25db9303131d04d15f2ca28f1a8f9153becf449",
        "089a4430c85fda99ee894bbc6e4914113f68f19f"
      ],
      "author": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Thu Nov 08 10:34:00 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Nov 08 10:34:00 2018 -0800"
      },
      "message": "Merge \"Add sched_yield to the arm64 policy\" am: 0597a45729 am: 0f208d013a\nam: 089a4430c8\n\nChange-Id: Ib2343d608e20e18d144c176345858dfff10554cf\n"
    },
    {
      "commit": "d653bf02c3fb133b7b95669f79d822402708d9da",
      "tree": "56705f5bda6f3d13b7441eecff7781dca9bf21b5",
      "parents": [
        "b8fd364d0a0e23317c1fbc5055800bbeee3ba349"
      ],
      "author": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Fri Nov 02 08:55:02 2018 -0700"
      },
      "committer": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Mon Nov 05 15:17:19 2018 +0000"
      },
      "message": "Add sched_yield to the arm64 policy\n\nsched_yield is used by the various Sanitizers. It is present for arm, x86 and\nx86_64 but is missing for arm64.\n\nBug: 63907455\nTest: built \u0026 run with Scudo locally enabled for media.extractor\nChange-Id: I4ad9cfcd2bda2489858146dca7427e3719491e12\n"
    },
    {
      "commit": "ea788f7e048433545a737dc70946cc9150fbc6a5",
      "tree": "e23264a72da1c4b0fd652a8a5b2da7730c9314b6",
      "parents": [
        "1c152226bcfaa32d1e1e95168157fe99048d424a"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Oct 12 14:44:24 2018 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Oct 12 16:00:33 2018 -0700"
      },
      "message": "Add media.codec.update service\n\nThis is done similarly to how we update the extractors.\nmedia.swcodec will start a service \"media.codec.update\"\nto get notified of the update apk location, then updated\nversion of the component store will be loaded.\n\nSince the update interface is exactly the same, we reuse\nIMediaExtractorUpdateService to avoid adding new an aidl\ninterface. Besides this service will likely be removed\nafter we switch to APEX.)\n\nBug: 111407413\nBug: 117290290\nChange-Id: I739ba0071806beed99302ccd3da7a6f73a437f06\n"
    },
    {
      "commit": "a70beb16195266900997f2f376d2f28017cd45a4",
      "tree": "ba0716f8eb0e1210e663bd48242c2b56deeee401",
      "parents": [
        "9985754cabf9d426bf95e3adfc27cea7fcc86e42"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jul 17 14:10:03 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Aug 23 08:10:30 2018 -0700"
      },
      "message": "Move MediaExtractor back to libstagefright\n\nIt is no longer needed in libmediaextractor, and moving it back\nto libstagefright will avoid a circular dependency later.\n\nBug: 111407253\nTest: build, boot, play some files\n\nChange-Id: I1373a9eedee27998e7733ea23ae1a375e45cc9c3\n"
    },
    {
      "commit": "9200bf9bbed390954cf824aa42ad2603dfcb6bcb",
      "tree": "24c33d065b70dfd8b327f27ab3d32c752a3efac9",
      "parents": [
        "7e19897b405318df20eccb1d697a8ecccd70fbc7"
      ],
      "author": {
        "name": "Kazuhiro Inaba",
        "email": "kinaba@google.com",
        "time": "Thu Jun 07 13:59:11 2018 +0900"
      },
      "committer": {
        "name": "Kazuhiro Inaba",
        "email": "kinaba@google.com",
        "time": "Thu Jun 07 16:47:34 2018 +0900"
      },
      "message": "Makes sure to set up the mediaextractor x86_64 seccomp policy.\n\nThree fixes\n(1) Sets LOCAL_REQUIRED_MODULES_x86_64.\n  Otherwise the policy file won\u0027t be in the system image at all.\n\n(2) Drops the executable bit (chmod a-x) of the policy file.\n\n(3) Incorporates the changes done on x86.policy between O and P.\n  The previous patch seems to be a cherry-pick from AOSP, which\n  does not take the P changes into account. (Hence mediaextractor\n  just crashes if the previous policy file is applied to P.)\n\nBug: 79158930\nBug: 69073312\nTest: ProcessMustUseSeccompTest#testMediaextractorHasSeccompFilter\nTest: CtsMediaTestCases runs without mediaextractor/minijail error\nChange-Id: Iada4c75883de03b5a44a06df33de428c2ceef3d5\n"
    },
    {
      "commit": "d5d1efcf2c39071a35ccdd7f0ad256df71abede3",
      "tree": "2cddc8357d26744a1309b1f8e879d02cf5e30fd1",
      "parents": [
        "dbd89c79fce27d93c0a15647049f13217ed50433",
        "c752095a22e70f921bf5290b345cb411bfba1917"
      ],
      "author": {
        "name": "Melvin Xu (徐敏)",
        "email": "melvin.xu@spreadtrum.com",
        "time": "Sun May 20 19:57:07 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun May 20 19:57:07 2018 -0700"
      },
      "message": "Merge \"CTS-on-gsi test, CtsSecurityHostTestCases--android.security.cts.ProcessMustUseSeccompTest#testMediaextractorHasSeccompFilter --android.security.cts.ProcessMustUseSeccompTest#testOmxHalHasSeccompFilter failed\" am: 078545604a\nam: c752095a22\n\nChange-Id: Ie5b6f660594cdd8967affe5e85777727ef2935e6\n"
    },
    {
      "commit": "9f60b56976e7bad73890914b486092cad6632253",
      "tree": "ec45bafa3d2c5a928546de2ac2916abe3b4f3661",
      "parents": [
        "334e5dff4751eb77ade396f4c32404ca2b2892b3"
      ],
      "author": {
        "name": "Melvin Xu (徐敏)",
        "email": "melvin.xu@spreadtrum.com",
        "time": "Wed May 02 17:45:14 2018 +0800"
      },
      "committer": {
        "name": "Melvin Xu",
        "email": "melvin.xu@spreadtrum.com",
        "time": "Thu May 10 02:52:15 2018 +0000"
      },
      "message": "CTS-on-gsi test, CtsSecurityHostTestCases--android.security.cts.ProcessMustUseSeccompTest#testMediaextractorHasSeccompFilter\n--android.security.cts.ProcessMustUseSeccompTest#testOmxHalHasSeccompFilter\nfailed\n\n[Android Version]:\nAndroid8.1.0_r2\n\n[CTS pachage version]\nSuite / Plan\tVTS / cts-on-gsi\nSuite / Build\t8.1_R3 / 4632653\n\n[device](Any device config may relate this failure)\nspreadtrum\u0027s iSharkL2\nsize:1080*1920\n\n[bugzilla bugid] 79158930\n\n[CTS Test Pre–Condition]\n1.Language set to EN;\n2.Keyguard set to none;\n3.Enable GPS, Wifi network, USB debugging, Stay awake, Allow mock locations.\n4.CTS version is VTS / cts-on-gsi 8.1_R3\n\n[CTS Test Step]:\n1 ./vts-tradefed\n2 run cts-on-gsi\n\n[Expected Result  ]:\nThis case will pass.\n\n[Testing Result]:\ncase failed:\nCtsSecurityHostTestCases\n--android.security.cts.ProcessMustUseSeccompTest#testMediaextractorHasSeccompFilter\n--android.security.cts.ProcessMustUseSeccompTest#testOmxHalHasSeccompFilter\n\n\n[13. Analysis]:\njunit.framework.AssertionFailedError: media.extractor must have a seccomp filter enabled. The \"Seccomp\" field of media.extractor\u0027s /proc/3292/status file should be set to \"2\"\nat junit.framework.Assert.fail(Assert.java:57)\nat junit.framework.Assert.assertTrue(Assert.java:22)\n\nFor iSharkL2 device, TARGET_ARCH\u003dx86_64, but in the following Android.mk, there is no x86_64 option and mediaextractor-x86_64.policy, so mediaextractor.polily will not be generated in the $(TARGET_OUT)/etc/seccomp_policy.\n\nFrameworks/av/services/mediaextractor/Android.mk:\n# service seccomp filter\nifeq ($(TARGET_ARCH), $(filter $(TARGET_ARCH), arm arm64 x86))\ninclude $(CLEAR_VARS)\nLOCAL_MODULE :\u003d mediaextractor.policy\nLOCAL_MODULE_CLASS :\u003d ETC\nLOCAL_MODULE_PATH :\u003d $(TARGET_OUT)/etc/seccomp_policy\nLOCAL_SRC_FILES :\u003d seccomp_policy/mediaextractor-$(TARGET_ARCH).policy\ninclude $(BUILD_PREBUILT)\nendif\n\n[Analysize]:\nThere is no mediaextractor-x86_64.policy file in the frameworks/av/services/mediaextractor/seccomp_policy/, so we can\u0027t write this mediaextractor-x86_64.policy\n\nAnd mediaextractor-x86_64.policy is got based on the mediaextractor-x86.policy and added the differences between mediaextractor-arm.policy and mediaextractor-arm64.policy.\n\nBut there is a problem of the arrangement order of syscalls in mediaextractor-x86_64.policy, maybe it need Google engineer to refine it.\n\n\n[Conclusion]:\n1. Add a new mediaextractor-x86_x64.policy\n2. Modify the Android.mk file below in the frameworks/av/services/mediaextractor/ seccomp_policy\n3. Because current google AOSP don’t consider x86_64 arch for mediaextractor policy, and iSharkL2 device use x86_64 arch, so we need to support it in the frameworks/av/services/mediaextractor/ seccomp_policy/. We will request to waive for this.\n\n\n[Patch Link]:\nhttps://android-review.googlesource.com/c/platform/frameworks/av/+/676982\n\nChange-Id: Icd14cc62d6a2b8989ae3e2a1650af3749198522f\n"
    },
    {
      "commit": "43e143a93a1a730354ed0913c73b50a614599981",
      "tree": "9eaa8fca368c54db2e3d72d4e21b5b5e0ab194d1",
      "parents": [
        "7443db745b663f6fe53497e2dbabd93e00db6fb3",
        "247cc0a3c81ec629a2ae51b40bdcb2afc0e94210"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Apr 12 15:17:01 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 12 15:17:01 2018 -0700"
      },
      "message": "Merge \"Exclude MediaComponents from the build.\" into pi-dev\nam: 247cc0a3c8\n\nChange-Id: I5dcad14f686e46b55a8becc9ea6d92ae45777fb7\n"
    },
    {
      "commit": "d78d50ba4dec2e58e6b5ae1a0ab726aa216d112c",
      "tree": "c6776c8d30ecfd5962ee02d74cd9e89826734220",
      "parents": [
        "7b0d7c66ee66a93de00c2649839ae3284888c35b"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Apr 11 16:51:29 2018 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Apr 12 09:32:30 2018 -0700"
      },
      "message": "Only include crash_dump.policy on usable archs.\n\ncrash_dump.policy is not built for mips. Here, it\u0027s\nonly included when it is needed to be included.\n\nBug: 7456955\nTest: required module always exists (error goes away)\nChange-Id: Id99cdba831327348033e5e35a7018ad88831de7d\n"
    },
    {
      "commit": "262081a2dd8e3fdc1e1eddeb1a39a097235e0376",
      "tree": "3321d1ddf4da912546a3446b29b38eaa5802ea88",
      "parents": [
        "ef3dbdbf730a1921aa387eec81f0cd0d46f9260b"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Mar 09 16:08:49 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Apr 06 23:26:19 2018 -0700"
      },
      "message": "Exclude MediaComponents from the build.\n\nJava Media2 APIs are now hidden in P and extractor\nplug-ins exists in /system/lib...\n\nTest: build and boot with aosp and non-aosp build\nBug: 67908547\nChange-Id: Ic3465ada867133aa118f78d874adfd38c4c959dd\n"
    },
    {
      "commit": "ebb2179afc0d6812fd2806c77b19bf5182718510",
      "tree": "df15375852893a4fbee64ddae8a024bd2603dae3",
      "parents": [
        "bbcbbe4fa36faaca4b066287bd0998c71752d96e"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Jan 24 16:37:16 2018 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Jan 25 12:40:51 2018 -0800"
      },
      "message": "Use @include for crash_dump seccomp policies.\n\nInstead of manually inlining and updating seccomp policies for crash\ndumping in 5 different places, add a central one that\u0027s @included by\neach user.\n\nBug: http://b/38508369\nTest: debuggerd [-b] `pidof media.{codec,extractor}` on walleye\nChange-Id: I1691cb2ab041fc326765e7304917bd2b2460c6a9\n"
    },
    {
      "commit": "bb8ad0e6ebf1a74245929720fd6336feda926ea9",
      "tree": "73a9e0f72bf729bb087565ed0cf079c0931f43dc",
      "parents": [
        "4a0c0153cee669d32671d9ef8449a8d1a61e9ea7",
        "5a1dfb4441b0b2bbb8243bd4ca498930ad3b0ffe"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 24 14:39:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 24 14:39:24 2018 +0000"
      },
      "message": "Merge \"Enable MediaUpdateService on userdebug and eng builds.\""
    },
    {
      "commit": "767456dfce275fbe2d0bea227c271fcbd4c5be19",
      "tree": "ebd969afaae14e6c8c5dc1646786138a7f384d52",
      "parents": [
        "3e4d2ed649875f4823e72075518f3c39fd27c8a2"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Jan 19 16:26:19 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Jan 19 16:44:32 2018 -0800"
      },
      "message": "Load system extractor plugins from /system|vendor/lib[64]/extractors.\n\nPlugins will be placed under /system|vendor/lib[64]/extractors and the\ndevice will include a stub MediaComponents apk for later update.\n\nTest: boots and play mp4 files\nBug: 67908547\nChange-Id: I5ab30093d9dd50324ba327baa8270a204e10f8a5\n"
    },
    {
      "commit": "c96ca4397cca129afd6b111f61f98dcfc2c1e3a7",
      "tree": "a8821ad0e9ecf92d2bd025877425e1231daa1bdf",
      "parents": [
        "7ffa062a68c1b8ec41e79e480a23c01ab0b5d4a2"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jan 19 08:14:40 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jan 19 09:23:05 2018 -0800"
      },
      "message": "Show list of loaded extractors in dumpsys\n\nBug: 67908547\nTest: build, boot, dumpsys\nChange-Id: Ib398dd000979b6b5d85db5e446946c0c8ded1793\n"
    },
    {
      "commit": "5a1dfb4441b0b2bbb8243bd4ca498930ad3b0ffe",
      "tree": "d952ba6b52ef69203446aeda97ab0fa9b3232c13",
      "parents": [
        "87b4679598403fe752f57f1cfca4709ca82e97b8"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Jan 17 09:25:31 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Jan 17 14:52:09 2018 -0800"
      },
      "message": "Enable MediaUpdateService on userdebug and eng builds.\n\nTest: play a mp4 file. boots without untracked SELinux denials.\nBug: 67908547\nChange-Id: I1bb13ef0f7ed60abf05822f054ef19fbd22e5690\n"
    },
    {
      "commit": "73a2b25fd96f16fa4590fe3b8e6a4a4d334cd422",
      "tree": "72e6ac79dc690d6b6840e20c86049ce149b40eac",
      "parents": [
        "87b4679598403fe752f57f1cfca4709ca82e97b8"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jan 17 12:43:45 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jan 17 13:20:48 2018 -0800"
      },
      "message": "Rename MediaUpdate to MediaComponents\n\nBug: 67908547\nTest: build, boot\nChange-Id: Idb873b1e0eddeb8d56f818ba3967d05727060cd4\n"
    },
    {
      "commit": "53a2d617f5359eaa54e8129a0f64807e16e08520",
      "tree": "be8cfe585f720481234adffd1d89e5c5c2f8f1f0",
      "parents": [
        "d73a1d99c5a2594a81bc8d560d208696b44656b3"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Jan 16 18:12:51 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Jan 16 18:42:39 2018 -0800"
      },
      "message": "Disable UpdateService temporarily.\n\nTest: build \u0026 boots without untracked SELinux denials\nBug: 72066295\nChange-Id: If9a7903d9c9d97298d02c815e626a2144f50a431\n"
    },
    {
      "commit": "3e6d245e154f8a382fd88529c2572d1117685511",
      "tree": "c80af5c77faac575297581c4d82448f53e16609e",
      "parents": [
        "5e1897bbd25d8353d9567b746ce50d4b80d30564"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Jun 29 15:21:53 2017 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Jan 12 18:03:50 2018 -0800"
      },
      "message": "Load extractor libs directly from update APK\n\nTest: play MP4 file. install and uninstall media update apk.\nBug: 67908547\nChange-Id: I80c7772e25ba010be468834ce238f0fb86bc8d14\n"
    },
    {
      "commit": "5e1897bbd25d8353d9567b746ce50d4b80d30564",
      "tree": "01be716662a3c7a9a3aa83185253e931f5586686",
      "parents": [
        "9321dc866ea81a90e765c06fe20adec7e163338a"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Jun 29 15:21:53 2017 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Jan 11 11:44:01 2018 -0800"
      },
      "message": "Keep the in-use extractor plugins when updating.\n\nTo track usage of extractors and close the so handle when they are\ndestroied, MediaExtractorPlugin/RefBase class is introduced.\n\nTest: play MP4 file. install and uninstall media update apk.\nBug: 67908547\nChange-Id: I24926f943bc7247627e62d38edafd13d9c305a51\n"
    },
    {
      "commit": "ea5523d88c6dc9662621db5fc62bf50eff0fe4ba",
      "tree": "0488edf8c95d5f52319a640ad171194460cefb99",
      "parents": [
        "1d8e6ea955b5369a183384a9dea883580c26188a",
        "d9ad45b8a538b448737d38746771b1a0fcf7b0c1"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 12 19:08:53 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 12 19:08:53 2017 +0000"
      },
      "message": "Merge \"Use -Werror in frameworks/av/services/mediaextractor\" am: 5988a68bb3 am: 868705c87f\nam: d9ad45b8a5\n\nChange-Id: Ic6679ffafbad08d2b6b6bac9bd8bcdddcd1c9c7a\n"
    },
    {
      "commit": "2cf9b81a67ccd98e845182f0aa784dd92a09960a",
      "tree": "27e29b241dd23682c2ca1ee22a423532fffb70c5",
      "parents": [
        "6313143933d8c3e3e3edd67a4be07379f27ca467"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Dec 06 12:37:58 2017 -0800"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Dec 06 12:37:58 2017 -0800"
      },
      "message": "Use -Werror in frameworks/av/services/mediaextractor\n\n* Allow redefinition of CHECK_OP in ADebug.h.\n\nBug: 66996870\nTest: build with WITH_TIDY\u003d1\nChange-Id: Ia6dd0ac147f586ebdc4bbc63ac63b8b73040a83d\n"
    },
    {
      "commit": "19c84390a7cf7c88a0594091538c214a182b6787",
      "tree": "8afb065a399aab1b77f282e030d0a7190a2cb5db",
      "parents": [
        "9a60e1ad4762bd428ddc158e5a50641649698ec4"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Nov 03 14:27:49 2017 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Nov 03 14:27:49 2017 -0700"
      },
      "message": "Add missing syscall for 32 bit builds\n\nBug: 36130225\nTest: boot Pixel build with 32 bit mediaextractor\nChange-Id: I0a843be7b3fc7a8e03325625aa85fe7230f464ad\n"
    },
    {
      "commit": "a575bac8c6ff91e9846dd57b3456437084854053",
      "tree": "e13e45481bd8b179532872a03efa4f10879cb115",
      "parents": [
        "c62a59c4a1a94376af8a5c503983fe65e9b3aa59",
        "f23da56283f0ae817986af4e816614bbe18613e6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Oct 26 16:26:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 26 16:26:17 2017 +0000"
      },
      "message": "Merge \"Add sched_setscheduler to the arm64 policy.\" am: 55c45b3309 am: b73c823fb4\nam: f23da56283\n\nChange-Id: I185367b935966d30431009a8b16ed94a60173851\n"
    },
    {
      "commit": "7744d21bf39c492d634d333860dc2b15681bdb66",
      "tree": "8f8b2617b39e8040dcb5a0116fd13ee8b8012e6a",
      "parents": [
        "159158c3cd9f39089c1d60650776b1d9d2180d9e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 17 17:14:36 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 17 17:14:36 2017 -0700"
      },
      "message": "Add sched_setscheduler to the arm64 policy.\n\nIt\u0027s already in arm and x86 but missing from arm64 for some reason.\n\nBug: http://b/67471710\nTest: no rolling mediaextractor crashes when booting with the pthread change\nChange-Id: Ibbf8e6f0d7315afe213d250f8874ba9b57ef8f9d\n"
    },
    {
      "commit": "d91dc5a0602f54fc0d4d2187f37b5b8169bb62c3",
      "tree": "4a3b6fb269ae76af3c0567cc1d57780c17bd2c30",
      "parents": [
        "04ce1be860b40e18ca7f5fdf64ecb82567d7fe24"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Oct 10 00:07:09 2017 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Oct 17 13:43:59 2017 -0700"
      },
      "message": "Remove libmedia and libstagefright dependency from extractors\n\n- MediaSource, DataSource and MediaExtractor are moved to\n  libmediaextractor so that they can be used by extractor\n  implementations without depending on libmedia and libstagefright.\n- XXXFactory classes has been added in order not to expose CreateXXX\n  methods in libmediaextractor.\n- avc_utils is moved to libstagefright_foundation since most of\n  extractor implementations are relying on that.\n\nTest: build + post submit media CTS tests\nBug: 65851881\nChange-Id: I7d5cf18dd25abc10478ac3f6e7d1828ad023e3fb\n"
    },
    {
      "commit": "75226177f20a176d50e3e53bbb34067cb49112c3",
      "tree": "31d809eeb7e884765c8538bac139be1079e1f1a3",
      "parents": [
        "a098be2bfa75d04c07f5bbf7a3eb991add89f260"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 16 14:10:52 2016 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 03 15:03:19 2017 -0700"
      },
      "message": "Make extractors separate libraries\n\ninstead of being integrated into libstagefright\n\nTest: thoroughly\nChange-Id: I11cdfde6d2daf248c8e0f99237db1c74be260eb0\n"
    },
    {
      "commit": "a8f7d467dcb455af7b72c6986c0a9d4425c6c3f9",
      "tree": "4ed960152d387dad3dffc9b783e6c7a4380b3842",
      "parents": [
        "c7f1dac2ba398bf684c7a3bed5a7ba27e9a0f068",
        "d1984830cea3bef6cbc1c41927ea1a5fd0feb8f2"
      ],
      "author": {
        "name": "Daniel Micay",
        "email": "danielmicay@gmail.com",
        "time": "Fri Sep 29 19:57:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 29 19:57:00 2017 +0000"
      },
      "message": "Merge \"whitelist getrandom for arc4random usage\" am: 0d51135def am: b7df148460 am: eeec0d412b\nam: d1984830ce\n\nChange-Id: I5148bbe5e3931a68c9c8bb5a8ef6a2b5a213c00f\n"
    },
    {
      "commit": "0d51135defebfe9bf0d790216ee4668c96041224",
      "tree": "cf0be80e6d657bebfd07943514314ffd24c99a3b",
      "parents": [
        "6b1c64d32a871ad34dd6df6bf3357060254e11fa",
        "2dde5ecefdf2691bdced553e4dfc276da1d9c17e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 29 04:06:10 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 29 04:06:10 2017 +0000"
      },
      "message": "Merge \"whitelist getrandom for arc4random usage\""
    },
    {
      "commit": "7145cfd45b7b62fd18e116e66a39d0bd019a7372",
      "tree": "faeef7c61a62a037250e7c44734bf7fb61e01b9c",
      "parents": [
        "930d7fc3ca11c4628aea2e8ed0c953f47eb2873e",
        "ba8128f9db82da66f28c6e6740d4721d80da954e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 22 17:24:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 22 17:24:32 2017 +0000"
      },
      "message": "Merge \"Remove direct dependency on libbinder from extractor impls\""
    },
    {
      "commit": "ba8128f9db82da66f28c6e6740d4721d80da954e",
      "tree": "04c7875d85d402988b5b96e739fc6c9746e2532d",
      "parents": [
        "161101b0f95ae62918ab7d9e7f2c7fec89dc2ba6"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Aug 07 18:51:24 2017 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Sep 21 16:10:19 2017 -0700"
      },
      "message": "Remove direct dependency on libbinder from extractor impls\n\nThis change removes dependency on IMediaExtractor/Source binder\ninterfaces from MediaExtractor implementations. Wrapper classes,\nRemoteXXX and CallbackXXX, have been added to convert the\nimplementations to binder objects or the other way around.\n\nTest: build, boot, and play mp4 video file\nBug: 65851881\nChange-Id: I351fb7bbaf8e0154295ccf258f85b8b2f2a4b8fb\n"
    },
    {
      "commit": "3f167c27890116d252cfdd718c057419b7b98a28",
      "tree": "ccd9e9ed925dbb7454f3ffe11790da281da20e6f",
      "parents": [
        "df9f68eb9b0b25e7c045c9efe07afe1c8337e7f8"
      ],
      "author": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Sep 20 23:51:57 2017 -0700"
      },
      "committer": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Wed Sep 20 23:51:57 2017 -0700"
      },
      "message": "mediaex: remove invalid syscall from arm64 seccomp\n\nAddresses:\n09-20 19:41:17.327   694   694 W /system/bin/mediaextractor:\nlibminijail[694]: compile_file: nonexistent syscall \u0027_llseek\u0027\n\nBug: 66084343\nTest: boot marlin without the above warning.\nChange-Id: I7daafa448b63d9f939ad59e3c9de6c4219697c56\n"
    },
    {
      "commit": "2dde5ecefdf2691bdced553e4dfc276da1d9c17e",
      "tree": "79c2b4315792daa557a56301ea10f17373691235",
      "parents": [
        "7fa5bce9882698c578141fe48984c93f561a9caa"
      ],
      "author": {
        "name": "Daniel Micay",
        "email": "danielmicay@gmail.com",
        "time": "Fri Sep 01 15:53:29 2017 -0400"
      },
      "committer": {
        "name": "Daniel Micay",
        "email": "danielmicay@gmail.com",
        "time": "Sat Sep 02 16:25:55 2017 -0400"
      },
      "message": "whitelist getrandom for arc4random usage\n\narc4random is called by the linker for dlopen to randomize the library\nload order, among other uses. It\u0027s becoming more widely used over time.\nIt calls getentropy at regular intervals to reseed itself, which uses\nthe getrandom system call. This wasn\u0027t noticed because it reseeds only\nvery rarely with typical usage in Android.\n\nThis was quickly noticed on CopperheadOS where the hardened allocator\nbased on OpenBSD malloc uses at least one (often more) byte of entropy\nfrom arc4random for each call to malloc, free, realloc, etc. It\u0027s still\nneeded *eventually* without the hardened allocator but it would take a\nlot of plugin loading / unloading, etc. with dlopen / dlclose to hit it\nat the moment.\n\nChange-Id: I0a448e833916373871edfc68274ac31e314d54f7\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": "eb96cfcbce82e4beb8a3a307adbe032f233a5fd1",
      "tree": "bbb5d18633a86c628667a9d5301ff2a682a61733",
      "parents": [
        "7840d603cad132c9b02116fae1b1ab99c8f3b7b8",
        "556252fa992b5f405f8bb81da23061ffe5771c99"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Jun 08 20:40:49 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 08 20:40:49 2017 +0000"
      },
      "message": "Merge \"Add OWNERS in frameworks/av\" am: 7b2b2a497c\nam: 556252fa99\n\nChange-Id: Ic699b8f7a93fe0634aaac1ce924f6c0bf6d5ace9\n"
    },
    {
      "commit": "479a20f0ee5e9033abd2860279b1261fc86ea542",
      "tree": "f1fc43a95dc88c3699da17f3f02f622bfa33d070",
      "parents": [
        "5e67f372329d7ac9e2218926e4d87cd58257ee47"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Jun 06 21:39:48 2017 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Jun 07 16:57:30 2017 +0900"
      },
      "message": "fix: NCs in mediaextractor\n\nBug: 62255959\nTest: adb shell monkey -p com.google.android.deskclock -p\ncom.android.calculator2 -p com.google.android.contacts -p\ncom.android.launcher -p com.google.android.launcher -p com.android.mms\n-p com.google.android.apps.messaging -p com.android.phone -p\ncom.google.android.dialer -p com.android.providers.downloads.ui -p\ncom.android.settings -p com.google.android.calendar -p\ncom.google.android.GoogleCamera -p com.google.android.apps.photos -p\ncom.google.android.gms -p com.google.android.setupwizard -p\ncom.google.android.googlequicksearchbox -p\ncom.google.android.packageinstaller -p\ncom.google.android.apps.nexuslauncher -c\nandroid.intent.category.LAUNCHER --ignore-security-exceptions\n--monitor-native-crashes -s 490 -v -v -v 125000\nChange-Id: If0aab0bca3237d1140dd8153ec614479c3c0ba2e\n"
    },
    {
      "commit": "b1e2a238227076e274b39da9531d4287b6207251",
      "tree": "f1d1677a4a86ab48097e29489eccee2d35cc17fb",
      "parents": [
        "77c52d2f586012ee98fc25bee453afd0a8d008df"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Jun 05 15:45:46 2017 -0700"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Jun 06 15:08:19 2017 -0700"
      },
      "message": "Add OWNERS in frameworks/av\n\n* Owners are selected from top CL approvals or owners.\n  They will be suggested to review/approve future CLs.\n* OWNERS files are recognized by the new find-owners plugin, see .md files in\n  https://gerrit.googlesource.com/plugins/find-owners/+/master/src/main/resources/Documentation/\n\nTest: build/make/tools/checkowners.py -c -v OWNERS\nChange-Id: I7c848855a2d7a0d7f33123ea4ef5c2d03977b495\n"
    },
    {
      "commit": "0f0c0e7e9dbe18ba58f8cb41cd525863634f47e8",
      "tree": "64ad9f8bd8e622751acdaabfdc7a366d3a4b06fc",
      "parents": [
        "0375da69b221b05c3e44c49b1ad2f3b93a6bf2f9"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed May 24 13:27:00 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed May 24 13:27:00 2017 -0700"
      },
      "message": "media{codec, extractor}: update seccomp policy.\n\nUpdate the mediacodec and mediaextractor seccomp policies to allow\ngetpid and gettid, which started being used after this CL:\nhttps://android-review.googlesource.com/c/390273/\n\nBug: http://b/38508369\nTest: debuggerd -b `pidof media.codec`\nTest: debuggerd -b `pidof media.extractor`\nChange-Id: I1be61f645fa475856fa814747a5740689492aa2b\n"
    }
  ],
  "next": "e7566e73f84dde30c90c9776defb3df3d3d5b916"
}
