New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for ARM64 (aarch64) #2030
Conversation
# Add arm64 variant of RHEL7
./run -v -t qemu --arch arm64 -g RHEL.7.0 --no-download -b
# Go through bootstrap
./run -v -t qemu --arch arm64 -g RHEL.7.0 --no-download --qemu_sandbox=off --tests 'unattended_install.cdrom.extra_cdrom_ks.default_install.aio_native' --smp 2 -m 2048
...
17:07:52 INFO | PASS io-github-autotest-qemu.unattended_install.cdrom.extra_cdrom_ks.default_install.aio_native
17:07:52 INFO |
17:07:52 INFO | Cleaning tmp files and VM processes...
17:07:52 WARNI| Creating new, empty env file
17:07:53 INFO |
17:07:53 INFO | Job total elapsed time: 4235.70 s
17:07:53 INFO | Tests passed: 1
17:07:53 INFO | Tests failed: 0
17:07:53 INFO | Success rate: 100.00 %
|
e4be4ba
to
8fff03b
Compare
[root@apm-mustang-ev3-03 virt-test]# ./run -t qemu --arch arm64 -g RHEL.7.0 --no-download --qemu_sandbox=off --tests 'unattended_install.cdrom.extra_cdrom_ks.default_install.aio_native boot' --smp 2 -m 8192 With the last commit even the 'boot' test passes (sorry I forgot to test that one earlier). |
OK, let me give this a spin. |
Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
Instead of hardcoded /dev/ttyS0 and in some cases /dev/hvc0 use /proc/consoles and write to all slecified consoles. This is necessarily for ARM as it uses /dev/ttyAMA0 and adding another tty is just madness Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
Default passwords in autotest is "123456". Although when graphical installation is available, it's used by default, while requiring it makes machines without VGA fail. Last change is to always poweroff the machine. This is required by unattended_install tests at the end. Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
PPC64 doesn't support VGA and uhci USB. Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
This pull request defines aarch64 (arm64) machine. Currently it doesn't support any buses except the 'virtio-bus', thus more intrusive changes were necessarily. 1) machine_type=virt, cpu_model=host, vga=none, usbs=none 2) instead of "virtio-*-pci" devices, "virtio-*-device" are used without the possibility of setting address. 3) AAVMF EFI bios is copied from installed location (/usr/share/AAVMF) 4) When provided install CD doesn't contain 'isolinux' directory, non-bootable CD is created. This works fine with UEFI boot. Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
The UEFI storage (AAVMF variables files) is bound to base image to be able to boot the image it needs to be configured properly. This is a very simple implementation which bounds the AAVMF file to the first image of the VM. The same VMs would share the single AAVMF file. This should work fine as they are only modified during installation. The result of this patch is that when you use multiple VMs of the same base_image, they'll start properly. In case the file is missing, it's created and WARNING message is printed into the log file informing about the consequences. Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
Rebased, fixed the issues (ppc part) found by @lmr and added new commit which shares AAVMF_VARS for the same base-images (still need to work-out the clonning, but at least tests using original image with snapshot=on works fine, tested on the |
Thanks @ldoktor! |
This pull request is based on #2012 please review only the last commit here.
BEWARE: You need the latest qemu to test this version as it requires patches for UEFI to support
-kernel
and loading of gzipped kernels (I have a version which uses the unpacked kernel in my tree, but as this support is upstream I decided not to use include it here)It defines aarch64 (arm64) machine. Currently qemu on arm64 doesn't
support any buses except the 'virtio-bus', thus more intrusive changes
were necessarily.
without the possibility of setting address.
non-bootable CD is created. This works fine with UEFI boot.
Signed-off-by: Lukáš Doktor ldoktor@redhat.com