)]}'
{
  "log": [
    {
      "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": "e08896ab7714643fc5b8ed5bff994825513a67e5",
      "tree": "3cf56664f54bcea1da65ad78bd05d2a99a98f1bd",
      "parents": [
        "887cb9ea946a3f29999849408ac9b051b705c008"
      ],
      "author": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Wed Oct 17 12:37:10 2018 -0700"
      },
      "committer": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Fri Nov 02 15:02:29 2018 +0000"
      },
      "message": "Use specific RSS check under 64-bit Scudo\n\nScudo is a hardened memory allocator that can be enabled on a per target basis,\nand replaces malloc/free/etc with its own (go/scudo-allocator). It lives in\nLLVM\u0027s compiler-rt project, along with ASan and the other sanitizers.\n\nThe 64-bit version of the allocator reserves (but doesn\u0027t commit) a large\nportion of the address space, which is not compatible with the address space\nlimit enforced by RLIMIT_AS.\n\nScudo offers a function to enforce an upper RSS limit (note this is the actual\nRSS of a process, not its AS), use it if running with 64-bit Scudo.\n\nBug: 63907455\nTest: aosp compiled \u0026 run in emulator\nTest: manually enabling Scudo for mediaextractor \u0026 mediacodec, flashing \u0026 using\n      a marlin\n\nChange-Id: Iaef6ff04077b22d16b0b62d413081ee8e6ba6ea0\n"
    },
    {
      "commit": "7bd26ab0a794612f633457067288e30ed0efd520",
      "tree": "be42259512ec3ef494985c301cc7f5f075912244",
      "parents": [
        "db44c5d13b9972a0d0dd177c31259b74bc2e4376"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Fri Jul 27 11:58:12 2018 -0700"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Thu Aug 23 15:10:54 2018 -0700"
      },
      "message": "Skip memory limits under HWASan, same as ASan.\n\nHWASan is a new memory tool with similar properties: it also has a\nlarge sparse \"shadow\" mapping that makes RLIMIT_AS ineffective.\n\nBug: 112438058\nTest: mmm SANITIZE_TARGET\u003dhwaddress\n\nChange-Id: Iec3dee890e9d5fbdc4fee5e7e59c58ee2b03a0bf\n"
    },
    {
      "commit": "f1b0523625ed27266bee8fcc64a3867e02b9a187",
      "tree": "929381d98d0d659be87f2d86555f39a91a3fe28e",
      "parents": [
        "f402866c6aab58d8f991f1122976714caebf7eee"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Wed Aug 02 16:36:56 2017 -0700"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Thu Aug 03 11:46:51 2017 -0700"
      },
      "message": "[cfi] Adjust RLIMIT_AS by CFI shadow size.\n\nCFI (control flow integrity) implementation is using a MAP_NORESERVE\nallocation of up to 2GB is size. Only a tiny portion of it is backed\nby physical memory. Take this into account when setting RLIMIT_AS for\nmedia services.\n\nTest: no immediate effect; CFI shadow increase for 48-bit aarch64 can\n      be reapplied w/o breaking android boot.\nBug: 64293803\n\nSee https://android-review.googlesource.com/#/c/platform/bionic/+/424903/.\n\nChange-Id: I8d4e780a8579f3102f97abe0f5c9bf8f3dee3d2f\n"
    },
    {
      "commit": "b1005323ca86a545942eb64a8cfb5e84809a5791",
      "tree": "7933149e6bc1c711ca040abe2010d1962e6ccada",
      "parents": [
        "84404f068fdeec910664ec935ccd94df1e8f3ca6"
      ],
      "author": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Sat Oct 01 20:26:51 2016 -0700"
      },
      "committer": {
        "name": "Jeffrey Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Mon Oct 03 19:40:44 2016 +0000"
      },
      "message": "mediaextractor: Skip setting  memory limits on ASan builds\n\nASan-ified libraries have a larger memory footprint which counts\ntowards a process\u0027s RLIMIT_AS. Detect ASan at runtime and skip\nsetting memory limits.\n\nTest: Builds and boots. \"MediaUtils: running with ASan, not setting\nmemory limits\" appears in logcat, mediaextractor is no longer\ncrashing.\n\n(cherry picked from commit 4bc7ad9e0ea04928e7ed9767251696cc4a4e5d15)\n\nBug: 31831213\nChange-Id: I6705baa825cbfd45695def2cd80d8d2261b05339\n"
    },
    {
      "commit": "c57fe21ebdd6813c5a8954f3fda51b82d26acd07",
      "tree": "0de87347d7a68d15856c89a70b6599ed959703ad",
      "parents": [
        "7d58810be46a86fa5c66d6d53d2453a5accc76f8"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue May 31 09:45:43 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue May 31 09:45:43 2016 -0700"
      },
      "message": "limit mediaextractor memory\n\nLimit mediaextractor using rlimit, to prevent it from bringing down the system\nvia the low memory killer.\n\nBug: 28471206\nBug: 28615448\nChange-Id: Ic84137435d1ef0a6883e9789a4b4f399e4283f05\n"
    }
  ]
}
