)]}'
{
  "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": "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": "4bc7ad9e0ea04928e7ed9767251696cc4a4e5d15",
      "tree": "aa30b7bd082ceabb22dcf932971b5a82bde55040",
      "parents": [
        "2dc6a20b598c899cb5303924ac7a0462687a6e7d"
      ],
      "author": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Sat Oct 01 20:26:51 2016 -0700"
      },
      "committer": {
        "name": "Jeff Vander Stoep",
        "email": "jeffv@google.com",
        "time": "Mon Oct 03 09:25:41 2016 -0700"
      },
      "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\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"
    }
  ]
}
