Skip to content
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

Examples #11

Merged
merged 9 commits into from
Aug 29, 2024
Merged

Examples #11

merged 9 commits into from
Aug 29, 2024

Conversation

dkruces
Copy link
Contributor

@dkruces dkruces commented Aug 29, 2024

Minor fixes to make examples work for aarch64.

Add SPDX GPL-3.0-or-later license identifier to the files not including
it except for the files in the examples/ directory.

Signed-off-by: Daniel Gomez <[email protected]>
Parse common.conf in aarch64-virt-base as well.

Fixes unbound default_nvme_ns_extra when using with nvme.conf.

Signed-off-by: Daniel Gomez <[email protected]>
Add nvme-aarch64 configuration file and promote $GUEST_BOOT_BASE to the
main configuration file, so it can be overwritten.

Signed-off-by: Daniel Gomez <[email protected]>
Use which (1) to locate QEMU system binaries. Locate both binaries
in their respective top level config files and assign the binary
variable in the system architecture configuration file.

Do not put this in common to avoid systems without all the binaries
available.

Signed-off-by: Daniel Gomez <[email protected]>
Add $QEMU_EDK2_AARCH64 variable to retrieve the UEFI EDK2 firmware
binary from the common.conf file.

Signed-off-by: Daniel Gomez <[email protected]>
Switch emulation to virtualization by setting cpu argument to host.
Add acceleration argument and default it to KVM. It can be overwritten
with $GUEST_ACCEL var.

Signed-off-by: Daniel Gomez <[email protected]>
Add support to accept guest gdb connection with '-gdb tcp::<port>' using
$GUEST_GDB_PORT variable. Apply option to existing configs.

Signed-off-by: Daniel Gomez <[email protected]>
nvme-aarch64 configuration example is now intented to be used as
virtualization. Add cortex-a57 emulation example with had before but
with a separate configuration file overwriting the GUEST_CPU.

Signed-off-by: Daniel Gomez <[email protected]>
Fix display support. Switch to disabled by default if no display backend
is set. $GUEST_DISPLAY configures QEMU -display <backend> if configured
(variable not empty). Empty variable will use -nographic.

This also uses -nodefaults regardless of the setting of the display to
replicate the same setup in x86_64 example.
From documentation [1]:
  Don’t create default devices. Normally, QEMU sets the default devices
  like serial port, parallel port, virtual console, monitor device, VGA
  adapter, floppy and CD-ROM drive and others. The -nodefaults option will
  disable all those default devices.

[1] Manual for -nodefaults.
https://www.qemu.org/docs/master/system/qemu-manpage.html
https://www.qemu.org/docs/master/system/invocation.html

This has been tested only on macOS with cocoa as $GUEST_DISPLAY.

qemu-system-aarch -display help
Available display backend types:
none
curses
cocoa
dbus

Display backend types in Debian arm64 machines are:
qemu-system-aarch -display help
Available display backend types:
none
gtk
sdl
egl-headless
curses
spice-app
dbus

Signed-off-by: Daniel Gomez <[email protected]>
@birkelund birkelund merged commit 2805ab6 into SamsungDS:master Aug 29, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants