)]}'
{
  "log": [
    {
      "commit": "9243da900839d87a5e55db69d88e469543919cac",
      "tree": "483f9335a4e68d8ce4661c8329319f679eeca167",
      "parents": [
        "fc78be29352653e13e4c9ecdb75ad0a166b61ee7",
        "a8aaf198d5d5bf110df36309a7c679ed3a153d68"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 07 08:15:35 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 07 08:15:35 2019 +0000"
      },
      "message": "Merge \"Apply initial settings for blkio cgroup\""
    },
    {
      "commit": "fc78be29352653e13e4c9ecdb75ad0a166b61ee7",
      "tree": "10bc64fc8e22be30e95fd09f7649f3825ed723ea",
      "parents": [
        "eaf203d301fcc61b76d7d58019cd641b24c744c2",
        "70788f93ba5e8262790db9a473715362b8372501"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Tue May 07 06:41:01 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 07 06:41:01 2019 +0000"
      },
      "message": "Merge \"Support for stopping/starting post-data-mount class subsets.\""
    },
    {
      "commit": "a8aaf198d5d5bf110df36309a7c679ed3a153d68",
      "tree": "fb6e7b707f9f99afbd13c6b31013e2cc43a01416",
      "parents": [
        "0fcd9292c4b87c4b16dc3bb05b3ae8a6bdbd31df"
      ],
      "author": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Tue Apr 23 21:33:56 2019 +0800"
      },
      "committer": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Fri May 03 11:58:13 2019 +0800"
      },
      "message": "Apply initial settings for blkio cgroup\n\nBug: 111422845\nTest: values are applied\nChange-Id: Id28d9619fc2fd2287fe656b8032025184ae7f631\n"
    },
    {
      "commit": "c57ed29dd5c48f668c7cb51ba6d198d84c8ff3dc",
      "tree": "87562897c97b569207a4618afcce8ca79c6188d7",
      "parents": [
        "cc30f4d7dd2de0cd1213703ed0d3165b4671ebef"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Apr 25 16:20:32 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed May 01 16:46:06 2019 +0100"
      },
      "message": "Reland: Fix libnativeloader to correctly link to the platform namespace.\n\nThis relands http://r.android.com/951440:\n\nThis affected binaries in the Runtime APEX, where the platform namespace is\n\"platform\" rather than \"default\".\n\nAlso extend ANDROID_ADDITIONAL_PUBLIC_LIBRARIES to create links to both to\nplatform and runtime namespaces, so that it can be used to open up access to\ninternal libraries in the Runtime APEX as well, which is used by ART gtests\nand run tests.\n\nAlso update some comments in the ld.config*.txt files to accurately explain\nwhy some namespaces need to be visible, and some other minor changes for\nconsistency. There are no semantically significant changes in those files.\n\nTest: Flash and boot\nTest: Run an ART run test with the internal libarttest.so library\nTest: lunch aosp_cf_x86_phone-eng;\n  atest android.compilation.cts.AdbRootDependentCompilationTest#testCompile_curProfile \\\n    com.android.cts.dexmetadata.InstallDexMetadataHostTest#testProfileSnapshotAfterInstall \\\n    installd_dexopt_test\nBug: 130293232\nBug: 121117762\nChange-Id: I3d9f2102a03e83843e15bc78b5ad347220c52769\n"
    },
    {
      "commit": "8a50dad46760069a02392e7499ed3e165500dcae",
      "tree": "2807892fac65d08d1f1fa5717a3acc85abc33cac",
      "parents": [
        "446014ecf90bf662da9361d58378010722980e3c"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Apr 30 16:11:30 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Apr 30 16:11:30 2019 +0100"
      },
      "message": "Add linker entries for the new libdexfiled_external.so.\n\nFollow up to http://r.android.com/943476. This library is only available in\ndebug builds of the Runtime APEX.\n\nTest: Flash and boot with eng build\nChange-Id: I260f9b838f44ba3f8976c117d9e42fc456239e88\n"
    },
    {
      "commit": "b9259a9cbe2b0feb5c1a61ce9a96f4e3c45e5c06",
      "tree": "908253b6c50e5fe1070e3c67808f17b8dac18503",
      "parents": [
        "4ca0ca67bf466381e59865137e6811e863002984"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Apr 29 20:57:16 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Apr 29 20:57:16 2019 +0000"
      },
      "message": "Revert \"Fix libnativeloader to correctly link to the platform namespace.\"\n\nThis reverts commit 4ca0ca67bf466381e59865137e6811e863002984.\n\nReason for revert: Breaks android.compilation.cts.AdbRootDependentCompilationTest#testCompile_curProfile and others: http://g/art-team/R2nEDA1Ka_s\n\nChange-Id: Ia6285648133d21e61040efafc73cac97d702a7c4\n"
    },
    {
      "commit": "4ca0ca67bf466381e59865137e6811e863002984",
      "tree": "be9a8460b1536fdf24f87f04dec0567850c584ab",
      "parents": [
        "67231474feb04fd7d427333f3b1daa3da8562ed7"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Apr 25 16:20:32 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Apr 29 13:09:08 2019 +0100"
      },
      "message": "Fix libnativeloader to correctly link to the platform namespace.\n\nThis affected binaries in the Runtime APEX, where the platform namespace is\n\"platform\" rather than \"default\".\n\nAlso extend ANDROID_ADDITIONAL_PUBLIC_LIBRARIES to create links to both to\nplatform and runtime namespaces, so that it can be used to open up access to\ninternal libraries in the Runtime APEX as well, which is used by ART gtests\nand run tests.\n\nAlso update some comments in the ld.config*.txt files to accurately explain\nwhy some namespaces need to be visible, and some other minor changes for\nconsistency. There are no semantically significant changes in those files.\n\nTest: Flash and boot\nTest: Run an ART run test with the internal libarttest.so library\nBug: 130293232\nBug: 121117762\nChange-Id: I7ebaf5370dd0f533b1bb5f0e67e7c3c1df48e512\n"
    },
    {
      "commit": "70788f93ba5e8262790db9a473715362b8372501",
      "tree": "af4e51788ddef7cde31f404b853db8d28ee20229",
      "parents": [
        "67231474feb04fd7d427333f3b1daa3da8562ed7"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Tue Apr 23 16:26:01 2019 +0200"
      },
      "committer": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Fri Apr 26 14:04:59 2019 +0200"
      },
      "message": "Support for stopping/starting post-data-mount class subsets.\n\nOn devices that use FDE and APEX at the same time, we need to bring up a\nminimal framework to be able to mount the /data partition. During this\nperiod, a tmpfs /data filesystem is created, which doesn\u0027t contain any\nof the updated APEXEs. As a consequence, all those processes will be\nusing the APEXes from the /system partition.\n\nThis is obviously not desired, as APEXes in /system may be old and/or\ncontain security issues. Additionally, it would create a difference\nbetween FBE and FDE devices at runtime.\n\nIdeally, we restart all processes that have started after we created the\ntmpfs /data. We can\u0027t (re)start based on class names alone, because some\nclasses (eg \u0027hal\u0027) contain services that are required to start apexd\nitself and that shouldn\u0027t be killed (eg the graphics HAL).\n\nTo address this, keep track of which processes are started after /data\nis mounted, with a new \u0027mark_post_data\u0027 keyword. Additionally, create\n\u0027class_reset_post_data\u0027, which resets all services in the class that\nwere created after the initial /data mount, and \u0027class_start_post_data\u0027,\nwhich starts all services in the class that were started after /data was\nmounted.\n\nOn a device with FBE, these keywords wouldn\u0027t be used; on a device with\nFDE, we\u0027d use them to bring down the right processes after the user has\nentered the correct secret, and restart them.\n\nBug: 118485723\nTest: manually verified process list\nChange-Id: I16adb776dacf1dd1feeaff9e60639b99899905eb\n"
    },
    {
      "commit": "5744cc4e99f886cf6265461a88971086ccafb4a5",
      "tree": "e7ba8a93ecefdbaea4a51756f8287c9f04922603",
      "parents": [
        "1cafeb560c38f93c28c2a28e8871a9566b12c7a8"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Apr 23 14:56:21 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Apr 23 23:15:24 2019 +0000"
      },
      "message": "Fix a warning on namespace.media.link.default.shared_libs\n\nTest: build \u0026 dumpsys media.extractor\nBug: 130882530\nChange-Id: Ifd46858b5a864f0fbed87baa3321f233ea12954e\nMerged-In: Ifd46858b5a864f0fbed87baa3321f233ea12954e\n"
    },
    {
      "commit": "2ddb8df2ef22514f1bf91fe73b99877d19b2a964",
      "tree": "9dccc4c76ea6bb30fd646cfc68e6c1c5f8a57ecb",
      "parents": [
        "9cf353a1d3b9fcb7b09e94fb5f732eb498e1cf0f",
        "05f07d89a6b44eef1fcec020bf9020a3429fc3ad"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 23 02:01:36 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 23 02:01:36 2019 +0000"
      },
      "message": "Merge \"Adding adb_debug.prop into debug ramdisk\""
    },
    {
      "commit": "05f07d89a6b44eef1fcec020bf9020a3429fc3ad",
      "tree": "f4761af1409436c79dcc0bd32a00d56e775e6b25",
      "parents": [
        "9b33cbc0cbe92e7f1e60f7b8a3c2fc35976aadbc"
      ],
      "author": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Fri Apr 19 22:08:56 2019 +0800"
      },
      "committer": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Sat Apr 20 06:08:51 2019 +0000"
      },
      "message": "Adding adb_debug.prop into debug ramdisk\n\nThe debug ramdisk can only be used if the device is unlocked.\nWhen it\u0027s used, init will load adb_debug.prop and the userdebug\nsepolicy from the debug ramdisk, to allow adb root on a user build.\n\nBug: 126493225\nTest: \u0027make\u0027 and checks the file is installed\nChange-Id: Id6962414197fc8f47f7c07818e8fb16107dc17a3\n"
    },
    {
      "commit": "e7d0c83d3c5ca974d0fbdc61bf7fad8ccd5c1f83",
      "tree": "dc2ea3f0ed7cb56d09cef461388e3bcfb1c16595",
      "parents": [
        "72d8d2f2c605375643e396da1d67c7a5f0735775",
        "a91c5f700ea675f53beb1cf918cedf2d719e6f9e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Apr 20 00:12:47 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Apr 20 00:12:47 2019 +0000"
      },
      "message": "Merge \"init.rc: set fsck log permission on post-fs-data\""
    },
    {
      "commit": "72d8d2f2c605375643e396da1d67c7a5f0735775",
      "tree": "4e8eedf8927565ae9593020474d4fe215c3a86c8",
      "parents": [
        "9b33cbc0cbe92e7f1e60f7b8a3c2fc35976aadbc",
        "30afda71c0dac4d1d59a91b78256ebff76257ad8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 19 23:54:53 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 19 23:54:53 2019 +0000"
      },
      "message": "Merge \"Copying debug ramdisk files to /debug_ramdisk/*\""
    },
    {
      "commit": "a91c5f700ea675f53beb1cf918cedf2d719e6f9e",
      "tree": "ff0480bd907cd6797a5fc03e43fd8511f346db09",
      "parents": [
        "9b33cbc0cbe92e7f1e60f7b8a3c2fc35976aadbc"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Fri Apr 19 10:58:39 2019 -0700"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Fri Apr 19 11:46:21 2019 -0700"
      },
      "message": "init.rc: set fsck log permission on post-fs-data\n\nFixes: 130829745\nTest: build and trigger fsck\n      crosshatch:/ # ls -l /dev/fscklogs/log\n      -rwxrwx--- 1 root system 1584 1970-04-08 14:48 /dev/fscklogs/log\nChange-Id: Ifd0734e121d07b941a73d7cabde04928ce5e5c59\n"
    },
    {
      "commit": "a7c103eb8ed82f3a4886ebd07a1a9b3664cafa8f",
      "tree": "d35a70b8ae1b53c5c0a1e8540e297d38efbfe7fd",
      "parents": [
        "f072aaffe06bcdd7a3c05c2bb3ec0f909376c756",
        "45d8174fe7b6f35883f74ceefdf591b209f1fab2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 19 02:17:50 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 19 02:17:50 2019 +0000"
      },
      "message": "Merge \"init: set oom_adj early before fork vendor_init\""
    },
    {
      "commit": "30afda71c0dac4d1d59a91b78256ebff76257ad8",
      "tree": "dbe9afd63d7c662dddb78a9ae2aaa934e71acc94",
      "parents": [
        "fc1749280c895e42e814e66ec7ec484a962b2f94"
      ],
      "author": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Thu Apr 11 23:57:24 2019 +0800"
      },
      "committer": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Fri Apr 19 09:56:14 2019 +0800"
      },
      "message": "Copying debug ramdisk files to /debug_ramdisk/*\n\nIn previous implementation, userdebug sepoilcy and property files are\nloaded from the system.img. This CL changes this to:\n\n  - first-stage init copies userdebug files from ramdisk to /debug_ramisk/*\n  - second-stage init loads files from /debug_ramdisk/*.\n\nNote: same as before, the above can only be triggered, if the device\nis UNLOCKED\n\nWith this, we don\u0027t have to put userdebug related files into the USER\nsystem.img.\n\nBug: 126493225\nTest: boot device with a ramdisk with /force_debuggable, checks related\n      files are loaded\nChange-Id: I63f5f846e82ba78427062bf7615c26173878d8f3\n"
    },
    {
      "commit": "45d8174fe7b6f35883f74ceefdf591b209f1fab2",
      "tree": "df599c65a8fc7afef44ef70a77047dd337734c37",
      "parents": [
        "d71d30179ca14991c22f65a0d23ddc6686735477"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Thu Apr 18 14:56:24 2019 -0700"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Thu Apr 18 16:14:08 2019 -0700"
      },
      "message": "init: set oom_adj early before fork vendor_init\n\nright now vendor_init is forked before we set oom_adj for init which\nleaves a chance vendor_init could be killed in heavy memory pressure.\n\nthis CL set the oom_adj before forking everything to ensure all native\nhave correct oom_adj settings.\n\nFixes: 130824864\nTest: procrank -o\nChange-Id: I8af129076c3efa29f7b781459449f8f2dc853c98\n"
    },
    {
      "commit": "aa952fa545b24b7b4277a523665d359f1d1b3fd8",
      "tree": "fe511534dc3f322a9f2f3199b94d24478e53fddd",
      "parents": [
        "fc1749280c895e42e814e66ec7ec484a962b2f94",
        "4b2b76e101fd1915c7dc57735d3a2286ddeb747c"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Apr 18 20:54:40 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 18 20:54:40 2019 +0000"
      },
      "message": "Merge \"Remove libandroid.so from media namespace.\""
    },
    {
      "commit": "4b2b76e101fd1915c7dc57735d3a2286ddeb747c",
      "tree": "46836c702e86921436302e01b4880da779268fa0",
      "parents": [
        "5c421695f0d6139632692645f755c79d9f163fc1"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Apr 17 10:47:33 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Apr 17 18:05:51 2019 +0000"
      },
      "message": "Remove libandroid.so from media namespace.\n\nTest: adb shell dumpsys media.extractor\nBug: 130637522\nChange-Id: I6bcdac60a740d19a97bbac19e6339e0552b0d572\nMerged-In: Ia6366834613d1e12498fa90377e79f62a2149776\n"
    },
    {
      "commit": "3ec821fcfb092adb5bf1606d8261435f19543ff5",
      "tree": "1124f89af0acf54950db5e0363c2db3fe747578f",
      "parents": [
        "e1d4648f4636a37c8e2d68ca4efacc2c05de9cc1"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Tue Apr 16 14:57:49 2019 -0700"
      },
      "committer": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Tue Apr 16 15:22:33 2019 -0700"
      },
      "message": "Do not create /sbin\n\n/sbin was traditionally used for static binaries on the ramdisk for\nAndroid, but now everything is a shared binary, so this directory is\nempty and we do not want to encourage creation of new libraries in\nthis directory.\n\nBug: 73660730\nTest: build\nChange-Id: I0d0aa052e1eaf529d18921c45169473df0ee51ff\n"
    },
    {
      "commit": "609236f66cca4d04f045892551f96eb7ca56df16",
      "tree": "e050b77fd062b6e76b51adf359eafa1f3fb9b4bd",
      "parents": [
        "8bb464c2b4652763b6e1c8b59cba8a979179990f"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Feb 27 21:40:42 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Apr 11 13:54:44 2019 +0100"
      },
      "message": "Describe the reason for the allow_all_shared_libs from the runtime namespace\nbetter.\n\nTest: N/A - comment change only\nBug: 119867084\nChange-Id: I80743236f95cedc43b8f80ac32a09ac0094f779e\n"
    },
    {
      "commit": "122e78248ee588a49ff38a662865913923144c94",
      "tree": "5a51a81b731a514684cc1c64e69fcb6935932939",
      "parents": [
        "f14652c30b8140a6e14970adeda4912063ad22c3"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Apr 08 13:29:07 2019 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Apr 09 13:35:07 2019 -0700"
      },
      "message": "charger: Allow to rw /sys/power/[state,wakeup_count]\n\ncharger needs to suspend the device when the power goes away\nwhen it doesn\u0027t have root. These two files are marked with\ngroup system, user system, mode 0600 in \u0027on boot\u0027, but\nit is not executed in charger. Hence, move these actions\nto \u0027on init\u0027.\n\nTest: no failure in libsuspend in charger\n\nBug: 129138950\n\nChange-Id: I787b935b4ff6177601329aeedccdac361b119ca3\nMerged-In: I787b935b4ff6177601329aeedccdac361b119ca3\n"
    },
    {
      "commit": "3a6a01bdee62bbcaa930db8ad43df2c4b93b314e",
      "tree": "546b293ea1919d46cb2e7f4b3dab2705a0c6dc7b",
      "parents": [
        "50bd6f0eb918efb0d58a089dfd6f5c61d26d0a86",
        "360eb055e07813d66e4fc80203a124bda7591bb5"
      ],
      "author": {
        "name": "Oliver Nguyen",
        "email": "olivernguyen@google.com",
        "time": "Fri Apr 05 18:11:30 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 05 18:11:30 2019 +0000"
      },
      "message": "Merge \"Move gcov output to /data/misc/trace\""
    },
    {
      "commit": "851026d569d56bee152b0d53ce3e325f0105695e",
      "tree": "c820eaaad5cf0df3991348195af942cec8181f6a",
      "parents": [
        "5c58e092f3df0e70235a4cdd41790a505e1ee596"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Thu Apr 04 16:48:57 2019 -0700"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Thu Apr 04 16:48:57 2019 -0700"
      },
      "message": "Do not restrict .fs-verity keyring in debuggable build\n\nTest: add logs, see expected behavior\nBug: 112038861\nChange-Id: Ib133d2206a7696caaf42ab5f0a6d79aa5308b332\n"
    },
    {
      "commit": "360eb055e07813d66e4fc80203a124bda7591bb5",
      "tree": "82b9593189bbfa234e7d93bad8ace66763764b2d",
      "parents": [
        "3b25a17a8a844ad6d9da8448ff0794bc8f813e27"
      ],
      "author": {
        "name": "Oliver Nguyen",
        "email": "olivernguyen@google.com",
        "time": "Tue Apr 02 15:26:33 2019 -0700"
      },
      "committer": {
        "name": "Oliver Nguyen",
        "email": "olivernguyen@google.com",
        "time": "Thu Apr 04 13:57:59 2019 -0700"
      },
      "message": "Move gcov output to /data/misc/trace\n\nGcov output location has world write on debuggable builds.\n\nTest: N/A\nBug: 128524141\nChange-Id: Ia6b94e26352dd66f5c6819f6157b4b73dd777a90\n"
    },
    {
      "commit": "063b6beef05ae3bed6d6ca2e4b13c642503ff2b4",
      "tree": "4b41c1f5b514d7f657444cb9b85405293b961d9b",
      "parents": [
        "53e0deb7b287df2f59ca765a845bcca1fb45f5e4"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Mar 29 13:17:35 2019 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Apr 02 22:31:57 2019 -0700"
      },
      "message": "Add libcgrouprc to ld.config.*.txt.\n\nTest: boots (sanity)\nBug: 123664216\nChange-Id: I23c3ece44816e4e213f9630b915e19978a259823\nMerged-In: I23c3ece44816e4e213f9630b915e19978a259823\n"
    },
    {
      "commit": "5ccb6a5cdca5b68719cbbcefccf3dad43b1ec2bc",
      "tree": "afb302668529b090d66552fb77c06ea396ab49b5",
      "parents": [
        "ee4cc04429d903aac3e870cb30145d7fb674b765",
        "fa4971f3c366e4c29857228ce14208fbd3ddf47b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 02 08:24:42 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 02 08:24:42 2019 +0000"
      },
      "message": "Merge \"Search rs namespace prior to vndk namespace\""
    },
    {
      "commit": "fa4971f3c366e4c29857228ce14208fbd3ddf47b",
      "tree": "f6794d631bcb151fbd20348ccd4d78a44a709af8",
      "parents": [
        "dc738093fe3b92198721af4578d8e22bd07f372c"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Apr 02 09:58:00 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Apr 02 02:43:23 2019 +0000"
      },
      "message": "Search rs namespace prior to vndk namespace\n\nWith the recent change that removed get_exported_namespace out of libdl,\nthe RenderScript SP-HAL stopped using android_dlopen_ext which it used\nto load libRS_internal.so in the \"rs\" namespace. Instead, it now falls\nback to the ordinary dlopen() call. The dlopen() call tries to load the\nlib in the current namespace (which is sphal) and then falls back to the\nlinked namespaces: default, vndk, rs.\n\nThe problem is that rs is listed as the last namespace and therefore the\nlinker tries the namespace only when it failed to load the library in\nother namespaces: default and vndk. libRS_internal.so is accessible to\nboth vndk and rs namespaces. So, the dlopen() call always goes into the\nvndk namespace and there is no chance for the lib to be loaded in the rs\nnamespace.\n\nTo fix the problem, the rs namespace is placed before vndk so that the\nnamespace is tried first.\n\nBug: 129550847\nTest: runtest -x cts/tests/camera/src/android/hardware/\nChange-Id: Idafc32f8a309dd12495768931d7ea17a2f791c50\n"
    },
    {
      "commit": "99ba4b36e86cc02b63ef5e6b58c7279f15f40e62",
      "tree": "9687c27b09388a9074ffef867d3257c1a2042f16",
      "parents": [
        "ddaf736a886df809d867d9bdefa3fe6304f2d21f",
        "f65df964c01cf37f7a61fe4773320390d37c107a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 01 16:10:28 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 01 16:10:28 2019 +0000"
      },
      "message": "Merge \"init.rc: tune F2FS to be aligned to system settings\""
    },
    {
      "commit": "ddaf736a886df809d867d9bdefa3fe6304f2d21f",
      "tree": "04fc944f67c0199e454941ccff864b6c200d9ba7",
      "parents": [
        "dc738093fe3b92198721af4578d8e22bd07f372c",
        "5fdd7861bb68206f28be40c8ec761d560bb8aa52"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 01 13:43:34 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 01 13:43:34 2019 +0000"
      },
      "message": "Merge \"Adding GSI public keys\""
    },
    {
      "commit": "5fdd7861bb68206f28be40c8ec761d560bb8aa52",
      "tree": "f0b9a36d2e40647d914ff5e882226d7934ac4b00",
      "parents": [
        "0a887aa14c5bd187859c7558259df3901fee2342"
      ],
      "author": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Thu Mar 28 22:58:40 2019 +0800"
      },
      "committer": {
        "name": "Bowgo Tsai",
        "email": "bowgotsai@google.com",
        "time": "Sat Mar 30 03:07:31 2019 +0000"
      },
      "message": "Adding GSI public keys\n\nThis CL adds three GSI keys, to allow booting a GSI with AVB\nto enable dm-verity.\n\n   https://android.googlesource.com/platform/external/avb/\n\nThe keys for R and S GSI is to allow a device boots a new\nversion of GSI in a Treble-compatible manner.\n\nFor more information about GSI, please visit:\n\n    https://source.android.com/setup/build/gsi\n\nBug: 112293933\nTest: m q-gsi.avbpubkey r-gsi.avbpubkey s-gsi.avbpubkey\nChange-Id: I4439e44fbd5da3240d7f6c7987f66445ec4590c5\n"
    },
    {
      "commit": "f65df964c01cf37f7a61fe4773320390d37c107a",
      "tree": "bef5a96c145b0bfe7f166f6e46f072c4916ed68c",
      "parents": [
        "e6413fcd94515421c1f17437b55574c645d658fb"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@google.com",
        "time": "Fri Mar 29 09:16:51 2019 -0700"
      },
      "committer": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@google.com",
        "time": "Fri Mar 29 22:43:29 2019 +0000"
      },
      "message": "init.rc: tune F2FS to be aligned to system settings\n\nAndroid sets /proc/sys/vm/dirty_expire_centisecs to 200, so f2fs\ndoesn\u0027t need to do checkpoint in 60 seconds.\n\nBug: 127511432\nChange-Id: I2ba0623053d4480b82003eb1cca85ff03c61fc0f\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@google.com\u003e\n"
    },
    {
      "commit": "1504cb5b6e0a4e0afc162c25b7e53e61c9331b77",
      "tree": "45765bab8ef6e8cccde3dd3ad47a4ffb7313859b",
      "parents": [
        "b86e248e8b977a44a85a85e788b76c75bb1218d6"
      ],
      "author": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Fri Feb 15 11:51:09 2019 -0800"
      },
      "committer": {
        "name": "Suren Baghdasaryan",
        "email": "surenb@google.com",
        "time": "Thu Mar 28 22:12:06 2019 +0000"
      },
      "message": "Set /proc/pressure/memory file permissions\n\nChange access mode and ownership for /proc/pressure/memory file\nto allow system components access memory pressure information.\n\nBug: 129476847\nChange-Id: I25b6bc9d47aee857936f050b66e7bee6363b53be\nSigned-off-by: Tim Murray \u003ctimmurray@google.com\u003e\n"
    },
    {
      "commit": "60de3486541b26cf639f6d43acd98a044c1b0c81",
      "tree": "863bdbd40f5d396d543b5aa1f570851d1b410bf8",
      "parents": [
        "5aa37dc3dc58583db44662354e54679b809d2522",
        "adf4503de10b5af9c4ca4327d9a29e6851f8b2c7"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Mar 28 12:37:29 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 28 12:37:29 2019 +0000"
      },
      "message": "Merge \"Apply the standard system linker config to all of /data.\""
    },
    {
      "commit": "7f43e9fa40d5440f77a9a0b46edaad9d1b69bd8a",
      "tree": "1a3535dc2373558ee8f1d95552ecb8aad832029c",
      "parents": [
        "ee9ba3efe7ce31f231e1e8d0500a7180dcc0c4f8",
        "59183120c29e5e2747222b24de09484b7cd8cf17"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 27 20:31:19 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 27 20:31:19 2019 +0000"
      },
      "message": "Merge \"Initialize fs-verity keys in shell script\""
    },
    {
      "commit": "adf4503de10b5af9c4ca4327d9a29e6851f8b2c7",
      "tree": "657fbb68803ff082e871d93bf93e4c8169e52c04",
      "parents": [
        "d2c4eb0daeb3a668e6127a9f932bf313a0840be1"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Mar 26 16:30:23 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Mar 26 18:10:51 2019 +0000"
      },
      "message": "Apply the standard system linker config to all of /data.\n\nThis is necessary to get the correct APEX namespace setup for apps that\nexecutes binaries from there.\n\nIn older releases no linker config applied to binaries in /data, so the\nfallback config in /system/bin/linker was used, which basically just looked\nup libraries in /system/{lib,lib64}. With the introduction of APEXes that\nlocation no longer contains the complete set of libraries, so this is\nnecessary to retain functional parity.\n\nStrictly speaking this fallback rule should apply as last resort for a\nbinary in any location, but the linker does not accept \"dir.system \u003d /\".\n\nTest: Flash and boot\nTest: The app regression in b/128569634\nBug: 128569634\nChange-Id: Icfcd66f0a7d8d898618be1b6186bb1111d20d688\n"
    },
    {
      "commit": "5c074e0ab9f98f2ba47c76c3a57a617ede0a8436",
      "tree": "35a4eafd976d8ccd75f9f64ed974058cce065d5f",
      "parents": [
        "eac1220fba2ce88d894e06b86fc4bcb0535e461d"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Mar 01 14:14:58 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Mar 26 17:24:12 2019 +0000"
      },
      "message": "Remove links to libart(d).so in the runtime.\n\nThey are not needed since the binaries and relevant exported libraries have\nmoved to the Runtime APEX.\n\nTest: Flash and boot\nTest: atest CtsJniTestCases CtsJdwpTestCases\nBug: 119867084\nChange-Id: If416fbae7057aec02059bb31a4dcd8b63dcc0cad\n"
    },
    {
      "commit": "d2c4eb0daeb3a668e6127a9f932bf313a0840be1",
      "tree": "8caf4bb6633ffc1787bc79534d985efc95547106",
      "parents": [
        "5f890050b7978af8afee72c6a93cb54186e7cf3d",
        "cc6c50a1231df7c0c24ecfb023773247b88bdbbc"
      ],
      "author": {
        "name": "Pete Bentley",
        "email": "prb@google.com",
        "time": "Tue Mar 26 09:19:37 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 26 09:19:37 2019 +0000"
      },
      "message": "Merge \"Tighten native API surface.\""
    },
    {
      "commit": "59183120c29e5e2747222b24de09484b7cd8cf17",
      "tree": "e95aee4f80ae6f695c3b51cc9c0bf1d702d7c92b",
      "parents": [
        "b4ef0beb990d02600cad57096bcd20c9d646c8fa"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Wed Mar 20 15:52:45 2019 -0700"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri Mar 22 09:18:00 2019 -0700"
      },
      "message": "Initialize fs-verity keys in shell script\n\nThis gives us two benefits:\n  - Better compatibility to keyctl(1), which doesn\u0027t have \"dadd\"\n  - Pave the way to specify key\u0027s security labels, since keyctl(1)\n    doesn\u0027t support, and we want to avoid adding incompatible option.\n\nTest: See keys loaded in /proc/keys\nBug: 128607724\nChange-Id: Ia45f6e9dea80d037c0820cf1fd2bc9d7c8bb6302\n"
    },
    {
      "commit": "4a85f3c92a1329ec33f44dfe91fca9890cff3e7b",
      "tree": "3a374a2d0286992f59f506cbbfdf51543e1c2a4c",
      "parents": [
        "1265bc9c6f0ef21e1498635f1e80a51c85f7fd22"
      ],
      "author": {
        "name": "Vic Yang",
        "email": "victoryang@google.com",
        "time": "Thu Mar 21 10:15:00 2019 -0700"
      },
      "committer": {
        "name": "Vic Yang",
        "email": "victoryang@google.com",
        "time": "Thu Mar 21 10:16:06 2019 -0700"
      },
      "message": "Fix sed command on Mac builds\n\nBug: 119423884\nTest: Manually test sed command on Mac\nChange-Id: I8df32b2476a01e2b758ea81f00dae0b6179ba79a\n"
    },
    {
      "commit": "cc6c50a1231df7c0c24ecfb023773247b88bdbbc",
      "tree": "3365170ea850a541cc05bba4f9a7c84f007a98db",
      "parents": [
        "c3e96512c0e6243531f092e706ba002fd77997c6"
      ],
      "author": {
        "name": "Pete Bentley",
        "email": "prb@google.com",
        "time": "Thu Mar 21 17:13:14 2019 +0000"
      },
      "committer": {
        "name": "Pete Bentley",
        "email": "prb@google.com",
        "time": "Thu Mar 21 17:13:14 2019 +0000"
      },
      "message": "Tighten native API surface.\n\nAsynchronousCloseMonitor is moved into libandroidio by\nr.android.com/910073 and so libjavacore no longer needs to\nbe linked to the conscrypt namespace.\n\nBug: 123744297\nTest: m \u0026\u0026 flashall\nTest: atest CtsLibcoreOkHttpTestCases\nTest: atest CtsLibcoreTestCases\nChange-Id: Id720b59e4ef42a2c0226b497a1cc3c54f7a837d0\n"
    },
    {
      "commit": "c3e96512c0e6243531f092e706ba002fd77997c6",
      "tree": "28b79653f3b9d2c024017bf66140862c5e34557f",
      "parents": [
        "ddae5c85b9c67fd356653291bf3f06da0e1da19d",
        "19b3a51f64cb4ecd8a1323de2d9afa3e821fee33"
      ],
      "author": {
        "name": "Vic Yang",
        "email": "victoryang@google.com",
        "time": "Thu Mar 21 04:30:47 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 21 04:30:47 2019 +0000"
      },
      "message": "Merge \"Add support for no-vendor-variant VNDK\""
    },
    {
      "commit": "aaee497db2b74e55dc1779abb41b294afb954349",
      "tree": "cf9997c94f215b1d2ea165d8761ed134e79203e7",
      "parents": [
        "d5032392924f451c8a37bb65be5b6d3425ee8ef5",
        "66fc7eb195820d9e8e6649495e51b738d41924a5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 19 16:40:48 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 19 16:40:48 2019 +0000"
      },
      "message": "Merge \"Enable fsverity signature checking\""
    },
    {
      "commit": "d5032392924f451c8a37bb65be5b6d3425ee8ef5",
      "tree": "339cf7f94fd01b52ae432bb038fb02f51fd7db26",
      "parents": [
        "ed6b5177e2cced6256bd8759a58ffee55f9706fb",
        "5c99a0c067f4324b90f5aa588502c6a9fbf079fd"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 19 10:17:10 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 19 10:17:10 2019 +0000"
      },
      "message": "Merge \"Include tests directories in the linker legacy configuration.\""
    },
    {
      "commit": "ed6b5177e2cced6256bd8759a58ffee55f9706fb",
      "tree": "afcea4da525ddd5cd251a57042548c83d31db0ca",
      "parents": [
        "588a87d68ed177858a73acb5f64a5fc6b0b54dcf",
        "3b0da85b2229e7494c52279db973e40cddc3e189"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Mar 19 09:37:55 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 19 09:37:55 2019 +0000"
      },
      "message": "Merge \"Address syntax / error case nits\""
    },
    {
      "commit": "66fc7eb195820d9e8e6649495e51b738d41924a5",
      "tree": "197ce31e2d2d3be4dd2f20a78b9196b0070f0bb1",
      "parents": [
        "830f8372317f017e10c62c05d521eed556a6e012"
      ],
      "author": {
        "name": "Xiaoyong Zhou",
        "email": "xzhou@google.com",
        "time": "Mon Mar 18 14:28:18 2019 -0700"
      },
      "committer": {
        "name": "Xiaoyong Zhou",
        "email": "xzhou@google.com",
        "time": "Mon Mar 18 14:28:18 2019 -0700"
      },
      "message": "Enable fsverity signature checking\n\nThis CL enable fsverity signature checking.\n\nBug: 112038861\nTest: cat /proc/sys/fs/verity/require_signatures -\u003e 1\nChange-Id: I57aaf6094aa503bdcac93306cafd7f71f202e711\n"
    },
    {
      "commit": "5c99a0c067f4324b90f5aa588502c6a9fbf079fd",
      "tree": "adbbb258bca27d50540913989f5c74a12e084598",
      "parents": [
        "830f8372317f017e10c62c05d521eed556a6e012"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 18 17:37:36 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 18 19:07:32 2019 +0000"
      },
      "message": "Include tests directories in the linker legacy configuration.\n\nMake ld.config.legacy.txt similar to other linker configurations with\nrespect to tests in /data/{nativetest,benchmarktest}{,64}.\n\nNote: The linker legacy configuration is used by the ART generic build\ntargets, defined in project device/generic/art.\n\nTest: ART chroot-based on-device testing using the master-art\nBug: 121117762\nChange-Id: I6c8fafa2568862e450aa7b9fea1177a184cb9705\n"
    },
    {
      "commit": "fc0f79f8a842b777281899eaac9a7dffaadbae44",
      "tree": "14cf07291c638d92eacd30e29b58929e522e08bc",
      "parents": [
        "b5ac15a93624076db2132d4877c5340040a6742e",
        "a013e3d53d82253dfbd0ebdb25ac778b3a47b24b"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Sat Mar 16 05:34:09 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 16 05:34:09 2019 +0000"
      },
      "message": "Merge \"List stable libraries media apex relies on.\""
    },
    {
      "commit": "a013e3d53d82253dfbd0ebdb25ac778b3a47b24b",
      "tree": "ccfd1e23967cdbb3c278bbcd88a88697484451c1",
      "parents": [
        "eecd5cc53255a2986b094ecca2fe26976dfce768"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Mar 15 14:43:07 2019 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Mar 15 17:23:03 2019 -0700"
      },
      "message": "List stable libraries media apex relies on.\n\nWith allow_all_shared_libs, the libs under /system/lib may be used\ninstead of libs included in the apex. This change adds stable libraries\nthe media apex relies on to prevent this case.\n\nTest: dumpsys media.extractor, atest MediaPlayer2Test\nBug: 127791685\n\nChange-Id: I6a0419e6da9e9f48a394257b1e8f977ec2dfa9a1\n"
    },
    {
      "commit": "e8565ac94a3aec39cc9efafe4cbb0b453d0a285f",
      "tree": "23f6c06099b11e16548277d155702f589efd5e2b",
      "parents": [
        "0e5b74deff69312063e9f71d3b62f1f806b29526"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Mar 15 14:22:04 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Mar 15 15:14:35 2019 -0700"
      },
      "message": "Init: Load fsverity keys earlier\n\nKeys may be required for apex updates (post-installs), so load them\nbefore starting apexd.\n\nBug: 125474642\nTest: m\nTest: manual\nChange-Id: I32ddb6ae6854334e8ee7e195173ecfaed565d783\n"
    },
    {
      "commit": "3b0da85b2229e7494c52279db973e40cddc3e189",
      "tree": "56f92729c0493532636f9fe13016b86735144fd6",
      "parents": [
        "0e5b74deff69312063e9f71d3b62f1f806b29526"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Mar 15 19:00:36 2019 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Mar 15 19:05:05 2019 +0000"
      },
      "message": "Address syntax / error case nits\n\nObserve some best practices in the APEX symlink\nshell commands. No functional changes intended except with error\nhandling.\n\nBug: 128687472\nBug: 124106384\nBug: 122985829\nBug: 128249030\nTest: make installclean / make droid / inspect one symlink\nChange-Id: I099fed5ac8f25cc3911ce0e7ea2b9f74c2172193\n"
    },
    {
      "commit": "4cd09140489d8ba4905c07e6541e5f2ae47df5ff",
      "tree": "88af77a27e6d22d4ee3e14de129ad9c221adebda",
      "parents": [
        "da1251d6a53994e4076a37487d0d0f08093b2324",
        "192fdeb4954a177388ef6a6d0fe3794dd054df3b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 15 09:02:18 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 15 09:02:18 2019 +0000"
      },
      "message": "Merge changes from topic \"apex_earlymount_no_bionic_bindmount\"\n\n* changes:\n  /bionic path is gone\n  Revert \"Handle adb sync with Bionic under /bionic\"\n  Don\u0027t bind-mount bionic files\n"
    },
    {
      "commit": "cb7ac9d7525864f3cde2ab8806df586a1a2351f9",
      "tree": "d50de78553f61fdaf72c8a859119f3881aa038b2",
      "parents": [
        "4886a5bd5942275c20fa95df3ccb03e70a97328c",
        "16e5ae3b39cf21b007d3d1e7b0da3ee1be7a5270"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Mar 14 16:06:08 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 14 16:06:08 2019 +0000"
      },
      "message": "Merge \"Move the logic for creating APEX-related symlinks\""
    },
    {
      "commit": "ff3c13f52f1d223a4aa2904234867e6199643766",
      "tree": "c36fb9bcaab83c4cf087cef69f3f24c14b6c4d9d",
      "parents": [
        "873ee642f22cd928b80002104c71b654a6d7212e",
        "8df32193f315d893493c1db3f6f7b26c59a7bc88"
      ],
      "author": {
        "name": "Gavin Corkery",
        "email": "gavincorkery@google.com",
        "time": "Thu Mar 14 14:14:38 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 14 14:14:38 2019 +0000"
      },
      "message": "Merge \"Rename data/pkg_staging to data/app-staging.\""
    },
    {
      "commit": "16e5ae3b39cf21b007d3d1e7b0da3ee1be7a5270",
      "tree": "e8edb3e27583eb698a2cec41e477428686e21124",
      "parents": [
        "fdfb9a0113abc4b91859f2e4dfd05b1c0ca018b0"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Mar 13 14:30:20 2019 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Mar 14 10:38:54 2019 +0000"
      },
      "message": "Move the logic for creating APEX-related symlinks\n\nThe existing location of logic for creating symlinks to files that have\nmoved into APEX does not get executed for -user builds, only\n-userdebug and -eng. The new location is equally arbitrary but appears\nto be invoked for -user, -userdebug and -eng targets.\n\nTested with:\nmake cleaninstall \u0026\u0026 lunch taimen-[user|userdebug|eng] \u0026\u0026 make droid\n\nInspected:\nls -l out/target/product/taimen/system/usr/icu\n\nBug: 128249030\nBug: 122985829\nBug: 124106384\nTest: see above\nMerged-In: I92a52d0b5ef97e8cb4f780691f8594e40f2fa6b3\nChange-Id: I92a52d0b5ef97e8cb4f780691f8594e40f2fa6b3\n(cherry picked from commit 0ed52b789d917402e494f9dcf9ec46cebd87d8f8)\n"
    },
    {
      "commit": "7b4801a92140a27343ddc38f4b8f0a2c4995a9fb",
      "tree": "709e32fd9d313e60fe40baa57ed4bc4f54234858",
      "parents": [
        "9a00f596d3376ed750eb58cf07c04d575b540c2b"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Mon Feb 25 16:41:38 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Mar 14 07:35:54 2019 +0900"
      },
      "message": "Don\u0027t bind-mount bionic files\n\nBind-mounting of the bionic files on /bionic/* paths no longer required\nas there are direct symlinks from bionic files in /system partition to\nthe corresponding bionic files in the runtime APEX. e.g.,\n\n/system/lib/libc.so -\u003e /apex/com.android.runtime/lib/bionic/libc.so\n\nBug: 125549215\nTest: m; devices boots\nChange-Id: I4a43101c3e3e2e14a81001d6d65a8a4b727df385\n"
    },
    {
      "commit": "822dbd8911ffef7727406dab51b179aad343509f",
      "tree": "69b7f7c98463111b2160e22c7a37a8e075e5aa66",
      "parents": [
        "13b5c3bee788b53821023c849277f1ff1d720a35",
        "9358e0972f2a413217ec75394e17974e06088e40"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Mar 13 08:49:30 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 13 08:49:30 2019 +0000"
      },
      "message": "Merge \"Add an env variable for the tzdata module root\""
    },
    {
      "commit": "13b5c3bee788b53821023c849277f1ff1d720a35",
      "tree": "9567ad282c54fb5ee51e20a0df6129a101a45282",
      "parents": [
        "35c5cd91392c707c627504f2980bf12b1f8001e4",
        "4517e57ff5df0978199c69982270fdc647ce66a6"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Wed Mar 13 07:46:32 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 13 07:46:32 2019 +0000"
      },
      "message": "Merge \"Create /metadata/apex/[sessions].\""
    },
    {
      "commit": "4517e57ff5df0978199c69982270fdc647ce66a6",
      "tree": "5f63a417f3cf1a7246264d229af2b8c55331f528",
      "parents": [
        "b778c44c07a843a70c312dbdccf98b7cf1af8fba"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Tue Mar 12 22:05:20 2019 +0100"
      },
      "committer": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Tue Mar 12 22:05:20 2019 +0100"
      },
      "message": "Create /metadata/apex/[sessions].\n\nFor storing persistent apex session state.\n\nBug: 126740531\nTest: builds\nChange-Id: Ibf280764977768956b5512b2252d22ceaba31c1e\n"
    },
    {
      "commit": "19b3a51f64cb4ecd8a1323de2d9afa3e821fee33",
      "tree": "5e7b2afa593306b361d12fe77c86b4ed252c3737",
      "parents": [
        "7f6d6db24d2bd69d89b66029007f8af1e1bddb0c"
      ],
      "author": {
        "name": "Vic Yang",
        "email": "victoryang@google.com",
        "time": "Mon Nov 12 20:28:21 2018 -0800"
      },
      "committer": {
        "name": "Vic Yang",
        "email": "victoryang@google.com",
        "time": "Tue Mar 12 13:30:46 2019 -0700"
      },
      "message": "Add support for no-vendor-variant VNDK\n\nWhen no-vendor-variant VNDK is enabled, the vendor variant of VNDK\nlibraries are not installed.  In this case, the vendor binaries need to\nbe able to link in the core variant.\n\nUpdate the linker config so that we export such VNDK libraries to the\nproper linker namespaces.\n\nBug: 119423884\nTest: Enable no-vendor-variant VNDK for a dummy VNDK library.  Boot and\n      check the vendor variant does not exist and only the core variant\n      is used.\n\nChange-Id: I71274fdf61373663603a5fbc3497400420094fcf\n"
    },
    {
      "commit": "9358e0972f2a413217ec75394e17974e06088e40",
      "tree": "72e16333e17b77d4f1df9f5ac0cd640d9fa80415",
      "parents": [
        "fdfb9a0113abc4b91859f2e4dfd05b1c0ca018b0"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Mar 12 16:52:36 2019 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Mar 12 16:52:36 2019 +0000"
      },
      "message": "Add an env variable for the tzdata module root\n\nThe ANDROID_TZDATA_ROOT maps to the /apex/com.android.tzdata\nlocation on device like ANDROID_RUNTIME_ROOT maps to the\n/apex/com.android.runtime location.\n\nBug: 128422035\nTest: build only\nChange-Id: Id90006004ca652564e530f3694600ac4afd798ed\n"
    },
    {
      "commit": "8df32193f315d893493c1db3f6f7b26c59a7bc88",
      "tree": "fcf36aff02612f1a2680a86b3fd0d5d97ab9d43b",
      "parents": [
        "23d774105e093c6ff0ef40025eb50fb879794777"
      ],
      "author": {
        "name": "Gavin Corkery",
        "email": "gavincorkery@google.com",
        "time": "Wed Feb 27 12:04:47 2019 +0000"
      },
      "committer": {
        "name": "Gavin Corkery",
        "email": "gavincorkery@google.com",
        "time": "Tue Mar 12 15:38:44 2019 +0000"
      },
      "message": "Rename data/pkg_staging to data/app-staging.\n\nTest: atest apex_e2e_tests\nBug: 126330086\n\nChange-Id: Ic5729d60046e8825a2a94e3c3483ea8232a69ed2\nMerged-In: Ic5729d60046e8825a2a94e3c3483ea8232a69ed2\n"
    },
    {
      "commit": "34e1b402a62cff68b308f267bef3ed5235967925",
      "tree": "acad8e55528ebf4f9de2a2d9c22066db27172bba",
      "parents": [
        "e6413fcd94515421c1f17437b55574c645d658fb",
        "b29b27ec7f47bde45ee65752cb218d6f7a0860d6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 08 23:17:01 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 08 23:17:01 2019 +0000"
      },
      "message": "Merge \"Change mini-keyctl command format.\""
    },
    {
      "commit": "b29b27ec7f47bde45ee65752cb218d6f7a0860d6",
      "tree": "577e5818ba4bc84e4e02d55d9a409b941c1e567b",
      "parents": [
        "2ba61b775a568e15153e443a58e66217152792e1"
      ],
      "author": {
        "name": "Xiaoyong Zhou",
        "email": "xzhou@google.com",
        "time": "Fri Mar 08 09:59:42 2019 -0800"
      },
      "committer": {
        "name": "Xiaoyong Zhou",
        "email": "xzhou@google.com",
        "time": "Fri Mar 08 09:59:42 2019 -0800"
      },
      "message": "Change mini-keyctl command format.\n\nThis CL change the mini-keyctl tool to make it compitable with libkeyctl\ntool to make it more useful.\n\nBug: 112038861\nTest: mini-keyctl padd asymmetric \u0027desc\u0027 .fs-verity \u003c /path/to/cert.der\nTest: mini-keyctl unlink \u003ckey_id\u003e \u003ckeyring_id\u003e\nTest: mini-keyctl restrict_keyring \u003ckeyring_id\u003e\n\nChange-Id: I950f07c7718f173823ce5a5cd08e0d1a0e23a007\n"
    },
    {
      "commit": "ecef987a35943dc19958c0a21471bc3e184791c9",
      "tree": "d50e3329c9af1434140da55bc670c5eba83bce7e",
      "parents": [
        "b778c44c07a843a70c312dbdccf98b7cf1af8fba",
        "e51c87634a133279310746e8ab031f1de3e7a23e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Mar 08 11:48:43 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 08 11:48:43 2019 +0000"
      },
      "message": "Merge \"Fix a typo in linker configuration comments.\""
    },
    {
      "commit": "e51c87634a133279310746e8ab031f1de3e7a23e",
      "tree": "b30c3c6e28475b9d2b2ddfc6043c2699b2d66736",
      "parents": [
        "51deeb569f3782a2647611e76e317f6580e3b596"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Mar 07 19:06:57 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Mar 07 19:06:57 2019 +0000"
      },
      "message": "Fix a typo in linker configuration comments.\n\nTest: n/a\nChange-Id: I3fa36094cf3eb45b0e1400712f22b8477a096b59\n"
    },
    {
      "commit": "787e09a1def1e07d89a0e2fcb037223555f1b764",
      "tree": "ce83dd5ee0bc3808b41c919c030ec10d82c471f2",
      "parents": [
        "1c1850fad2470edc3732bfc05f7fe67f7e2fd422"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Mar 07 10:05:23 2019 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Mar 07 10:14:02 2019 -0800"
      },
      "message": "allow_all_shared_libs for media namespace in ld.config.legacy.txt\n\nThis is a temporal fix. With this change, the extractor plug-ins uses\nunstable libs under /system/lib[64]. The right resolution is being\ndiscussed.\n\nTest: applied the same change to ld.config.txt and checked\n      the memory map of media.extractor on cuttlefish.\nBug: 127791685\n\nChange-Id: Ifd5b79831f27ef4017bb8aa774671aa9b2c5264e\n"
    },
    {
      "commit": "1c1850fad2470edc3732bfc05f7fe67f7e2fd422",
      "tree": "54b332b2d62c1da4f57482fd59800de273d0b844",
      "parents": [
        "e820afdadb36f7d0d3d3a2baadb5f55ebbab0415",
        "0664f31dd05119a6aaa3ef136a1509ff56978298"
      ],
      "author": {
        "name": "David Anderson",
        "email": "dvander@google.com",
        "time": "Thu Mar 07 16:20:01 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 07 16:20:01 2019 +0000"
      },
      "message": "Merge \"Create /metadata/password_slots during boot.\""
    },
    {
      "commit": "1a789db2e39e49f24655f0edfa92c322f1b8221e",
      "tree": "baf583b0169b2c7ca746600e7f8277933e8e35d0",
      "parents": [
        "96dc80f97a6d1dafd7d1bf075589b792565acf86"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Mar 05 21:54:53 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Mar 07 22:21:32 2019 +0900"
      },
      "message": "Don\u0027t defer zygote\n\nRemoving \u0027updatable\u0027 from zygote as zygote is started after apexd. All\nAPEXes are guaranteed to be activated at the moment.\n\nSequence of actions:\n1) /data mounted. post-fs-data is triggered.\n2) apexd starts. APEXes are activated. Init does not execute more\ncommands until the activation finishes.\n3) all post-fs-data sections from other *.rc are executed.\n4) zygote-start is triggered.\n\nBug: 123404717\nBug: 126555629\nBug: 125549215\nTest: device boots\nTest: no following message on the logcat log\nCould not restart \u0027zygote\u0027: Cannot start an updatable service \u0027zygote\u0027 before configs from APEXes are all loaded. Queued for execution.\n\nMerged-In: Ib4d0716ed5225b6ade3adaa247ff6140a9b2b9d5\nChange-Id: Ib4d0716ed5225b6ade3adaa247ff6140a9b2b9d5\n(cherry picked from commit 3bddd540dd1260285b174dbcf891634ba7939d08)\n"
    },
    {
      "commit": "0664f31dd05119a6aaa3ef136a1509ff56978298",
      "tree": "55fa764ace0dc82a934ca040660e3b656673773e",
      "parents": [
        "924eec95182a17cbcdd991b35c653b5052bf8a80"
      ],
      "author": {
        "name": "David Anderson",
        "email": "dvander@google.com",
        "time": "Tue Mar 05 22:16:36 2019 -0800"
      },
      "committer": {
        "name": "David Anderson",
        "email": "dvander@google.com",
        "time": "Tue Mar 05 22:18:14 2019 -0800"
      },
      "message": "Create /metadata/password_slots during boot.\n\nThis directory is used to store the Weaver/GateKeeper slot map so GSIs\ndo not overwrite host keys in secure storage.\n\nBug: 123716647\nTest: /metadata/password_slots exists after boot\nChange-Id: Ib0ca13edec38e68cba1fc2124465571feedc4be7\n"
    },
    {
      "commit": "c676cca4f6d73de7cdf31b32628203c19140f41d",
      "tree": "647bf232f3f8f517cb9def793e6f17878d03b314",
      "parents": [
        "d458066bc76af47da1f6be9d0f37fd45bce0e79e",
        "dcbaf9f41b94cc5ddd12523a48b7be98704332ff"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 05 06:49:02 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 05 06:49:02 2019 +0000"
      },
      "message": "Merge changes from topic \"apex_earlymount_base\"\n\n* changes:\n  Activate system APEXes early\n  mount /apex during first_stage init\n"
    },
    {
      "commit": "dcbaf9f41b94cc5ddd12523a48b7be98704332ff",
      "tree": "d1f714af0433ea0347136c6ee0a2f9417a21cad1",
      "parents": [
        "4ba548d845c0306a46d7cc8cf483caac5756159c"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Feb 22 22:15:25 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Mar 05 09:47:49 2019 +0900"
      },
      "message": "Activate system APEXes early\n\nSummary: Boot sequence around apexd is changed to make it possible for\npre-apexd processes to use libraries from APEXes. They no longer need to\nwait for the apexd to finish activating APEXes, which again can be\ndone only after /data/ is mounted. This improves overall boot\nperformance.\n\nDetail: This change fixes the problem that processes that are started\nbefore apexd (so called pre-apexd processes) can\u0027t access libraries\nthat are provided only by the APEXes but are not found in the system\npartition (e.g. libdexfile_external.so, etc.). Main idea is to activate\nsystem APEXes (/system/apex/*.apex) before /data is mounted and then\nactivate the updated APEXes (/data/apex/*.apex) after the /data mount.\n\nDetailed boot sequence is as follows.\n\n1) init prepares the bootstrap and default mount namespaces. A tmpfs is\nmounted on /apex and the propagation type of the mountpoint is set to\nprivate.\n\n2) before any other process is started, apexd is started in bootstrap\nmode. When executed in the mode, apexd only activates APEXes under\n/system/apex. Note that APEXes activated in this phase are mounted in\nthe bootstrap mount namespace only.\n\n3) other pre-apexd processes are started. They are in the bootstrap\nmount namespace and thus are provided with the libraries from the system\nAPEXes.\n\n4) /data is mounted. init switches into the default mount namespace and\nstarts apexd as a daemon as usual.\n\n5) apexd scans both /data/apex and /system/apex, and activate latest\nAPEXes from the directories. Note that APEXes activated in this phase\nare mounted in the default namespaces only and thus are not visible to\nthe pre-apexd processes.\n\nBug: 125549215\nTest: m; device boots\nChange-Id: I21c60d0ebe188fa4f24d6e6861f85ca204843069\n"
    },
    {
      "commit": "4ba548d845c0306a46d7cc8cf483caac5756159c",
      "tree": "21b36e029b81ad8918d89dd0cd15d3bb04ea3984",
      "parents": [
        "bc6372103ae969f70b8e6a293280145c8a467abc"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Feb 22 16:04:35 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Mon Mar 04 16:22:41 2019 +0900"
      },
      "message": "mount /apex during first_stage init\n\n/apex is not mounted via init.rc but directly by the first_stage init\nbefore the mount namespaces are configured.\n\nThis allows us to change the propagation type for /apex mount point to\nprivate to isolate APEX activatesions across post- and pre-apexd\nprocesses.\n\nBug: 125549215\nTest: m; device boots to the UI\n\nChange-Id: I10e056cd30d64cb702b6c237acd8dab326162884\n"
    },
    {
      "commit": "9e40e12cea667e93e427b09b9bb2b3f136db6c63",
      "tree": "f932f49cb94eb09f2d486cb738b695eedb8de932",
      "parents": [
        "924eec95182a17cbcdd991b35c653b5052bf8a80"
      ],
      "author": {
        "name": "Felix",
        "email": "google@ix5.org",
        "time": "Sat Mar 02 23:54:21 2019 +0100"
      },
      "committer": {
        "name": "Felix",
        "email": "google@ix5.org",
        "time": "Sun Mar 03 14:31:37 2019 +0100"
      },
      "message": "ld.config: Permit legacy /system/vendor paths\n\nBecause /vendor is a symlink to /system/vendor on devices without a\ndedicated /vendor partition, /system/vendor/lib/* needs to be added to\nthe permitted paths whereever /vendor/lib/* is permitted.\n\nReasoning:\nLegacy devices are forced to use ld.config.legacy.txt, which is very\npermissive. We can prolong support for them and enable them to use the\nVNDK if we extend the search paths to include the resolved symlink dirs.\n\nChange-Id: I6b3bb7b86ed82395345a16bdc857353b1b15c704\n"
    },
    {
      "commit": "2b3bf84373665e10d96c6b1680e5e53039505325",
      "tree": "bcaccd28b5a5e7f32c08e81656a00b78abeeee35",
      "parents": [
        "df3f38f6c9546cf3553a38d8d5dc7497c8c540f0"
      ],
      "author": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Thu Feb 21 14:37:36 2019 +0800"
      },
      "committer": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Wed Feb 27 11:23:14 2019 +0800"
      },
      "message": "Add blkio cgroup to libprocessgroup\n\nTo differentiate IO priority for different groups.\n\nBug: 111422845\nBug: 117857342\nTest: tasks are assigned to the group as expected\nChange-Id: Ibb108d1b8e0f720f7ac4cab248b3c33d35e5483d\n"
    },
    {
      "commit": "0c49d1759c9d2854e9cab020142c7a15ad9617b1",
      "tree": "eac750fcbc1cf1370c028214e349ac2a094c6819",
      "parents": [
        "89a7cc48cc7934c34627355b0fb01d913a9d27f0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Feb 22 16:58:10 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Feb 26 12:57:17 2019 +0000"
      },
      "message": "Add a DEX2OAT_BOOTCLASSPATH variable.\n\nBug: 119800099\nTest: m\nChange-Id: I8ae4ecea6da2ef541736a38822b100a620d72a8a\n"
    },
    {
      "commit": "61b20168818891f8e6529f2786a0da0e697f1754",
      "tree": "827c91a9433639be5544a0adfb44a141d28f58a4",
      "parents": [
        "ef3429dae66fe40358762ec0a3bad415fe42cb95",
        "ada7e4928a2a68993f6849a62467cb4684825adb"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Feb 25 13:30:36 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 25 13:30:36 2019 +0000"
      },
      "message": "Merge \"Move tzdatacheck execution after apex is mounted\""
    },
    {
      "commit": "ef3429dae66fe40358762ec0a3bad415fe42cb95",
      "tree": "94760cc17b35e65fbb0dc8c1786151128f1ceda8",
      "parents": [
        "d39f262aade690b799d3b40472bdc9e66c35e685",
        "96949370ce1036001cfcb6fd967f8c91da570898"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Feb 25 00:19:36 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 25 00:19:36 2019 +0000"
      },
      "message": "Merge \"Add compat symlink preferred-arch /system/bin/dalvikvm.\""
    },
    {
      "commit": "96949370ce1036001cfcb6fd967f8c91da570898",
      "tree": "fdf4ce167f748d444c3ed7e75559e912642e410b",
      "parents": [
        "4ac1829d7ebb03d63f9ca1c1ddcdf45443e84f33"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Feb 22 17:25:26 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Feb 22 20:14:15 2019 +0000"
      },
      "message": "Add compat symlink preferred-arch /system/bin/dalvikvm.\n\nTest: Flash and boot\nTest: adb shell ls -l /system/bin/dalvikvm\nBug: 124106384\nBug: 124924906\nChange-Id: I1766af561e6b268a1c914808e872fce97a09631e\n"
    },
    {
      "commit": "ada7e4928a2a68993f6849a62467cb4684825adb",
      "tree": "2b3a76a53f8d54440d2e9d30d06bd36bd08e9963",
      "parents": [
        "af0c58f12d22ff3aa8ecfed1f93834b99502f0fa"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Feb 22 14:05:40 2019 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Feb 22 16:07:22 2019 +0000"
      },
      "message": "Move tzdatacheck execution after apex is mounted\n\ntzdatacheck references files in the runtime apex so should\nnot be executed before the apex mounts are ready.\n\nTest: Manual tests (see b/123270813); observed tzdatacheck running after\n      apex files are mounted\nBug: 123270813\nBug: 116191025\nBug: 119293618\nBug: 113373927\nChange-Id: I249d127c1d568bc5025d81b0bb4187c81363d897\n"
    },
    {
      "commit": "3408eaa9145e994176ca8914933781a35b82daf5",
      "tree": "2760e48ae84d001f844e1b038fadf51426e4396c",
      "parents": [
        "1914fc65f88a7de1535af0b04ec0f8c5c3226f05"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Feb 22 00:47:13 2019 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Feb 22 01:16:54 2019 -0800"
      },
      "message": "Add permitted path in media namesapce for extractor process.\n\nTest: build, boot, dumpsys media.extractor\nBug: 125134086\nChange-Id: I5ed67d7d8d3ad7abf2cff7da8f33fdaab842acff\n"
    },
    {
      "commit": "4bb7b18fe1c00b965d4d4445f06f0047096f3304",
      "tree": "83b2d2cfe6731094bd83e21b18e4af659703ed22",
      "parents": [
        "4e47753338eb80a5e8d11e7bdc0b5f3dea816992",
        "72ff585bd04a458d68516e5b0af676cbe4c2264e"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Feb 20 20:35:47 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 20 20:35:47 2019 +0000"
      },
      "message": "Merge changes from topic \"libprocessgroup_json\"\n\n* changes:\n  Add schema for task profiles\n  Move rootdir/*.json to libprocessgroup\n"
    },
    {
      "commit": "4e47753338eb80a5e8d11e7bdc0b5f3dea816992",
      "tree": "e9c75e0b5b5fae6bd13cc4bf72411610f923e72d",
      "parents": [
        "14efb903bbddbba5358cd0b3eeb0ef052da63da5",
        "fe1f7017617d1e8b4b68cac15bf659adc88790b2"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Wed Feb 20 20:33:36 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 20 20:33:36 2019 +0000"
      },
      "message": "Merge \"liblog: add stubs variant\""
    },
    {
      "commit": "fe1f7017617d1e8b4b68cac15bf659adc88790b2",
      "tree": "ed6fbe52d0141f338cf7b54b554572f9b05c1935",
      "parents": [
        "86f38d56b8c9e8a6d79d7f0871214b3a8002c9db"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Fri Feb 08 11:55:36 2019 -0800"
      },
      "committer": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Wed Feb 20 12:32:12 2019 -0800"
      },
      "message": "liblog: add stubs variant\n\nEnsure that only the symbols in liblog.map.txt can be used by the\nplatform.\n\nBug: 123349183\nTest: build\nChange-Id: I99ae5d0e8ba8f5061ec20701c941d861c9eb615d\n"
    },
    {
      "commit": "14efb903bbddbba5358cd0b3eeb0ef052da63da5",
      "tree": "be481a517fc593e0853a41066e467223c9e7c817",
      "parents": [
        "1cae1b0f811781fa18f754ade9f97bf84d8a2e30",
        "137e0308b70e35ebf6aaf6d04f0babbb971f7dd0"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 20 18:12:27 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 20 18:12:27 2019 +0000"
      },
      "message": "Merge \"Add the \u0027unrestricted\u0027 config section for vndk_lite devices\""
    },
    {
      "commit": "137e0308b70e35ebf6aaf6d04f0babbb971f7dd0",
      "tree": "ac9dd3fe5a4ba691abaa828299f51db9709a7c81",
      "parents": [
        "2baecf3c8fc353485b8a789d708bf3017317cb4f"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Feb 20 16:43:22 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Feb 20 16:43:22 2019 +0900"
      },
      "message": "Add the \u0027unrestricted\u0027 config section for vndk_lite devices\n\nThis is essentially the same change as\nbcb5ba75a5b4af91549d65631c123932faf5a263\nfor ld.config.vndk_lite.txt.\n\nBug: 124789446\nTest: atest CtsBionicTestCases on marlin\nChange-Id: I6b65ec4df1626d625975c9834bf96ac9ff6cc3f3\n"
    },
    {
      "commit": "ff67ef3c7d03f2b40daa86a17d6ba33168492880",
      "tree": "f5298bd6a54bc1f672671accf5c62ee15ab1bd2a",
      "parents": [
        "3ea374f54ca152e9df7cef46435d64745de69c87"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Feb 19 21:32:07 2019 +0000"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Feb 20 01:10:06 2019 +0000"
      },
      "message": "Expose libandroidicu to llndk namespace\n\nBug: 124772622\nTest: Treehugger\nChange-Id: If936eb377c7f0994a9225b8099a672addb2f9ed6\n"
    },
    {
      "commit": "e8510cec19bd9dc01f8a82f56328131cdf0c9b68",
      "tree": "6935908651e1765c91f650aa078be1fb90c9a9b8",
      "parents": [
        "ce912aadda68e6f3f4261d78bb9564cdad7513ba",
        "124a4bc791ace2c9d4c7ce6225f7ebace758dd71"
      ],
      "author": {
        "name": "Gavin Corkery",
        "email": "gavincorkery@google.com",
        "time": "Tue Feb 19 19:44:13 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 19 19:44:13 2019 +0000"
      },
      "message": "Merge \"Rename data/staging to data/pkg_staging.\""
    },
    {
      "commit": "124a4bc791ace2c9d4c7ce6225f7ebace758dd71",
      "tree": "83f1c3bba4739abe36c828bb60ef6d427aa12ba1",
      "parents": [
        "f80c326d2e90c648196e9da5b536fa382b1ee7ad"
      ],
      "author": {
        "name": "Gavin Corkery",
        "email": "gavincorkery@google.com",
        "time": "Fri Feb 15 15:38:46 2019 +0000"
      },
      "committer": {
        "name": "Gavin Corkery",
        "email": "gavincorkery@google.com",
        "time": "Tue Feb 19 15:46:22 2019 +0000"
      },
      "message": "Rename data/staging to data/pkg_staging.\n\nTest: Build and flash, atest apex_e2e_tests\nFixes: 122999313\nChange-Id: I878ee41f804956ee7533d64e844ce98e5a8afacc\nMerged-In: I878ee41f804956ee7533d64e844ce98e5a8afacc\n"
    },
    {
      "commit": "ce912aadda68e6f3f4261d78bb9564cdad7513ba",
      "tree": "8886abc2c315d6fe5981eddcb1f03150f02131f4",
      "parents": [
        "f80c326d2e90c648196e9da5b536fa382b1ee7ad",
        "785ba2e68ee2ded4c04c2d0433db2bea84526ab6"
      ],
      "author": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Tue Feb 19 10:14:31 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 19 10:14:31 2019 +0000"
      },
      "message": "Merge changes from topic \"dup_icu4c\"\n\n* changes:\n  Linker namespace changes for moving ICU4C to APEX\n  Remove the public libs in runtime namespace\n"
    },
    {
      "commit": "acfb705603c966dfb38c8577f9a6967ba01eff31",
      "tree": "6f896f7475ed1129efb693d7cf836c117b3c3ceb",
      "parents": [
        "024e4428124d6d357ff53d681d7f1d706987bd21",
        "d540e527e18f6dba0413c7f754f85e5062f125d7"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Sat Feb 16 17:53:53 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 16 17:53:53 2019 +0000"
      },
      "message": "Merge \"Export init.environ.rc in early-init instead of init\""
    },
    {
      "commit": "d540e527e18f6dba0413c7f754f85e5062f125d7",
      "tree": "6ff98e0eca80e9e3289c0b287367d875ec62faff",
      "parents": [
        "941cb7606c5213468e1c413277c329fdd273af5c"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Fri Feb 15 15:55:18 2019 -0800"
      },
      "committer": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Fri Feb 15 15:55:18 2019 -0800"
      },
      "message": "Export init.environ.rc in early-init instead of init\n\nNow that we always have system mounted early, we\u0027re starting to load\nvarious daemons during the `init` trigger and these daemons need the\nenvironment set up from init.environ.rc, so we move it to early-init.\n\nThis shouldn\u0027t need to go any further earlier in the future, since\nnothing besides ueventd should ever start in early-init.\n\nTest: systems boot, early daemons get right environment\nChange-Id: I02f425a1500377c5de3427afa7872073e77a066f\n"
    },
    {
      "commit": "d8b07f8c054ccd10bb18b8141896532e9ea14272",
      "tree": "1f3f1bdeb9376b8a5e8bafeebda4aa41bea34397",
      "parents": [
        "af0c58f12d22ff3aa8ecfed1f93834b99502f0fa"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Feb 15 15:20:59 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Feb 15 15:20:59 2019 +0900"
      },
      "message": "Replace bionic-unit-tests with CtsBionicTestCases\n\nBug: 124437796\nTest: monitor treehugger\nChange-Id: I8bf8d1bb1af3f4ccfca434846adcc1f4eda3fb69\n"
    },
    {
      "commit": "98a61dd583ab7f78b2de0fb38a2edb453d6e208a",
      "tree": "c5f458945033483a44737581e98c22a202039919",
      "parents": [
        "cb13a7766e8eb8393a6ffc6813e7d7686fc9bd4a"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Feb 08 12:34:48 2019 -0800"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Feb 14 16:06:49 2019 -0800"
      },
      "message": "Move rootdir/*.json to libprocessgroup\n\nThey are installed to /system/etc, not /. Hence, move\nout of rootdir/ and move into the code that parse these\nfiles (i.e. libprocessgroup).\n\nAlso, Android.mk-\u003ebp.\n\nTest: builds\n\nChange-Id: I1763c26f81ae51ee159552e39d252fd643c35b94\n"
    },
    {
      "commit": "d032a92c04c31490ff172d511a60a958f021a311",
      "tree": "5f5421f2ccfba072ba2cfde7bca1a267bf9297a9",
      "parents": [
        "612a6d6ba328a56c927875d44c3d3b04e032c3dd"
      ],
      "author": {
        "name": "Suren Baghdasaryan",
        "email": "surenb@google.com",
        "time": "Tue Feb 12 18:20:38 2019 -0800"
      },
      "committer": {
        "name": "Suren Baghdasaryan",
        "email": "surenb@google.com",
        "time": "Thu Feb 14 17:08:40 2019 +0000"
      },
      "message": "Fix cgroup support for recovery mode\n\nIn recovery mode a separate set of cgroups should be mounted. Add a\ncgroups.recovery.json file to describe cgroups mounted during recovery.\nChange cgroups descriptor parset to allow cgroups and cgroups2 sections\nto be omitted.\n\nBug: 124270406\nTest: \"adb reboot sideload; adb devices\" shows \u0027sideload\u0027 as expected\n\nChange-Id: Ic32bd2b4612ec8390064f87d4655d1bd1183d741\nSigned-off-by: Suren Baghdasaryan \u003csurenb@google.com\u003e\n"
    },
    {
      "commit": "785ba2e68ee2ded4c04c2d0433db2bea84526ab6",
      "tree": "0b3390c0297c4cfb6cf5406496685bddd73e3fad",
      "parents": [
        "f70a2fe4c1149ba94105b1ed64903f0d6758b2cc"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Jan 15 18:04:56 2019 +0000"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Thu Feb 14 10:42:27 2019 +0000"
      },
      "message": "Linker namespace changes for moving ICU4C to APEX\n\nlibandroidicu is used by various libraries, e.g. libxml2, minikin.\nThus, expose libandroidicu to default namespace.\n\nlibpac is only used by libjni_pacprocessor (part of framework).\n\nlibicuuc, libicui18n are not exposed to default namespace,\nbecause everyone else, except app, should use libandroidicu.\nThey are exposed to classloader namespace from runtime namespace\nvia the work done in libnativeloader in http://r.android.com/887453\nb/120786417 has more details about these 2 libraries.\n\nBug: 120659668\nTest: m droid\nChange-Id: I2cd3378f1eb94b7bb1c942738b59d7e577a5f8f0\n"
    },
    {
      "commit": "ebadad5c56d1a14b35b4f4128bb6f618a4f65e31",
      "tree": "4d9b90a268bfd9c33bb5c6edf5e5a8f3c88be62f",
      "parents": [
        "48c6d139b303081fd75c4c787c0649a346b9af5a",
        "8011f03eb2eb428123bfe5e4940ed9acd164cc7b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 14 00:11:36 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 14 00:11:36 2019 +0000"
      },
      "message": "Merge \"Add TEST_MAPPING for system/core/rootdir/etc\""
    },
    {
      "commit": "7f77dbfe64100e31e16e69a5bb5912d50a7c4962",
      "tree": "6882d5e8b15224ea9ba461287de35352a6f63e3e",
      "parents": [
        "18de13503158e2b2d8892fd44372b53012a0b7c2"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Jan 29 18:19:17 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Feb 13 15:10:11 2019 +0000"
      },
      "message": "Add compat symlinks into the Runtime APEX for the ART binaries.\n\nThis is a precaution in case there are dependencies on the binaries in the\nold location. b/124106384 tracks eliminating them (if any).\n\nTest: Flash and check symlinks are there with adb shell ls -l system/bin\nTest: adb shell system/bin/\u003cbinary\u003e\nBug: 113373927\nBug: 124106384\nChange-Id: Ib4102fe55117611f68184102e68a10ea47de0065\n"
    },
    {
      "commit": "18de13503158e2b2d8892fd44372b53012a0b7c2",
      "tree": "d1b3b70f1225e6845de4c66302eaf273c573c8f2",
      "parents": [
        "68c5ce22fb7cf377d855086f96e0280efaac5891",
        "bcb5ba75a5b4af91549d65631c123932faf5a263"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Feb 13 10:32:29 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 13 10:32:29 2019 +0000"
      },
      "message": "Merge \"Introduce a separate linker config section for native tests.\""
    },
    {
      "commit": "8011f03eb2eb428123bfe5e4940ed9acd164cc7b",
      "tree": "e3401df1eab735d72bbe53f9693a5ca01d8eb586",
      "parents": [
        "4b6b7b6715fbfc2d152bc8ad34f5d81a49b9cd54"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Feb 13 16:40:47 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Feb 13 16:40:47 2019 +0900"
      },
      "message": "Add TEST_MAPPING for system/core/rootdir/etc\n\nbionic-unit-tests runs when one of the linker config files is changed.\n\nTest: N/A\nChange-Id: I8af1a9728dab4492fe34a3b4daab9c5f9973d84f\n"
    }
  ],
  "next": "8540f508874043bf83d0bac1a8735148ddbb3879"
}
