• How to check your shell scripts for portability

    This blog is mainly a reminder for myself for the various possibilities to check my shell scripts for portability, but maybe it’s helpful for some other people, too. First, why bother? Well, while bash is the default /bin/sh shell on many rpm-based Linux distributions (so it’s also the default shell...

  • QEMU Advent Calendar 2020 starts

    Starting today, on December 1st, the first door of the QEMU Advent Calendar 2020 can now be opened! The advent calendar reveals a new disk image or something similar for download on each of the first 24 days in December 2020, to create a fun experience for the QEMU community,...

  • Secure Execution for zKVM Introduction and Demo

    The recent generation of the mainframe (i.e. the z15) has the possibility to run protected KVM guests, so that the administrator of the host LPAR does not have the possibility anymore to read or alter the memory of a guest. This feature is called “Secure Execution” on the IBM Z....

  • How to speed up your QEMU development cycles

    Here’s another bunch of tips for QEMU developer – if you are not working with the QEMU source code, you can certainly ignore this article. Compiling QEMU is a tedious action, since it takes quite some time to compile the whole code base. But with some basic tricks, you can...

  • How to create small VMs with buildroot

    A couple of times I already ran into the situation that I wanted to provide a small guest disk image to other people. For example, one time I wanted to provide a test application like LTP to colleagues via a server where I only had some limited disk quota available....

  • QEMU Advent Calendar 2018 opened the first door

    Starting today, on December 1st, the first door of the QEMU Advent Calendar 2018 can now be opened! The advent calendar reveals a new disk image for download on each of the first 24 days in December 2018, to create a fun experience for the QEMU community, to celebrate the...

  • QEMU Advent Calendar 2018 website online

    This year, we are celebrating the 15th anniversary of QEMU (QEMU 0.1 was announced in March 2003), and to contribute to this celebration, we will have another edition of the QEMU Advent Calendar this year. The new website for the advent calendar is now online at www.qemu-advent-calendar.org – but please...

  • QEMU's instance_init() vs. realize()

    Note that this is a blog post for (new) QEMU developers. If you are just interested in using QEMU, you can certainly skip this text. Otherwise, in case you have ever been in touch with the QEMU device model (“qdev”), you are likely aware of the basic qdev code boilerplate...

  • How to use Fedora 27 s390x ISO images with KVM

    When you are trying to install a s390x Fedora 27 (or RHEL 7.4) KVM guest on an IBM z Systems mainframe by using one of the provided ISO DVD images (e.g. Fedora-Server-dvd-s390x-27-1.6.iso), there are two pitfalls you should be aware of. The first problem is that QEMU’s firmware for the...

  • KVM with SELinux on a z/VM s390x machine

    When you are trying to start a KVM guest via libvirt on an s390x Linux installation that is running on an older version of z/VM, you might run into the problem that QEMU refuses to start with this error message: cannot set up guest memory 's390.ram': Permission denied. This happens...