vdev virtio-vsock

Updated: April 19, 2023

Provide socket functionality to guests running in hypervisor VMs

Synopsis

vdev virtio-vsock guest_cid [loc addr intr gic:vector]

Options

guest_cid
Computer ID (CID) for the guest using the virtual socket device. This mandatory option must be an unsigned integer between 3 and 0xffffffff–1. (Values 0, 1, and 2 are reserved, with 2 always being used for the hypervisor host.)
Note: Applications that want to communicate over the virtual socket with this guest must specify this CID in any socket calls.
intr gic:vector
Interrupt vector used for the device in the guest's emulated Generic Interrupt Controller (GIC).
loc
Starting address of the device representation in the guest's virtual address space.

Description

(ARM and x86) To use virtual sockets in a guest, the vdev-virtio-vsock device must be added to the VM in which the guest runs. This is done through a command in the qvm configuration file for this VM. The mandatory guest_cid option uniquely identifies the guest in the hypervisor system. Some target platforms require additional options.

Examples

The command to add the device consists of a vdev virtio-vsock statement on one line, followed by the driver options on their own lines:
# For an i.MX8QM MEK or QC 8155 target, we need to specify the location and interrupt.
# To learn about these properties, see the QNX Hypervisor documentation.
vdev virtio-vsock
        guest_cid 3
        loc 0x1c0f6000
        intr gic:46

# For a NUC target, we don't need to specify the location and interrupt.
vdev virtio-vsock
        guest_cid 3

For details on defining qvm configuration files, including their structure, contents, and syntax, see the Assembling and configuring VMs section in the QNX Hypervisor User's Guide.