)]}'
{
  "log": [
    {
      "commit": "8ca3d7a4830843402b0b8b9fe31f44484b72e107",
      "tree": "51d8841f9a04af5fd14d04a149f2717888d5e5a9",
      "parents": [
        "0b3cac182ae7cb62b7c548b213d5cb5ff74a318e"
      ],
      "author": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Fri Nov 26 15:18:24 2021 +0000"
      },
      "committer": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Wed Dec 08 15:04:58 2021 +0000"
      },
      "message": "Revert \"Use stamp file rather than grouped targets for TF-A.\"\n\nThis reverts commit 17a8b9700b06e885e5eba17215c7e2103e61b401.\n\nReason for revert: With https://android-kvm-review.googlesource.com/c/prebuilts/+/2640 and related changes we now use a more recent version of make and can use grouped targets.\n\nChange-Id: I23c839a8590de3e7ce536721cf5561dfb82b1cef\n"
    },
    {
      "commit": "0b3cac182ae7cb62b7c548b213d5cb5ff74a318e",
      "tree": "0be3de2c97d8a086fecd5671c55aca0cee66da22",
      "parents": [
        "9cc1f7229e079a4cf3ebbc8c419ee6f2c234f4be"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Dec 08 11:29:19 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Dec 08 11:29:19 2021 +0000"
      },
      "message": "Makefile: Use FORCE instead of PHONY for wildcard targets\n\nPHONY does not support wildcards. Make the catch-all target depend on an\nunsatisfiable target instead. This was causing problems with targets\nthat match a file name, like \u0027linux\u0027.\n\nTest: make linux\nChange-Id: I306a94184f143f8f626d08eeb57fa2e561a884b5\n"
    },
    {
      "commit": "9cc1f7229e079a4cf3ebbc8c419ee6f2c234f4be",
      "tree": "2af0640a03e55402ae36ef43ba03882643603f02",
      "parents": [
        "6085335a34a2316587212e063e6c17afe6a8677c"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Dec 08 11:26:35 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Dec 08 11:26:35 2021 +0000"
      },
      "message": "Makefile: Rename default target in proxy Makefile\n\nThe default target in Makefile.root is called \u0027default\u0027, while the one\nin the proxy Makefile is called \u0027all\u0027. This was causing unexpected\nbehaviour.\n\nTest: make\nChange-Id: I69103036d62721c739e3a3b6ea22367000668bc8\n"
    },
    {
      "commit": "6085335a34a2316587212e063e6c17afe6a8677c",
      "tree": "389bc1b6c6bc91ab6eca54fe407641a3a6e4c161",
      "parents": [
        "c0edf74a195a2b7b1ddd041fded30d1c1f0ecb2c"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 15:17:14 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 15:17:14 2021 +0000"
      },
      "message": "Fix CROSS_COMPILE of U-boot\n\nU-boot was given a fixed CROSS_COMPILE that does not match the one used\nby GCC 9.2. Use the UBOOT_TARGET variable instead.\n\nTest: make test\nChange-Id: I62c1cc0bec65a7c380b2071beddfa88ef8b3238d\n"
    },
    {
      "commit": "c0edf74a195a2b7b1ddd041fded30d1c1f0ecb2c",
      "tree": "e8927b3469c53df1f97c1acd6fbe7a5464e20fa1",
      "parents": [
        "7d04ea4b7e243be214420dd5e540719280a2e3f5"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 13:26:37 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 13:32:49 2021 +0000"
      },
      "message": "Add proxy root Makefile\n\nSome systems come with an old version of Make that is not compatible\nwith the projects built in this repo. To work around this issue, a\nprevious CL moved the root Makefile to Makefile.root, and this CL adds\na proxy Makefile that forwards all calls to Makefile.root run with\na prebuilt of GNU Make.\n\nTest: make test\nChange-Id: I1ac0bfd2ab13971dfb1141e7c49491da47c234f3\n"
    },
    {
      "commit": "7d04ea4b7e243be214420dd5e540719280a2e3f5",
      "tree": "262c612c77474e2fcb1b5c2830c98e8e681b7038",
      "parents": [
        "340eadc4d7d036c21ab881f3717e4adeea7ac9fa"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 13:25:56 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 13:32:34 2021 +0000"
      },
      "message": "Rename Makefile to Makefile.root\n\nSome systems come with an old version of Make that is not compatible\nwith the projects built in this repo. To work around this issue, we will\nadd a proxy Makefile that will forward all calls to the real root\nMakefile. As a first step, this CL moves Makefile to Makefile.root.\n\nWarning: By itself this CL will break the build because temporarily\nthere is no root Makefile. The renaming was split off from the\nsubsequent CL to preserve the history of the file.\n\nTest: n/a (does not build)\nChange-Id: Id70c84a41318792a61b98fd23ea75111c2ba8e15\n"
    },
    {
      "commit": "340eadc4d7d036c21ab881f3717e4adeea7ac9fa",
      "tree": "0c689d21260b85a7ac5c48dc8153296aab5cb1a7",
      "parents": [
        "27a95b4df599fe20ba6f06cb66894271ba17d369"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 11:54:33 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 13:25:11 2021 +0000"
      },
      "message": "Add rule to build Make and copy to prebuilts\n\nTo work around issues with legacy Make versions on some systems, add a\nrule to build Make and copy it into the prebuilts directory. This\ncreates a static build and will be used as the main instance of Make.\n\nTest: make $PWD/prebuilts/linux-x86/make\nChange-Id: I99a3d90fa7c75daac64f28d9c0b4a21143be7363\n"
    },
    {
      "commit": "27a95b4df599fe20ba6f06cb66894271ba17d369",
      "tree": "b470008de21539f99e3d727a7660629b5d47e81d",
      "parents": [
        "de28e7ee222b4e62f88b42ac7a3d594bee2edf71"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 11:56:08 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 12:03:11 2021 +0000"
      },
      "message": "Revert \"Print version of Make\"\n\nThis reverts commit de28e7ee222b4e62f88b42ac7a3d594bee2edf71. It was\nonly needed for debugging.\n\nChange-Id: I3d55659b53163741515a15623227b16a701f4f12\n"
    },
    {
      "commit": "de28e7ee222b4e62f88b42ac7a3d594bee2edf71",
      "tree": "7e0d9d2a16969e8a4785e15dd07b7f5ca8b48267",
      "parents": [
        "17a8b9700b06e885e5eba17215c7e2103e61b401"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 09:44:14 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 24 09:45:48 2021 +0000"
      },
      "message": "Print version of Make\n\nPrint a warning with the version of Make used by the system to help\ndebug/reproduce Makefile issues.\n\nChange-Id: Ia64e607d2b258044e3bfb2a9b443e59b123daad4\n"
    },
    {
      "commit": "17a8b9700b06e885e5eba17215c7e2103e61b401",
      "tree": "b470008de21539f99e3d727a7660629b5d47e81d",
      "parents": [
        "04afce1941f4103b88854cd95788b7978149acbc"
      ],
      "author": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Fri Nov 19 17:35:39 2021 +0000"
      },
      "committer": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Fri Nov 19 17:38:28 2021 +0000"
      },
      "message": "Use stamp file rather than grouped targets for TF-A.\n\nCI seems to have an old version of make which doesn\u0027t support grouped\noutputs.\n\nChange-Id: I4c693fff4641a68f938c142ca83f9a7d2672a73a\n"
    },
    {
      "commit": "04afce1941f4103b88854cd95788b7978149acbc",
      "tree": "b1e867ffb07ea5be116cceeabd4f94014ae74044",
      "parents": [
        "761e52934d7659784e7b5d222eccefb569ade7e1"
      ],
      "author": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Thu Nov 18 15:55:50 2021 +0000"
      },
      "committer": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Fri Nov 19 16:37:18 2021 +0000"
      },
      "message": "Load TF-A BL1 symbols in GDB.\n\nChange-Id: Ie650b2dc5e708579fd249a6e0200612e2bd3e5ed\n"
    },
    {
      "commit": "761e52934d7659784e7b5d222eccefb569ade7e1",
      "tree": "88c2b8055770c4eca12e355cf846ed2704ad34ad",
      "parents": [
        "b8b247c5a591cf869845d8838030fc338c25e1dc"
      ],
      "author": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Wed Nov 03 16:59:50 2021 +0000"
      },
      "committer": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Fri Nov 19 16:37:18 2021 +0000"
      },
      "message": "Run under TF-A for tests on QEMU.\n\nBug: 204895048\nChange-Id: I4c4dc6e7b6de4286cb11a4fae9d270aa3823d7b8\n"
    },
    {
      "commit": "b8b247c5a591cf869845d8838030fc338c25e1dc",
      "tree": "a9a9e463d23a80a6cf5ec4a69daef9f5be4b72a8",
      "parents": [
        "7cfab3398f565ec3713dd0daaa3fadfb5d901eb5"
      ],
      "author": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Fri Nov 12 14:10:34 2021 +0000"
      },
      "committer": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Thu Nov 18 13:25:07 2021 +0000"
      },
      "message": "Add rules to build TF-A.\n\nBug: 204895048\nChange-Id: I57963ab61dde99f01e96333630c675e6824373ab\n"
    },
    {
      "commit": "7cfab3398f565ec3713dd0daaa3fadfb5d901eb5",
      "tree": "2708094baaaf14409cb07db9636338bb864f7341",
      "parents": [
        "b048ff08651bb3f9883c7212bdd3cb5813ffba69"
      ],
      "author": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Tue Nov 09 14:35:55 2021 +0000"
      },
      "committer": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Tue Nov 16 14:56:05 2021 +0000"
      },
      "message": "Add rule to build U-Boot.\n\nBug: 204895048\nChange-Id: Ifd3f14b07010c998dbcc03a2c344e4dbbd40e136\n"
    },
    {
      "commit": "b048ff08651bb3f9883c7212bdd3cb5813ffba69",
      "tree": "1ec3c55dd68e4e8cf372527d08c5f137466b8662",
      "parents": [
        "b2162fe2f3e46611dca6471a167a9dff2768d469"
      ],
      "author": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Thu Oct 07 11:02:08 2021 +0000"
      },
      "committer": {
        "name": "Andrew Walbran",
        "email": "qwandor@google.com",
        "time": "Tue Nov 09 14:47:22 2021 +0000"
      },
      "message": "Explain how to connect GDB.\n\nChange-Id: Ibb374491a5445d183d3b22ece926d7d18d56e568\n"
    },
    {
      "commit": "b2162fe2f3e46611dca6471a167a9dff2768d469",
      "tree": "9d1fac5b7c2b58fe07fe3c98ae3f699641ea6369",
      "parents": [
        "a8f60f1772fa7e4da69f57aba1ecf9b6f9e13388"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Oct 04 18:52:09 2021 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Oct 05 12:42:57 2021 +0100"
      },
      "message": "Makefile: Run kselftests\n\nAdd rules and host-script for running Linux kselftests. Tests and test\nmodules are shared via virtio-9p and the name of the test to run is\npassed via command line. One Makefile target is added per unittest and\nthey can all be called with `make test-ksft`.\n\nBug: 193407077\nTest: make test-ksft\nChange-Id: Ic8d9d82b1649e5ca0f8a8510a879fbf0f419304b\n"
    },
    {
      "commit": "a8f60f1772fa7e4da69f57aba1ecf9b6f9e13388",
      "tree": "59abdf07a7c92a542fa807c17050b365422a0863",
      "parents": [
        "999861ae280a8f64a1aa2616f0637d194094014c"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Oct 04 18:41:47 2021 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Oct 05 12:42:57 2021 +0100"
      },
      "message": "Makefile: Add rules for building kselftests\n\nLinux kselftests are userspace programs (with optional kernel modules)\nbuilt from the Linux codebase. Add rules for building these.\n\nBuilding these is a bit cumbersome because:\n  * cross-compiling with Clang is not supported, and\n  * building out-of-tree still clobbers the source directory.\n\nBecause of these, we use rsync to make a copy of the source directory\nand build the tests in-tree. Tests are rebuilt only if some files were\noverwritten by rsync (and a stamp file touched).\n\nWhen the kernel (and modules) are built with Clang, the userspace\nprograms are built with GCC. The config file for Clang is copied over\nand updated for GCC with `make olddefconfig`. This should preserve the\nsame configuration options.\n\nBug: 193407077\nTest: make kselftest\nChange-Id: I8e7fb0b39139f806c06b3847ce581389b2f1266c\n"
    },
    {
      "commit": "999861ae280a8f64a1aa2616f0637d194094014c",
      "tree": "1aabe2788dddad54229f0d6b5b4ace29f1d5297f",
      "parents": [
        "880a1be88020a5c525dd475fb557854445ac7336"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Oct 04 18:41:32 2021 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Oct 05 12:42:57 2021 +0100"
      },
      "message": "Makefile: Enable kselftest modules in .config\n\nAdd LINUX_MODULES variable that contains a list of Kconfig options that\nare to be enabled on top of defconfig.\n\nThis is needed to enable kernel modules used by kselftest. Normally this\nwould be done by running `make kselftest-merge` but that enables too\nmany options that we don\u0027t need, including many debugging features of\nthe kernel which make the tests timeout. Instead we will only enable the\nmodules/features that our selected tests need.\n\nBug: 193407077\nTest: make linux_modules\nChange-Id: Ia1a43ebb35e0710ee83e9605a2c8d324f0eb77d1\n"
    },
    {
      "commit": "880a1be88020a5c525dd475fb557854445ac7336",
      "tree": "4181c90986814b64513249b3c1e4ea9849b345be",
      "parents": [
        "f5d3276ae3dc3b644252050eed71dbefab2b6ee5"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Sep 30 13:13:15 2021 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Oct 05 12:27:49 2021 +0100"
      },
      "message": "Makefile: Build Linux modules\n\nSome Linux kselftests require a kernel module to exercise the\nfunctionality. Add build rules for building kernel modules and\ninstalling them into a folder that will be later shared with the\nQEMU VM. Changes are tracked and a stamp file is updated accordingly.\n\nBug: 193407077\nTest: make linux_modules\nChange-Id: Ia46b953c669b3f754dcb6a3cb7402b487efd0403\n"
    },
    {
      "commit": "f5d3276ae3dc3b644252050eed71dbefab2b6ee5",
      "tree": "b23d493e6274bcb4b96c5fbe4e8d333cc9031ec9",
      "parents": [
        "e7f36f1ab24f1533b4d65c016016c6911c628a39"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Aug 23 08:40:18 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Oct 05 12:24:52 2021 +0100"
      },
      "message": "Makefile: Rework toolchain logic to enable multi-toolchains\n\nWe want to allow building Linux, and potentially other projects, with\na wide range of toolchains to catch compiler problems during\ndevelopment. However, not all projects can be built with arbitrary\ntoolchains. Eg. kvm-unit-tests and u-boot don\u0027t build with gcc-5.1 but\nwe want to support it because that is the oldest toolchain supported by\nLinux.\n\nExtract the toolchain logic into toolchain.mk and wrap it with a\n`define_toolchain` function. The function takes a toolchain name and\na prefix, and defines variables with the given prefix that contain paths\nand information about the given toolchain. This way we can define a\ndifferent toolchains for Linux, KUT, u-boot, etc.\n\nMigrate existing projects to this setup.\n\nBug: 193407077\nTest: make test\nChange-Id: I625ba13400be3c7b9ca3204cb7615fa2c000944a\n"
    },
    {
      "commit": "e7f36f1ab24f1533b4d65c016016c6911c628a39",
      "tree": "8165949b741f712db6f83a7990aec98df3c841c0",
      "parents": [
        "ac97c14826a21686d4e6cc66290f577fdf49b5ca"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Sep 29 13:37:51 2021 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Oct 04 18:59:50 2021 +0100"
      },
      "message": "Makefile: Remove U-boot rules\n\nBuilding u-boot in the android-kvm repo is deprecated (we use the AOSP\nbuild scripts now), so remove the redundant build rules.\n\nTest: make test\nChange-Id: I006c7c6d8927867489cd1615dfe5ed78babd45a9\n"
    },
    {
      "commit": "ac97c14826a21686d4e6cc66290f577fdf49b5ca",
      "tree": "1a4e4b46c4a6c474d318b3c8b5eb6cb4a54f637a",
      "parents": [
        "daafd7cadaf4ff8c6eb3b2612f95c1d52b6f0d5b"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Sep 29 15:30:00 2021 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Oct 04 18:54:39 2021 +0100"
      },
      "message": "Add support for virtio-9p file sharing\n\nTo avoid the need for packaging files as a disk image, add a new flag to\nrun_qemu.sh which will share a folder with the QEMU-emulated VM. Folders\nare shared as read only.\n\nTest: ./build/aarch64/run_qemu.sh -D tag:path\nChange-Id: I885f91f3764c481b2c284d97c882e86af3b3dc11\n"
    },
    {
      "commit": "daafd7cadaf4ff8c6eb3b2612f95c1d52b6f0d5b",
      "tree": "2e98adafcb7d7819c676cbe2af769c2fcf9ffc3a",
      "parents": [
        "6b550739cd5f334bacd877149dd391b28c3fca2f"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Sep 29 12:50:28 2021 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Oct 04 18:53:21 2021 +0100"
      },
      "message": "run_test.sh: Match color coding for PASS/SKIP/FAIL\n\nThe run_test.sh script greps for PASS/SKIP/FAIL messages in the test\noutput. It must avoid matching other instances of these words, eg.\nFAILED,[SKIP], etc. Currently it only avoids a colon afterwards but this\nneeds to be generalized to use with non-kvm-unit-tests tests, like\nkselftests. Since other instances never use coloring, at least for now,\nmatch on the \\e escape byte instead.\n\nBug: 193407077\nTest: make test\nChange-Id: I8fc4450c3dcbb01784fca26416f6711cd9ebedd7\n"
    },
    {
      "commit": "6b550739cd5f334bacd877149dd391b28c3fca2f",
      "tree": "5c64e618dfc375fb37bbac4e28366cee7f2f9068",
      "parents": [
        "58b789a24fff73140fd2381a364fa5b27febbec1"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Sep 29 15:29:42 2021 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Oct 01 11:56:22 2021 +0100"
      },
      "message": "Bump QEMU to 6.1.0, enable virtfs\n\nUpdate to latest stable version and also enable virtfs, aka virtio-9p.\nThis is a feature for sharing files between the host and emulated guest,\ne.g. useful as a replacement for packaging files during build as ext4\nimages (which has problems on our CI).\n\nTest: make test\nChange-Id: I6b9bf94c90154ae80241684c632e2555cf5874a5\n"
    },
    {
      "commit": "58b789a24fff73140fd2381a364fa5b27febbec1",
      "tree": "088906a23086507f8a8bcf86723d3fe9602968df",
      "parents": [
        "a4c90baf09d766fec45e4834f5540f9d92e86dc6"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Mon Sep 27 13:01:17 2021 +0200"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Mon Sep 27 13:26:07 2021 +0200"
      },
      "message": "Makefile: Use (again) pre-built crosvm.ext4\n\nUse the provided pre-built crosvm.ext4 if the user has not supplied a\nCROSVM_TAR_GZ. This avoids the need for triggering a re-build of the\nimage from an archive as that would rely on a mkfs flag not supported by\nsome build servers.\n\nChange-Id: Iab0c0272e03c99606b6d7f741c1f7a670363c096\n"
    },
    {
      "commit": "a4c90baf09d766fec45e4834f5540f9d92e86dc6",
      "tree": "29d314c0c435140d253c2e75a4259df9fbbe7155",
      "parents": [
        "609555c712b231b8fbc1139cfdc54e5b5f29a1f2"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Sep 22 14:28:04 2021 +0200"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Fri Sep 24 11:29:05 2021 +0200"
      },
      "message": "Makefile: Add support for custom crosvm archives\n\nAllow the user to pass a custom cvd-host_package.tar.gz to generate the\ncrosvm image instead of relying on the pre-built version, and\nautomatically package it into its own image. Use a file distinct from\nthe image packaging the pre-built archive to avoid confusing Make. The\nuser is expected to use it as follows:\n\n    make CROSVM_TAR_GZ\u003d\u003c...\u003e/cvd-host_package.tar.gz test-crosvm-X\n\nWhich allows running cutting-edge versions of crosvm and friends in this\ntesting infrastructure. To do so, the archive should be generated from\nthe Android source:\n\n    lunch aosp_cf_arm64_phone-userdebug\n    m hosttar\n\nand CROSVM_TAR_GZ can then be set to\n\n    $(AOSP)/out/soong/host/linux_bionic-arm64/cvd-host_package.tar.gz\n\nNote that successive calls to make using the same CROSVM_TAR_GZ will\nonly conditionally re-build the image if the archive has changed. In the\nunlikely case where more than one custom archive is intended to be used,\nthe user is expected to manually manage the images.\n\nBug: 198568262\nTest: make CROSVM_TAR_GZ\u003d\u003c...\u003e\nChange-Id: Idf747ddc7a2bf81ae5ee7b63061bdcea2300a69b\n"
    },
    {
      "commit": "609555c712b231b8fbc1139cfdc54e5b5f29a1f2",
      "tree": "e61d53d3c900f53fb2e942200a64922d43228b2f",
      "parents": [
        "cac169f944f0eeb4862d1a2b77a40d9cca1a9ab2"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Sep 22 14:13:20 2021 +0200"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Fri Sep 24 11:27:10 2021 +0200"
      },
      "message": "Makefile: Build crosvm image from pre-built tar.gz\n\nBuild the crosvm image from the cvd-host_package.tar.gz archive produced\nby the Android build system. This allows Make to track the dependency\nchain between files (instead of relying on directories), which can then\nbe expressed from end-to-end:\n\n    cvd-host_package.tar.gz -\u003e crosvm.ext4 -\u003e test-crosvm-*\n\nso that tests requiring the image are now able to automatically re-build\nit when the underlying archive has changed.\n\nSupport the existing update-prebuilts PHONY target by providing a\ncorresponding target, used to download the latest version of the\npre-built archive from the Android build servers.\n\nBug: 198568262\nTest: make update-prebuilts-crosvm\nTest: make test-crosvm-helloworld\nChange-Id: I9325b21cb49a3df9667686b1e0404c49f40c62b1\n"
    },
    {
      "commit": "cac169f944f0eeb4862d1a2b77a40d9cca1a9ab2",
      "tree": "7b595df12ef9e258286af9cc317242ca1ffc8028",
      "parents": [
        "aa7c390fb96137f3e72569f7c040a13a83bcb489"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Sep 22 09:38:27 2021 +0200"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Fri Sep 24 11:09:14 2021 +0200"
      },
      "message": "download-aosp.sh: Add --no-extract/-X\n\nAdd a flag that prevents the script from extracting the downloaded\narchive, allowing the caller to handle it themselves. When this new flag\nis not passed, the behavior of the script remains the same.\n\nBug: 198568262\nTest: build/cuttlefish/download-aosp.sh -X \u003c...\u003e\nChange-Id: I6853254b241e0711400b1d4e826267fb9610f8da\n"
    },
    {
      "commit": "aa7c390fb96137f3e72569f7c040a13a83bcb489",
      "tree": "bb5d195a372e65781c07f3d847f4ece15aa34071",
      "parents": [
        "53a7030e40cf53fa8827adec9d4c05230e6cc7a5"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Sep 22 14:46:06 2021 +0200"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Sep 22 15:48:04 2021 +0200"
      },
      "message": "Makefile: Add support for custom VM images\n\nAdd a Make flags allowing the user to pass a custom VM image. If not\npassed, the infrastructure defaults to using the host image, the\nprevious behavior. This will become necessary when booting VMs in\nprotected mode as pvmfw will expect an AVB-signed image (while the host\nimage is not).\n\nBug: 198568262\nTest: make VM_IMAGE\u003d\u003c...\u003e test-crosvm\nChange-Id: I140d8632128a9bf0ea816d54790b5e3e25a6585a\n"
    },
    {
      "commit": "53a7030e40cf53fa8827adec9d4c05230e6cc7a5",
      "tree": "4f01fc1a13836adbb04557b9bec1c06415838533",
      "parents": [
        "94acb6f3cb9e7011a01d5a1679bdb88df6b93df7"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Aug 20 13:32:11 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Aug 25 16:06:09 2021 +0000"
      },
      "message": "Makefile: Error on TOOLCHAIN\u003dgcc-4.9\n\nGCC 4.9 has been removed from the AOSP repo. We marked it deprecated\na while back but now it really doesn\u0027t work.\n\nBug: 193407077\nTest: TOOLCHAIN\u003dgcc-4.9 make linux_image\nChange-Id: I2fe9838b4f87919867adc5c61084ce68c0af7962\n"
    },
    {
      "commit": "94acb6f3cb9e7011a01d5a1679bdb88df6b93df7",
      "tree": "d76c21cca5fe1177b90f5b9167c9da3435ffaee3",
      "parents": [
        "ba22fba457d9c72316168102b681de304d4d5dd9"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Aug 23 08:35:03 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Aug 25 16:05:56 2021 +0000"
      },
      "message": "Makefile: Use Bash as Make shell\n\nThe default is /bin/sh which can differ among individual workstations.\nExplicitly pick Bash to avoid compatibility issues and allow using its\nnon-POSIX features.\n\nBug: 193407077\nTest: make test\nChange-Id: I6832c3e5da774d98952ff82c13c95cb320b7ae8f\n"
    },
    {
      "commit": "ba22fba457d9c72316168102b681de304d4d5dd9",
      "tree": "2cedf06e6b115419bc90b4d25cf004dbde6d4498",
      "parents": [
        "4768c6c4ad49c015fabe8928c9c767084153b6dd"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Mon Aug 09 16:06:42 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Thu Aug 19 14:35:00 2021 +0200"
      },
      "message": "Makefile: Drop CROSVM_HELLOWORLD-pvmfw dependency\n\nRemove the Make dependency and stop passing the pvmfw binary to\nrun_test.sh during the CROSVM_HELLOWORLD_TESTS as those do not use\n--protected-vm mode and therefore do not need nor use the pvmfw.\n\nBug: 195395681\nTest: make test-crosvm-helloworld\nChange-Id: Id5ed74c12864d69ad623397360f1e7c6a7f85dd7\n"
    },
    {
      "commit": "4768c6c4ad49c015fabe8928c9c767084153b6dd",
      "tree": "30bbaba1b4df01c139aca88312cac57cf821de0f",
      "parents": [
        "8b4d97e6117677039993390a1860dc02da6a3b89"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Mon Aug 02 09:53:29 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Thu Aug 19 14:35:00 2021 +0200"
      },
      "message": "Makefile: Support VERBOSE,QUIET,GDB in RUN_TEST\n\nAllow the user to trigger a \"verbose\" test (in the sense of\nrun_test.sh\u0027s -v) through VERBOSE and/or to avoid redirecting the test\u0027s\noutput to a log file through QUIET and/or to allow a GDB connection\nthrough GDB:\n\n    make VERBOSE\u003d1 test-boot              # prints commands\n    make QUIET\u003d0 test-crosvm-helloworld   # prints VM outputs to screen\n    make GDB\u003d1 test-boot                  # QEMU waits for GDB\n    make QUIET\u003d0 VERBOSE\u003d1 test-boot      # they can be combined\n\nBug: 195395681\nTest: make VERBOSE\u003d\u003c?\u003e QUIET\u003d\u003c?\u003e GDB\u003d\u003c?\u003e test-boot\nChange-Id: I73b860d141b663cb22d4e23dc927f6fadc57e31b\n"
    },
    {
      "commit": "8b4d97e6117677039993390a1860dc02da6a3b89",
      "tree": "0bf487495dfa8c81461ff5da037c36e7f9f09603",
      "parents": [
        "253cd13f44a2247e0f7a93c577152b31a6bece70"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Mon Aug 02 09:50:42 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Thu Aug 19 09:19:57 2021 +0200"
      },
      "message": "run_test.sh: Pass VERBOSE (-v) on to run_qemu.sh\n\nPass -v to run_qemu.sh if the user requested it as it is likely that,\nby doing so, they intended to be informed of all the operations\nperformed, not just what run_test.sh itself did.\n\nBug: 195395681\nTest: ./run_test.sh -v [...]\nChange-Id: Ifa61176f6a7cc7fae557443737013767f276bac2\n"
    },
    {
      "commit": "253cd13f44a2247e0f7a93c577152b31a6bece70",
      "tree": "8dc31838768c5a0e760a39bc8a95cd1f76e8843d",
      "parents": [
        "4843686e67a923eba7752705f686decda5cb5176"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Mon Aug 02 08:49:39 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Thu Aug 19 09:19:47 2021 +0200"
      },
      "message": "Makefile: Replace functions by single RUN_TEST var\n\nUse a single RUN_TEST parametric variable to call the run_test.sh\nscript, similiarly to what is done for COMPILE.c in GNU Make. Rules\nusing that variable are then expected to specialize the various\nparameters it contains (RUN_TEST_SH, RUN_TEST_ARGS, RUN_TEST_QEMU_ARGS,\n...). This makes the code easier to extend to new test targets and more\nstraightforward to read through fewer indirections and intermediate\nvariables.\n\nBug: 195395681\nTest: make test\nChange-Id: I5cbddacc00ae9f2fa1f0004124c25d900ad6999c\n"
    },
    {
      "commit": "4843686e67a923eba7752705f686decda5cb5176",
      "tree": "e305f034b311aef5cd8124847b59a23fca6324a2",
      "parents": [
        "63d40877553a449781eedb77837af5e75f1a5247"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Fri Jul 30 16:34:25 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 18 18:40:31 2021 +0200"
      },
      "message": "Makefile: Group run_test.sh tests under TESTS\n\nList all test groups in a single TESTS variable for programmatic access.\n\nGroup all \u0027test: \u003ctest-group\u003e\u0027 rules into a single \u0027test: $(TESTS)\u0027.\n\nMake all TESTS depend on their required (host) KERNEL_IMAGE.\n\nNote that the \u0027test\u0027 target now directly depends on individual tests\ninstead of relying on the indirection of test-{boot,crosvm-helloworld}.\n\nNote that dynamically generated tests are not included in TESTS,\nalthough still marked as dependencies of \u0027test\u0027.\n\nBug: 195395681\nTest: make test\nChange-Id: I5740201824ab0d4e11c37229c170693d5d6008f2\n"
    },
    {
      "commit": "63d40877553a449781eedb77837af5e75f1a5247",
      "tree": "ed6124e9b3b364c6b30f0572e5dc73e97684fab4",
      "parents": [
        "d1813061373c76147455ac16f8561190eca92253"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Fri Jul 30 16:23:48 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 18 18:40:31 2021 +0200"
      },
      "message": "Makefile: Introduce TEST_LISTS and its single rule\n\nCreate a single \"display test list\" rule expecting a target-specific\nMake variable, LISTED_TESTS, in order to have the implementation in a\nsingle location.\n\nIntroduce the TEST_LISTS variable holding all targets to which the rule\ndescribed above applies. New test-list-* targets will be expected to add\nthemselves to that variable. By doing so, they will also be marked as\ndependencies of the test-list target.\n\nFix the bug in the existing test-list-{boot,crosvm-helloworld} recipes\n(now in a single location) where the shell variable was not properly\nescaped with a double-$.\n\nBug: 195395681\nTest: make test-list\nChange-Id: Ibe1da9bfc1c43e9214d5e3afea9f1b29c5e71ff6\n"
    },
    {
      "commit": "d1813061373c76147455ac16f8561190eca92253",
      "tree": "9f83a25fea2195f69a1d5ae1e682dd30ebbc187d",
      "parents": [
        "f73fcbd7f7c3b038ccebaf080a579b77eb9ce693"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Fri Jul 30 15:50:41 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 18 18:40:31 2021 +0200"
      },
      "message": "Makefile: Introduce KVM_MODES for generic rules\n\nExploit the \u003cprefix\u003e-\u003cmode\u003e target name pattern to synthesize the\nexisting rule triplets for test-crosvm-helloworld-{vhe,nvhe,pkvm} and\ntest-boot-{vhe,nvhe,pkvm} into two generic rules instead of 6.\n\nBug: 195395681\nTest: make test\nChange-Id: I2bc1d716ba7cbe98b9bb57465301b92381c1de20\n"
    },
    {
      "commit": "f73fcbd7f7c3b038ccebaf080a579b77eb9ce693",
      "tree": "464bd65f3772fd60f3aadb24ba3d01596644daee",
      "parents": [
        "5133e85d79a31d63cd35a6ae621f93de5b918f1a"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Fri Jul 30 15:37:10 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 18 18:40:31 2021 +0200"
      },
      "message": "Makefile: Rename targets test-crosvm-*-helloworld\n\nMove the \"KVM mode component\" of these Make target names to their ends\nso that they follow the format of the test-boot-* targets and allow for\neasier future processing.\n\nBug: 195395681\nTest: make test-crosvm-helloworld\nChange-Id: Ie8323123c1557c297f505c7a2c5283a5f83da1cc\n"
    },
    {
      "commit": "5133e85d79a31d63cd35a6ae621f93de5b918f1a",
      "tree": "77f1eaddb2a5deb2f78db5acd0bab47a428d6ff2",
      "parents": [
        "1df23ff938a4ecf3a262aad41195780488c60735"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Tue Aug 03 12:25:08 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 18 18:13:52 2021 +0200"
      },
      "message": "Makefile: Rework CUSTOM_KERNEL_IMAGE\n\nUse a conditional variable assignment instead of relying on setting an\nintermediate CUSTOM_KERNEL_IMAGE variable to conditionally create a rule\nfor KERNEL_IMAGE: if a custom KERNEL_IMAGE is passed, it should exist\nand if it doesn\u0027t, it is the responsibility of the user (not make) to\ncreate it beforehand.\n\nIntroduce a DEFAULT_KERNEL_IMAGE location and make a (non-conditionally\nexisting) rule create it from LINUX_MAKE. Note that, if later on we need\nto have a condition that would have checked CUSTOM_KERNEL_IMAGE, we will\nbe able to instead test ifeq($(KERNEL_IMAGE),$(DEFAULT_KERNEL_IMAGE)).\n\nDefine linux_image and KERNEL_IMAGE as targets of the same rule: this\nresults in make not calling the Linux build system if the image already\nexists, stopping tests from pointlessly spending 10+ seconds in the\nkernel build system every time they run. Of course, this also means that\nnew changes in the linux source will not be picked up by this top-level\nmake and that a user having changed the kernel source while an image of\nthe kernel exists will be expected to manually rebuild it (or simply\ndelete the existing image), which they could easily force through\n\n    make linux_image\n\nBug: 195395681\nTest: make KERNEL_IMAGE\u003d\u003c...\u003e test\nChange-Id: I3a8f512b35a2c6c85bb493a370c46e629232eea5\n"
    },
    {
      "commit": "1df23ff938a4ecf3a262aad41195780488c60735",
      "tree": "1d3dc208015481fb79a9f9938ad343a87fb2a7e9",
      "parents": [
        "5a99ea7f3aed2047b729c95e516765350d32153c"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Mon Aug 09 09:54:12 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 11 11:21:31 2021 +0000"
      },
      "message": "run_qemu.sh: Introduce KERNEL_PAD_SIZE\n\nName the magic constant 128*MiB and parametrize it to implement what the\ncomment above describes.\n\nChange-Id: I04437cc2abab20b13764561eec226100e8be85cc\n"
    },
    {
      "commit": "5a99ea7f3aed2047b729c95e516765350d32153c",
      "tree": "f346340ee0476e18a5309ca3c6b04b62f5fc64b0",
      "parents": [
        "554dfe3b5d3b6607503d3459fb48a16ac6b2f5b0"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Tue Jul 27 18:26:44 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 11 11:20:57 2021 +0000"
      },
      "message": "run_qemu.sh: Fix script for pVM mode\n\nFix the PVMFW DTS injected into the kernel\u0027s DT in order to:\n\n - have the region as a subnode of \u0027reserved-memory\u0027\n - mark the \u0027reserved-memory\u0027 with \u0027ranges\u0027 (required by the kernel)\n - have a \u0027#size-cells\u0027 of 2 (required by the kernel)\n - use the right \u0027compatible\u0027 field (required by pKVM)\n - mark the memory region as \u0027no-map\u0027 (required by pKVM)\n - provide a address without a leading \u00270x\u0027 (warning from dtc)\n\nFix the submitted PVMFW size to be page-aligned (required by pKVM).\n\nChange-Id: Ibaefe81ba5bc71e2a5c1f5ae5ac2ee326fe3672c\n"
    },
    {
      "commit": "554dfe3b5d3b6607503d3459fb48a16ac6b2f5b0",
      "tree": "f3501350f81df696ed067cf81b67c60def015d5a",
      "parents": [
        "0648a0fc2e933d1217a4665d3e6f7bf6012132b4"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Tue Jul 27 18:13:35 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 11 09:29:22 2021 +0000"
      },
      "message": "run_qemu.sh: Refactor pvmfw_overlay\n\nTo make the calling code clearer, decompose the 5-parameters function\ninto two steps: generating the DTS for PVMFW and injecting a DTS into an\nexisting DTB. This allows us to get rid of an intermediate file by using\ninter-function bash piping.\n\nMove the responsibility of hex-formatting addresses and sizes into the\nDTS function that requires it.\n\nRename ${QEMU_PATCHED_DTB} to the shorter ${DTB}.\n\nChange-Id: I10914391ca022a507e56cce855ec347b00838f9a\n"
    },
    {
      "commit": "0648a0fc2e933d1217a4665d3e6f7bf6012132b4",
      "tree": "e557c0c2767b141ade6dc44122b53827ef7d62e2",
      "parents": [
        "b3645a3b578b53ae6462df59138ca35efdd9d62a"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Tue Jul 27 17:41:21 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 11 09:26:09 2021 +0000"
      },
      "message": "run_qemu.sh: Add KERNEL_ADDR \u0026 page size utils\n\nIntroduce the KERNEL_ADDR and MAX_SUPPORTED_PAGE_SIZE variables and the\nalign_page_size convenience function.\n\nChange-Id: Ib71e1aed54f5d3388f5253aadaca4675b9f06c08\n"
    },
    {
      "commit": "b3645a3b578b53ae6462df59138ca35efdd9d62a",
      "tree": "269e08178afb08a5095b6b9c4a134353c802250d",
      "parents": [
        "a5866d58ed9b2109af498099deb96fb9e96e7391"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Tue Jul 27 17:36:30 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 11 09:26:09 2021 +0000"
      },
      "message": "run_qemu.sh: Use \u0027pvmfw\u0027 instead of \u0027template\u0027\n\nRename all variables using variations of \u0027template\u0027 to use the current\nterminology (\u0027pvmfw\u0027).\n\nChange-Id: Ia7e72aa9614f18491c7a1b241703e90adfbe4ec4\n"
    },
    {
      "commit": "a5866d58ed9b2109af498099deb96fb9e96e7391",
      "tree": "fd70caa3257c9a2340d63a77c8f00875e93b6fdf",
      "parents": [
        "2e8f998f4b3640b055723f95b790c4c24523a061"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Thu Jul 29 08:13:53 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Wed Aug 11 09:26:09 2021 +0000"
      },
      "message": "run_qemu.sh: Add format parameter to hex()\n\nAdd second (optional) parameter to hex() to control the format of its\noutput, which follows the typical printf-like formats. If not passed,\nthe function defaults to its previous behaviour by converting the input\nto hexadecimal and prepending the \u00270x\u0027 prefix.\n\nChange-Id: I24ab6ea2f002c67966e2cae43a6c00f82c38c2dc\n"
    },
    {
      "commit": "2e8f998f4b3640b055723f95b790c4c24523a061",
      "tree": "ac9d89b26604b9e51426ccc8389e8187fc0f68e1",
      "parents": [
        "20471213c470726893247a0327b4cc919d85b8e3"
      ],
      "author": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Tue Jul 27 15:19:02 2021 +0000"
      },
      "committer": {
        "name": "Pierre-Clément Tosi",
        "email": "ptosi@google.com",
        "time": "Tue Jul 27 15:27:09 2021 +0000"
      },
      "message": "Revert \"Refactor template/firmware bits of run_qemu.sh\"\n\nRevert commit 2d48885b67aa787a096a9ae3086ed0d7d9ece446 but keep the\nrenaming of the -T parameter (became -F) it introduced in order to avoid\nbreaking existing scripts.\n\nChange-Id: Idf380472575bdc390ac912f812199b3473430814\n"
    },
    {
      "commit": "20471213c470726893247a0327b4cc919d85b8e3",
      "tree": "d32bad502c135dd4d13706e8e6bd742357db5177",
      "parents": [
        "6761847dc34eafeda029239098334399fa2bd6b0"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue May 11 09:34:46 2021 +0100"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue May 11 09:34:46 2021 +0100"
      },
      "message": "Fix usage for KVM mode\n\nLowercase m is for memory, whereas mode is an uppercase M.\n\nChange-Id: I33bc4a785b3783ccb6bad727d5cc8d5f4c28ebca\n"
    },
    {
      "commit": "6761847dc34eafeda029239098334399fa2bd6b0",
      "tree": "a8363816676d0494cfbf762a1b9a0a618b432529",
      "parents": [
        "3aeba791b4d447621a571122d16335a681d23241"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Apr 27 11:56:35 2021 +0100"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Apr 27 13:13:14 2021 +0100"
      },
      "message": "Use latest GCC toolchain for all other than kernel\n\nWhen selecting the GCC toolchain, use the latest version available to us except\nfor the kernel. U-boot and kvm-unit-tests require more recent versions of GCC,\nand the purpose of the test with older toolchains is to test the kernel.\n\nChange-Id: I8f85ad4f8ec09be46d68c238f3c5ccbc88431178\n"
    },
    {
      "commit": "3aeba791b4d447621a571122d16335a681d23241",
      "tree": "003316e7f8ddc7080c9caa321cbc28551757cf2f",
      "parents": [
        "0eb07577363d9200593e6b4c74bae5ed4c6d34aa"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Apr 27 10:30:08 2021 +0100"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Apr 27 10:30:08 2021 +0100"
      },
      "message": "Bump Clang to clang-r416183b\n\nclang-r416183b is the one currently used by AOSP:\nhttps://android.googlesource.com/platform/prebuilts/clang/host/linux-x86/+/master/README.md\n\nChange-Id: I9b866c4292a4f85678433a545614d55853cfbcc5\n"
    },
    {
      "commit": "0eb07577363d9200593e6b4c74bae5ed4c6d34aa",
      "tree": "5b4afc2217a1b958b26585ca6cc051b09a51035f",
      "parents": [
        "51567b56cf64ad3878a4cb0b50668c7d8e02a5b4"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 30 13:52:33 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 30 14:08:58 2021 +0000"
      },
      "message": "Only increase SMP for CrosVM HelloWorld tests\n\nWe increased number of QEMU-emulated CPUs from 2 to 4 to increase\nchances of discovering concurrency issues but since Make runs `nproc`\njobs simultaneously, the system starts thrashing.\n\nReduce number of CPUs back down to 2 by default but keep 4 for CrosVM\nHelloWorld tests. This covers boot and spawning a guest VM, at least.\n\nChange-Id: Id45dd87ab94e6df4003443ea7f874157297f3779\n"
    },
    {
      "commit": "51567b56cf64ad3878a4cb0b50668c7d8e02a5b4",
      "tree": "8c2a4370b72a3586c710927da528b5c6fffb3632",
      "parents": [
        "dbd18a7668a31440c263329919f2ad6e0617b122"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 24 16:14:59 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 24 16:14:59 2021 +0000"
      },
      "message": "Fix run_test.sh failure logic\n\nThe script looks for PASS/SKIP/FAIL in the output and if found, it\nreturns the error code it got from QEMU. But a failing test still\nreturns zero because the emulation was sucessful.\n\nSplit grepping for PASS/SKIP and FAIL, and force a non-zero return code\nfor the latter.\n\nTest: make failing-test\nChange-Id: I62ba1ab522a9544024882e276161905f7cf84c1f\n"
    },
    {
      "commit": "dbd18a7668a31440c263329919f2ad6e0617b122",
      "tree": "e3b0054529865352f722b6bf3300e3b6f8d16154",
      "parents": [
        "0c576f89f27bac261d15ca1c89ff585ebc51f4e5"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 23 15:07:28 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 23 15:07:28 2021 +0000"
      },
      "message": "Bump Clang, use integrated assembler\n\nAOSP now builds with LLVM_IAS\u003d1. Let\u0027s do the same.\n\nTest: make test\nChange-Id: I85a9d72d6078ae643d81d58b09c2ad7ac9470c5a\n"
    },
    {
      "commit": "0c576f89f27bac261d15ca1c89ff585ebc51f4e5",
      "tree": "540e32dda8adac7b5b85f422c579dac0a9575628",
      "parents": [
        "490370a54cf2ce3a31b4126c8ab1602e20e27d79"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 11 11:48:02 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 11 11:48:23 2021 +0000"
      },
      "message": "Revert \"Switch nVHE tests to QEMU CPU max,sve\u003doff\"\n\nThis reverts commit acc332c5e9c85d849fc37703a22c00c9d47e425d.\nTests are taking longer and timing out.\n\nTest: make test\nChange-Id: Ifaabf05e543d596a748e913f9ade975d17594d3e\n"
    },
    {
      "commit": "490370a54cf2ce3a31b4126c8ab1602e20e27d79",
      "tree": "aca332884f49a809fece5988b768783ff3e9bdc7",
      "parents": [
        "be90d3ef6c602f24f2fa9cfb0f11fd2988f33086"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 10 22:55:02 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 11 10:55:49 2021 +0000"
      },
      "message": "Add boot tests\n\nCheck that the kernel boots and KVM booted in the expect mode.\nThis should help us catch issues with QEMU/kernel flags that select the\nvarious KVM modes.\n\nTest: make test, inspect logs\nChange-Id: I476f23aa9fde68fb6868c57d059cd85df68727e8\n"
    },
    {
      "commit": "be90d3ef6c602f24f2fa9cfb0f11fd2988f33086",
      "tree": "fb2415ad6484246d4ff1e2f45d9db961d21e79f5",
      "parents": [
        "4efc37a27e3aa45f67ad50c138e2448d2eacb52b"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 10 22:54:28 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 11 08:44:59 2021 +0000"
      },
      "message": "Simplify crosvm-helloworld test params\n\n-M is used three times\n\nTest: make test\nChange-Id: If2d1cafebb90136a8d0bf35e61e1983018839763\n"
    },
    {
      "commit": "4efc37a27e3aa45f67ad50c138e2448d2eacb52b",
      "tree": "2f16fec774e5e0f3301415ad363dce0f964c39cb",
      "parents": [
        "9b8abddb4bc4ecd2ba92d7ab4dcc7711e6e42ce8"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 10 22:53:36 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 11 08:44:36 2021 +0000"
      },
      "message": "Add run_qemu.sh option to append to kernel command line\n\nWill be useful for boot test.\n\nTest: manually invoke run_test.sh, check /proc/cmdline of host\nChange-Id: I7a322b59ed6977242f383e30bd1ff0a9d2c45df8\n"
    },
    {
      "commit": "9b8abddb4bc4ecd2ba92d7ab4dcc7711e6e42ce8",
      "tree": "01b013946ffc3b41f549fceed9ce19ee091c57d8",
      "parents": [
        "acc332c5e9c85d849fc37703a22c00c9d47e425d"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 10 22:52:12 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 10 22:52:12 2021 +0000"
      },
      "message": "Fix variable name in run_test.sh\n\nTop of the file declares KVM_MODE but code uses just MODE. Fix this.\nProblem only manifests itself if run_test.sh is invoked without -M.\nIn that case, MODE is undefined when referenced for the first time.\n\nTest: ./build/kvm-unit-tests/run_test.sh psci\nChange-Id: I2c042f1aa73da33ebb1a333bc79f9383f27dde82\n"
    },
    {
      "commit": "acc332c5e9c85d849fc37703a22c00c9d47e425d",
      "tree": "292d5c09aa41333520fba6fcb65a2946426c28d8",
      "parents": [
        "7dac2451b07045aedbd0883f7efb8f3e6ae7c2d2"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 10 22:14:57 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 10 22:14:57 2021 +0000"
      },
      "message": "Switch nVHE tests to QEMU CPU max,sve\u003doff\n\nNow that we can select nVHE using a command line flag, we can ditch\nthe cortex-a53 workaround for selecting nVHE and use CPU max.\nWe still need to disable SVE as KVM will refuse to boot in nVHE if the\nCPU supports it.\n\nTest: make test, check logs that vhe/nvhe/pkvm modes are correct\nChange-Id: Ifc13825e0e3abbe056064f7ccb4080ff207239f4\n"
    },
    {
      "commit": "7dac2451b07045aedbd0883f7efb8f3e6ae7c2d2",
      "tree": "f09dd8ef3c120d758b5dff2b67419c0f6076ca13",
      "parents": [
        "9927a4e33f1f2286ff38fe2dee083d9d8294d433"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 10 21:24:19 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 10 21:24:19 2021 +0000"
      },
      "message": "Fix flags passed to VHE tests\n\nOur tests initially selected only between VHE/nVHE with -V flag.\nLater we added -N to opt out of pKVM mode (not passing command line\nflag). Turns out our scripts would pass -V but not -N for some VHE tests.\nThis started tripping the tests with Marc\u0027s early VHE series that\nsuddenly began booting into nVHE but failed due to missing SVE\nimplementation.\n\nFix this by consolidating -V and -N behind a single -M mode flag. Users\ncan choose from \u0027vhe\u0027, \u0027nvhe\u0027 and \u0027pkvm\u0027 and the right combination of\nQEMU configs is selected accordingly in `run_qemu.sh`.\n\nTest: make test\nChange-Id: Ic271f60c20e258ae5c375832e8d585ce0b096e51\n"
    },
    {
      "commit": "9927a4e33f1f2286ff38fe2dee083d9d8294d433",
      "tree": "9fceb8e2bcdd1615e56c31840ba9c745617c84e9",
      "parents": [
        "6cafb8b8db6fb35d265c904ed82f19bbfd8a3edc"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 18:52:29 2021 +0000"
      },
      "committer": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 18:52:29 2021 +0000"
      },
      "message": "Use u-boot\u0027s dtc binary in run_qemu.sh\n\nWe only use dtc when we have firmware (a.k.a. u-boot) built, so\nit should be fine to use dtc from out/u-boot/\n\nTest: script still works\nBug: 181212750\nChange-Id: Idfe03b573d4620314e8f0af7faa5aede66782928\n"
    },
    {
      "commit": "6cafb8b8db6fb35d265c904ed82f19bbfd8a3edc",
      "tree": "3f9f7184c92321cfbaa79bc058485c104faa9639",
      "parents": [
        "c2fcb3dd28801347db7dd9883f60ffc57fc6574b"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 16:56:19 2021 +0000"
      },
      "committer": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 16:56:19 2021 +0000"
      },
      "message": "Fix u-boot build for gcc-5.1\n\nTest: TOOLCHAIN\u003dgcc-5.1 make u-boot\nChange-Id: Ic3bdc7b9ffa431ae08d49cc4fb01d9d94a5ab6cf\n"
    },
    {
      "commit": "c2fcb3dd28801347db7dd9883f60ffc57fc6574b",
      "tree": "6557f47b16d82f55e1af7bf59ad9248000f762e0",
      "parents": [
        "dda256550cd9c34122f3ac4c38feda9648c0deae",
        "c89957a4aa0d21307240ad58f98ba39d83b77d9e"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 16:45:29 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 25 16:45:29 2021 +0000"
      },
      "message": "Merge \"Revert \"check make version\"\""
    },
    {
      "commit": "c89957a4aa0d21307240ad58f98ba39d83b77d9e",
      "tree": "6749300d09bc1cf31662078bb1b2ec9b6937e5e9",
      "parents": [
        "b9312d005c73d7bdabd85ec89d9a6aef9e436cba"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 16:44:51 2021 +0000"
      },
      "committer": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 16:44:51 2021 +0000"
      },
      "message": "Revert \"check make version\"\n\nThis reverts commit b9312d005c73d7bdabd85ec89d9a6aef9e436cba.\n\nReason for revert: it was a temp CL\n\nChange-Id: Ic4b505cc2db46d7a7382db95316381cc5997d1e0\n"
    },
    {
      "commit": "dda256550cd9c34122f3ac4c38feda9648c0deae",
      "tree": "71761310757ea2e6994083d2b09ab675c21e476b",
      "parents": [
        "044fe52891a031a60d5ca86414d0f944a116798f",
        "b9312d005c73d7bdabd85ec89d9a6aef9e436cba"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 15:49:26 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 25 15:49:26 2021 +0000"
      },
      "message": "Merge \"check make version\""
    },
    {
      "commit": "b9312d005c73d7bdabd85ec89d9a6aef9e436cba",
      "tree": "b7ecda2ed918e3deaac8787d3990d59ce1c94f6f",
      "parents": [
        "c6404cba23c9e2ddf48b36e974d1f01841ccbdb1"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 15:44:38 2021 +0000"
      },
      "committer": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 15:44:38 2021 +0000"
      },
      "message": "check make version\n\nu-boot build fails on CI presumably due to older make (\u003c3.82), let\u0027s see\n\nChange-Id: I656a4d85fd4e3ac958ec1e543e61f2b865f4c532\n"
    },
    {
      "commit": "044fe52891a031a60d5ca86414d0f944a116798f",
      "tree": "6557f47b16d82f55e1af7bf59ad9248000f762e0",
      "parents": [
        "2d48885b67aa787a096a9ae3086ed0d7d9ece446"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 13:10:46 2021 +0000"
      },
      "committer": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 13:30:25 2021 +0000"
      },
      "message": "Use u-boot.bin at crosvm tests\n\nExercise u-boot, at host VM load time for now, to make sure it\u0027s\nworking.\n\nTest: make test passes on test-crosvm-pkvm-helloworld, other tests\n    aren\u0027t broken either.\nFixes: 181212750\nChange-Id: I8facf2367768bad9fefca19921bc14dc98548e6e\n"
    },
    {
      "commit": "2d48885b67aa787a096a9ae3086ed0d7d9ece446",
      "tree": "16b2f36d0a6b4e3735417f6a3dd8d65b9411b720",
      "parents": [
        "c6404cba23c9e2ddf48b36e974d1f01841ccbdb1"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Wed Feb 24 14:57:09 2021 +0000"
      },
      "committer": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Thu Feb 25 11:49:08 2021 +0000"
      },
      "message": "Refactor template/firmware bits of run_qemu.sh\n\nRename template to firmware.\nReplace `-kernel` with firmware when `-F` is provided and put\nthe kernel payload into the memory.\n\nTest: run_qemu.sh -F \u003cuboot.bin\u003e -k \u003cImage\u003e\nChange-Id: I6edc3321888d3c17af8330969060d2b6bae58c67\n"
    },
    {
      "commit": "c6404cba23c9e2ddf48b36e974d1f01841ccbdb1",
      "tree": "6749300d09bc1cf31662078bb1b2ec9b6937e5e9",
      "parents": [
        "97be081b8578788d4528cc12c479f1b9b006d96d"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 19 15:56:06 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 19 18:08:28 2021 +0000"
      },
      "message": "Correctly set #address/size-cells for pvmfw\n\nChange-Id: Ibc0950630dfa3d793dac435c5cba8480dc2546d5\n"
    },
    {
      "commit": "97be081b8578788d4528cc12c479f1b9b006d96d",
      "tree": "2e5eabd159ce3ae28a2c891c48d62455eea592be",
      "parents": [
        "a0846c9f19e0ba76dd3e2c7688339b0c4fcc886e",
        "9cbf9b941b3c0a6b6ea478e432dbe8bacbd1872a"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Tue Feb 16 10:34:58 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 16 10:34:58 2021 +0000"
      },
      "message": "Merge \"Add build rules for u-boot\""
    },
    {
      "commit": "9cbf9b941b3c0a6b6ea478e432dbe8bacbd1872a",
      "tree": "35917c388f1fd8930cddfd584732add68f53c1b5",
      "parents": [
        "45939f45da5770de5bc6f84e22cf2707bc2bba38"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Mon Feb 01 12:53:31 2021 +0000"
      },
      "committer": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Mon Feb 15 13:26:25 2021 +0000"
      },
      "message": "Add build rules for u-boot\n\nMake works with TOOLCHAIN\u003dclang and TOOLCHAIN\u003dgcc-9.2.\n\ntest: make u-boot produces a binary that boots with run_qemu.sh\ntest: verified that all commands use prebuilts from toolchains/\n\nChange-Id: If3a3c13717dbd0f029b4ac94c0746c26397d227f\n"
    },
    {
      "commit": "a0846c9f19e0ba76dd3e2c7688339b0c4fcc886e",
      "tree": "1f28278f9fcda68998ce0eee1d2f1107c5966be4",
      "parents": [
        "9efc02d02cc22c05851e24790192b3c621a3931f"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 12 18:37:36 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 12 18:39:44 2021 +0000"
      },
      "message": "Increase default number of CPUs to 4\n\nIncreasing parallelism might increase our chances of catching\nconcurrency bugs, eg. in page table modifications.\n\nChange-Id: Ieb9695d7a3f4daca9dbc1f877d99ad118ef9f1d3\n"
    },
    {
      "commit": "9efc02d02cc22c05851e24790192b3c621a3931f",
      "tree": "9c9990c35de74f2fcdfddd850fd8370d2a76dc80",
      "parents": [
        "eac7ff6f35fb1458f82f04cb8261b0b82361c375",
        "407b2befe35239c5a298e9d52f4d6a2bacc0ae27"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Wed Feb 10 17:59:50 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 10 17:59:50 2021 +0000"
      },
      "message": "Merge \"Bump Clang to clang-r407598b\""
    },
    {
      "commit": "407b2befe35239c5a298e9d52f4d6a2bacc0ae27",
      "tree": "07be5633c44aa28d2a74f68b8f7bec38741cb0b3",
      "parents": [
        "cd90840b813cc9cb8e5b0bb4e4e5c5e7e511e60e"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Wed Feb 10 17:37:59 2021 +0000"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Wed Feb 10 17:49:05 2021 +0000"
      },
      "message": "Bump Clang to clang-r407598b\n\nclang-r407598b is the one currently used by AOSP:\nhttps://android.googlesource.com/platform/prebuilts/clang/host/linux-x86/+/master/README.md\n\nTested locally and all tests pass.\n\nChange-Id: I6a5e174481cf4e7f48b39d5200ccb696bbd3c507\n"
    },
    {
      "commit": "eac7ff6f35fb1458f82f04cb8261b0b82361c375",
      "tree": "64945b27ef9f5ce9030c04f1b81187ffe6b742d3",
      "parents": [
        "cd90840b813cc9cb8e5b0bb4e4e5c5e7e511e60e"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Wed Feb 10 17:30:19 2021 +0000"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Wed Feb 10 17:30:55 2021 +0000"
      },
      "message": "Use the GCC 4.9 toolchain with Clang\n\nTo be closer to AOSP.\n\nSigned-off-by: Fuad Tabba \u003ctabba@google.com\u003e\nChange-Id: I9919a5228ff173071ee0d2399a8ef2b15ac09aee\n"
    },
    {
      "commit": "cd90840b813cc9cb8e5b0bb4e4e5c5e7e511e60e",
      "tree": "31642cdf65a073cb7f2bc01b2bccf5e5ee51a1ff",
      "parents": [
        "45939f45da5770de5bc6f84e22cf2707bc2bba38"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Feb 09 17:18:15 2021 +0000"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Wed Feb 10 09:59:23 2021 +0000"
      },
      "message": "Treat DIST_DIR and OUT_DIR as separate directories\n\nIf DIST_DIR is defined, create logs there and copy and\ninteresting artifacts to it.\n\nThe CI build (pKVM Busytown) expects build artifacts to be in\nDIST_DIR. Previously the makefile would use the out directory for\nthat. However, this would clutter it with object files and\ntemporary build files that aren\u0027t needed.\n\nSigned-off-by: Fuad Tabba \u003ctabba@google.com\u003e\nChange-Id: I06669489553dbb4c1dc1900fb76701f12bc21ac0\n"
    },
    {
      "commit": "45939f45da5770de5bc6f84e22cf2707bc2bba38",
      "tree": "c43d1d9ba80aa65d5b9f5e6b3d7105d28447d07b",
      "parents": [
        "065df8c4858626cf2fa3b13fcfc21ae466d91fd4",
        "be62ab660cc4d8efe531297ca6c3b36996e603a9"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 05 11:07:48 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 05 11:07:48 2021 +0000"
      },
      "message": "Merge changes I9a424569,I5ecf12d5\n\n* changes:\n  Increase timeout for CrosVM tests\n  Add run_test.sh cmdline option for timeout\n"
    },
    {
      "commit": "be62ab660cc4d8efe531297ca6c3b36996e603a9",
      "tree": "c47e09bcf3fb7759090d341e71b416b5ed49dfd4",
      "parents": [
        "5072606e94cef3740a54fc4e4c223a96a265fdfe"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 05 10:55:24 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 05 10:55:24 2021 +0000"
      },
      "message": "Increase timeout for CrosVM tests\n\nCrosVM tests are randomly timing out on the build system. Increase their\ntimeout value from 3 minutes to 5 minutes.\n\nChange-Id: I9a424569d54f3c4984531c327e1843405c5d9a09\n"
    },
    {
      "commit": "5072606e94cef3740a54fc4e4c223a96a265fdfe",
      "tree": "262c9fe9e4409a7d426315f749319efa6591a104",
      "parents": [
        "b67bd86d4fb3cc405831b1011aab4d6d2ed7f12b"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 05 10:51:38 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 05 10:51:38 2021 +0000"
      },
      "message": "Add run_test.sh cmdline option for timeout\n\nTests implicitly run with a 3-minute timeout. Add an option for this\nduration to be overridden. At the same time, fix a long-standing issue\nof tests timing out under GDB by changing the default value to 0 if\ninvoked with -G.\n\nChange-Id: I5ecf12d53bc9a9932c7a580893f0b6df93ca4ff4\n"
    },
    {
      "commit": "065df8c4858626cf2fa3b13fcfc21ae466d91fd4",
      "tree": "59c12e1733fb40ca03f186a5d08b7dd08e4efbb1",
      "parents": [
        "aa07f1e2d8f3e278c7792b5ffa8674157278f880",
        "d84a6ddfd376c52283226f0efe2d2363f0ed5747"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Fri Feb 05 10:40:15 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 05 10:40:15 2021 +0000"
      },
      "message": "Merge \"Update QEMU to 5.2\""
    },
    {
      "commit": "aa07f1e2d8f3e278c7792b5ffa8674157278f880",
      "tree": "d74ebf140f1087a420d354369eebb1f333b3e11d",
      "parents": [
        "b67bd86d4fb3cc405831b1011aab4d6d2ed7f12b"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Thu Feb 04 14:14:19 2021 +0000"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Thu Feb 04 20:01:23 2021 +0000"
      },
      "message": "Add GCC-5.1 as a build toolchain\n\nGCC 5.1 is now the oldest supported GCC by Linux. Add it as a\ntoolchain (TOOLCHAIN\u003dgcc-5.1).\n\nKeep 4.9 for the time being, but add a warning that it\u0027s\ndeprecated and will be dropped soon.\n\nChange-Id: I0a6629a0f88d6f6b123542fc10ba087791a93630\nSigned-off-by: Fuad Tabba \u003ctabba@google.com\u003e\n"
    },
    {
      "commit": "d84a6ddfd376c52283226f0efe2d2363f0ed5747",
      "tree": "b363bde0f08ac4960d0c37960313bc383daa8d38",
      "parents": [
        "b67bd86d4fb3cc405831b1011aab4d6d2ed7f12b"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Thu Feb 04 19:28:45 2021 +0000"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Thu Feb 04 19:28:45 2021 +0000"
      },
      "message": "Update QEMU to 5.2\n\nUpdate QEMU to the latest stable release, 5.2.\n\nSigned-off-by: Fuad Tabba \u003ctabba@google.com\u003e\nChange-Id: I4330977e2114d6eeb6ba909727c7cd4cc9a6a38e\n"
    },
    {
      "commit": "b67bd86d4fb3cc405831b1011aab4d6d2ed7f12b",
      "tree": "8f5a2ed05fb87f493b9b89a4bc3595250beb6ee0",
      "parents": [
        "75e14c5bdd341fda2ed7944d1d75149e753b28c5"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Feb 04 11:09:09 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Feb 04 11:09:09 2021 +0000"
      },
      "message": "Give run_test.sh location of the kernel for CrosVM tests\n\nThe output directory location can be overridden, eg on build servers,\nbut the build rules for CrosVM hello world tests assumed it was always\nin the default location \u0027\u003croot\u003e/out\u0027.\n\nChange-Id: I50f8de33dfa8d6dd033bebe510812769b568dec5\n"
    },
    {
      "commit": "75e14c5bdd341fda2ed7944d1d75149e753b28c5",
      "tree": "99d797362b81b146915c4aa1ad3b78f187c3fe3a",
      "parents": [
        "434491e40f658ee9b096d136bb6849327106dcd2"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Feb 03 13:04:30 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Feb 03 13:07:22 2021 +0000"
      },
      "message": "Minor improvement for custom kernel image\n\nMakefile supports providing a custom kernel image. This may not be\ngzipped as the default image is. Change the host.sh script of CrosVM\nHelloWorld test to try extracting first and if that fails, just copy the\nfile to its destination.\n\nChange-Id: I9836adb7fb01779713c590203342fe0ad4eed8cf\n"
    },
    {
      "commit": "434491e40f658ee9b096d136bb6849327106dcd2",
      "tree": "0af8153309a1f1a144af9e557623e99f5d2812ae",
      "parents": [
        "19d0b7a686eddd630b5f2ea6c58ba02d365c23fb"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Feb 03 13:03:14 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Feb 03 13:05:46 2021 +0000"
      },
      "message": "Fix build error with non-existent folder\n\nTry to create the directory for output file in run_test.sh. Until now it\nassumed that the caller had created the folder beforehand.\n\nChange-Id: Icbfa09c4116bb39a54213b7e7166e73563f29ea0\n"
    },
    {
      "commit": "19d0b7a686eddd630b5f2ea6c58ba02d365c23fb",
      "tree": "df8cb51f061d0171d01ea6bf2a50cc324aaf9076",
      "parents": [
        "e3446dbde53ecb13d45dfc3d9ca409259b8ba337"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 02 18:15:44 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 02 21:00:03 2021 +0000"
      },
      "message": "Add Hello World test of CrosVM\n\nAdds a minimal test of CrosVM. It uses the same rootfs as kvm-unit-tests\nbut the test script loads CrosVM from its ext4 image and runs a VM.\nThe VM uses the same kernel as the host, the same rootfs, and the test\nscript simply prints \u0027Hello World\u0027.\n\nMake targets added for all VHE/nVHE/pKVM configs. The test reuses\nrun_test.sh from kvm-unit-tests to avoid duplication/specialization.\n\nTest: make test-crosvm-helloworld\nChange-Id: I1f6d3f19f46f4ea4a0e680b36075599a7627b56a\n"
    },
    {
      "commit": "e3446dbde53ecb13d45dfc3d9ca409259b8ba337",
      "tree": "464346cbbecea5f51dc08353f02c02aeddcb921f",
      "parents": [
        "f7dab33e87094adc07de2f2e52edec7908e4c06a"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 02 20:58:49 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 02 20:59:28 2021 +0000"
      },
      "message": "Add constants for prebuilts\n\nChange-Id: I17d4445b23878b9cba051f67ed6815ed294ce3a1\n"
    },
    {
      "commit": "f7dab33e87094adc07de2f2e52edec7908e4c06a",
      "tree": "c8dbb4cbc7c6807a4e05a1058931dc77a3e93ffc",
      "parents": [
        "4f0603fb13c0479ea23bf546acf9ae6da84735a5"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 02 20:56:28 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 02 20:59:28 2021 +0000"
      },
      "message": "Minor fix of error printing\n\nResult of run_test.sh is currently printed with printf. That does not\ncorrectly print colours for TIMEOUT/CRASH result. Use printf to print\nthe test name and align the cursor, but print the actual result with\n\u0027echo -e\u0027.\n\nChange-Id: I2a9b03579ba92179eda223c6f67a4db0fdd289f9\n"
    },
    {
      "commit": "4f0603fb13c0479ea23bf546acf9ae6da84735a5",
      "tree": "00abdd1566821f2f08da199e8040e133d7e5ee2f",
      "parents": [
        "467cfd99120bc25b1ff925d56cbccdc81ebcc0b6"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 02 16:18:18 2021 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 02 17:02:10 2021 +0000"
      },
      "message": "Add build rules for crosvm.img prebuilt\n\nCheck in download script from Cuttlefish GitHub and add a build rule\nwhich uses it to download Cuttlefish host tools (includes CrosVM) and\npackages it into a ext4 image in prebuilts/.\n\nChange-Id: Ia3b9bc59ea081a2b03af262204ae577096dc236e\n"
    },
    {
      "commit": "467cfd99120bc25b1ff925d56cbccdc81ebcc0b6",
      "tree": "779527baac368898d0fdb25cd7911ceb7df4aac8",
      "parents": [
        "f6ea145a8b0a853bd69e2b9cd0ff37da68c1067a"
      ],
      "author": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Fri Jan 15 14:56:04 2021 +0000"
      },
      "committer": {
        "name": "Elena Petrova",
        "email": "lenaptr@google.com",
        "time": "Fri Jan 15 16:36:18 2021 +0000"
      },
      "message": "Add -j$(nproc) by default for make linux\n\nAfter forgetfully running make without -j a couple of times,\nfixing it once and for all.\n\nTest: make runs faster, yay!\nChange-Id: I9b62b1410a3b9261e62fc078ff8eed85bd02818a\n"
    },
    {
      "commit": "f6ea145a8b0a853bd69e2b9cd0ff37da68c1067a",
      "tree": "223f6018898697eee0fdb0d97c57b258ffdcc9d8",
      "parents": [
        "a7e356664a139d8a905bb53a2e34bbae7f082c6b"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Dec 15 15:25:03 2020 +0000"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Dec 15 15:25:03 2020 +0000"
      },
      "message": "Simplify debug script and make it more robust\n\nInstead of creating and deleting the breakpoint, create it as a\ntemporary one from the beginning.\n\nSigned-off-by: Fuad Tabba \u003ctabba@google.com\u003e\nChange-Id: I5290caea35227536285292432d7de10e5f136de9\n"
    },
    {
      "commit": "a7e356664a139d8a905bb53a2e34bbae7f082c6b",
      "tree": "ea82b7b10ed290b5c3284492b67545eb2786aa55",
      "parents": [
        "edb7c78e8e5c5f47053d45e4d4004fac9a0ff475"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 03 09:40:38 2020 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 03 09:40:38 2020 +0000"
      },
      "message": "Add linux_menuconfig target\n\nA handy shortcut to change the config of your kernel.\n\nChange-Id: I1341d10a671222920b933a84e941dc42578537da\n"
    },
    {
      "commit": "edb7c78e8e5c5f47053d45e4d4004fac9a0ff475",
      "tree": "b5c02df3bc35d19dcabafa6328dd990c33980fbb",
      "parents": [
        "6cc8ebd147260baa0e1ebbe5282751f56e9c0b63"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 03 09:38:16 2020 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 03 09:38:16 2020 +0000"
      },
      "message": "Change protected KVM kernel parameter\n\nDuring code review the parameter was changed to a more generic\nkvm-arm.mode\u003dprotected.\n\nChange-Id: I0d9ff54a69626de372d213735000d0cafe2d2f3e\n"
    },
    {
      "commit": "6cc8ebd147260baa0e1ebbe5282751f56e9c0b63",
      "tree": "38a5ea5174f7a3e4064939fc60ceb2c1bc5ef2a3",
      "parents": [
        "6e71061c0dd1bb89467cf5a4ed7b7067fb047422"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Nov 17 15:27:15 2020 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Nov 17 15:27:15 2020 +0000"
      },
      "message": "Update GDB script\n\nThe internal implementation of kern_hyp_va() has changed in 5.10 and\nthe physvirt_offset variable does not exist any longer. Update the GDB\nscript to use the new formula instead.\n\nChange-Id: Iacb0af9f50d56c0f4bf47e743e11372a366b5882\n"
    },
    {
      "commit": "6e71061c0dd1bb89467cf5a4ed7b7067fb047422",
      "tree": "210288aceb5c5a0b86fba5e28abb3e06512702ca",
      "parents": [
        "72cc5fde3cb49514ae86ddc017f9b920a8c0c01a",
        "47ce1a6917ad0b414d92fd47841a67635d91c628"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Nov 09 10:15:13 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 09 10:15:13 2020 +0000"
      },
      "message": "Merge changes I5044588e,Ibc815c02,I191645b8\n\n* changes:\n  Add test-kut-pkvm configuration\n  Add command line options for controlling PKVM mode\n  Fix error message for invalid command line opts\n"
    },
    {
      "commit": "47ce1a6917ad0b414d92fd47841a67635d91c628",
      "tree": "4a6344702a3e19196f3a34cdbedb318cb0a0f828",
      "parents": [
        "88b616415def184be3fe48c539c8766bda51b222"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Nov 09 09:45:21 2020 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Nov 09 10:09:06 2020 +0000"
      },
      "message": "Add test-kut-pkvm configuration\n\nThe kernel will soon have three KVM configurations - VHE, nVHE and PKVM.\nReflect this in the script which generates test targets for\nkvm-unit-tests. This is safe to merge right away as the PKVM targets\nwill simply test nVHE for the time being.\n\nChange-Id: I5044588e258d1b01e3ee0844d685001996af65ff\n"
    },
    {
      "commit": "88b616415def184be3fe48c539c8766bda51b222",
      "tree": "d527f1ec672182443bd1f962879cb2770fce4356",
      "parents": [
        "9a9ce4c72a8b1b67eb83e5f56f9b4d44c3869573"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Sun Nov 08 11:05:07 2020 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Nov 09 09:58:20 2020 +0000"
      },
      "message": "Add command line options for controlling PKVM mode\n\nThe kernel will soon start requiring a command line flag to enable KVM\nprotected mode. This patch modifies the build scripts to start passing\nit by default, as it will be our default mode of operation. Option -N is\nprovided to disable it.\n\nChange-Id: Ibc815c0295687043175d470892c8266047f8c47a\n"
    },
    {
      "commit": "9a9ce4c72a8b1b67eb83e5f56f9b4d44c3869573",
      "tree": "5aafa61b91728a11bffa27414a16863b5d3a0adf",
      "parents": [
        "0313471e20fab6b438b2f8237727696f2a216090"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Nov 09 09:42:07 2020 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Nov 09 09:51:45 2020 +0000"
      },
      "message": "Fix error message for invalid command line opts\n\nWhen a command line option is not recognized, the error message across\nour build scripts would indirectly dereference OPTIND. This is incorrect\nand likely to result in an unbound variable exception.\n\nReplace with printing \u0027-${OPTARG}\u0027.\n\nChange-Id: I191645b876c0bd32a29758d1ac7c31c9a5b7f6b3\n"
    },
    {
      "commit": "72cc5fde3cb49514ae86ddc017f9b920a8c0c01a",
      "tree": "9ef150868bad2991e291bf24167e755e0deae199",
      "parents": [
        "8470ca43cf35c02039df64270e975327dfb0a4cb"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Nov 03 13:01:51 2020 +0000"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Nov 03 13:01:51 2020 +0000"
      },
      "message": "Fix GCC toolchain paths when using Clang\n\nFix the GCC toolchain paths to distinguish between the base\ndirectory, and the bin directory. This doesn\u0027t impact any of the\ntargets being built now, but is needed for adding future targets.\n\nThe COMMON_CFLAGS --gcc-toolchain flag should also refer to the\nbase rather than the bin directory, although it didn\u0027t matter\nfor kvm-unit-tests.\n\nNo change in the tools used for current compilations (confimred\nwith strace).\n\nSigned-off-by: Fuad Tabba \u003ctabba@google.com\u003e\nChange-Id: Ia4de39da5ad98f4016d099313d98f0c283f573bd\n"
    },
    {
      "commit": "8470ca43cf35c02039df64270e975327dfb0a4cb",
      "tree": "51a836df1c011165870a17098fd119779328e983",
      "parents": [
        "0313471e20fab6b438b2f8237727696f2a216090"
      ],
      "author": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Mon Nov 02 14:07:05 2020 +0000"
      },
      "committer": {
        "name": "Fuad Tabba",
        "email": "tabba@google.com",
        "time": "Tue Nov 03 08:54:06 2020 +0000"
      },
      "message": "Script to pack files and run a command in one file\n\nAdd a script that packs files specified in the command line as\nbase64, and runs a specified command, all in one bash script.\n\nThis will be used to package the VMM, as well as any images it\nrequires, in one file, and then run it. This will be passed as\nthe block device to the existing rootfs, which runs /dev/vdb.\n\nBug: 171310818\nTest: From build/aarch64, run\n      ./package_payloads.sh -c \"chmod +x grep; ./grep -i kvm run_gdb.sh run_qemu.sh\" /usr/bin/grep run_gdb.sh run_qemu.sh | bash\nOutput should be matches to kvm in run_gdb.sh and run_qemu.sh\n\nChange-Id: I91ce46c7ffafaac18aadfb53a3fa82c74804a66e\nSigned-off-by: Fuad Tabba \u003ctabba@google.com\u003e\n"
    }
  ],
  "next": "0313471e20fab6b438b2f8237727696f2a216090"
}
