KVM virtualization on IBM Z

KVM guest

Ubuntu Server 20.04.1 can run on the mainframe environment as virtualized by the KVM hypervisor.

Figure 1 illustrates how the KVM hypervisor virtualizes the IBM Z® resources for Linux® on KVM.
Figure 1. KVM virtualization

This graphic is described in the surrounding text.
The KVM hypervisor defines the CPUs, memory, and virtual devices that are available to an instance of Linux on KVM when it is booted. It also specifies the host resources that back these guest resources.

The device virtualization hides most of the physical device aspects from the guest. A virtio-net network device could be backed on the host, for example, by a physical OSA device or an Open vSwitch configuration. Disk devices can be virtio-blk devices, although DASDs can also be pass-through devices with DASD attributes exposed to the KVM guest.

Both virtio-blk and virtio-net devices use the virtio framework. The virtio CCW transport device driver provides the interface to this framework and uses channel command words (CCW) to establish the virtio infrastructure.

Figure 2 illustrates the virtio stack for Linux as a KVM guest on Z.
Figure 2. virtio stack

This graphic is described in the preceding text.
Draft comment: hweber
Is there a replacement for the dW works pointer to the virtio framework?

The hypervisor can dynamically add or remove devices. These changes result in hotplug events on the guest.