Robert Foley <[email protected]> writes:
> This is version 2 of the patch series to > add support for aarch64 VMs. > - Ubuntu 18.04 aarch64 VM > - CentOS 8 aarch64 VM > > V1: https://lists.gnu.org/archive/html/qemu-devel/2020-02/msg01180.html > > Changes in version 2 > - Most changes relate to the patch: "Add workaround to consume console". > - We changed this patch to make it cleaner. > - We added a ConsoleSocket, which slots in for the current console socket > with the difference being that we drain this socket in the background on > a > callback basis. > - We also made the logging of the console to file optional > - Relocated the log file path and name. For example: > ~/.cache/qemu-vm/ubuntu.aarch64.install.log > - Made one fix for a hang issue we were seeing. > - The issue was a timing problem around a reboot where the > ubuntu.aarch64 script assumed the reboot guaranteed that > the next successful command would occur after the reboot. > - The fix is to simply make it more deterministic by shutting down the > VM and restarting it instead of issuing the reboot. > - Made a few changes to CentOS VM to update its dependencies properly. > - We made a few changes related to latin1 vs utf-8. > We found in some cases the latin1 is needed for chars coming out of the i > socket which do not have a utf-8 equivalent. > > Robert Foley (14): > tests/vm: use $(PYTHON) consistently > tests/vm: Debug mode shows ssh output. > tests/vm: increased max timeout for vm boot. > tests/vm: give wait_ssh() option to wait for root > tests/vm: Added gen_cloud_init_iso() to basevm.py For now I've pulled the first 5 patches into testing/next as they are obvious clean-ups. > tests/vm: Add workaround to consume console I still have concerns about this approach but I'm going to give it some more testing. However I ran into problems testing on my aarch64 box because of a missing gen-iso-image which makes me think we need to add some gating via configure for tools and libraries we need. > tests/vm: Add configuration to basevm.py > tests/vm: Added configuration file support > tests/vm: add --boot-console switch > tests/vm: Add ability to select QEMU from current build. > tests/vm: allow wait_ssh() to specify command > tests/vm: Added a new script for ubuntu.aarch64. > tests/vm: Added a new script for centos.aarch64. > tests/vm: change scripts to use self._config > > python/qemu/console_socket.py | 162 ++++++++++++++++ > python/qemu/machine.py | 12 +- > tests/vm/Makefile.include | 20 +- > tests/vm/aarch64vm.py | 100 ++++++++++ > tests/vm/basevm.py | 294 +++++++++++++++++++++++++----- > tests/vm/centos | 33 +--- > tests/vm/centos-8-aarch64.ks | 51 ++++++ > tests/vm/centos.aarch64 | 224 +++++++++++++++++++++++ > tests/vm/conf_example_aarch64.yml | 51 ++++++ > tests/vm/conf_example_x86.yml | 50 +++++ > tests/vm/fedora | 17 +- > tests/vm/freebsd | 16 +- > tests/vm/netbsd | 19 +- > tests/vm/openbsd | 17 +- > tests/vm/ubuntu.aarch64 | 117 ++++++++++++ > tests/vm/ubuntu.i386 | 37 +--- > 16 files changed, 1069 insertions(+), 151 deletions(-) > create mode 100644 python/qemu/console_socket.py > create mode 100644 tests/vm/aarch64vm.py > create mode 100644 tests/vm/centos-8-aarch64.ks > create mode 100755 tests/vm/centos.aarch64 > create mode 100644 tests/vm/conf_example_aarch64.yml > create mode 100644 tests/vm/conf_example_x86.yml > create mode 100755 tests/vm/ubuntu.aarch64 -- Alex Bennée
