Jump to content
SUSE Linux Enterprise Virtual Machine Driver Pack 2.5

Installation Guide

Publication Date: 04/18/2024

1 About SLE-VMDP

SUSE Linux Enterprise Virtual Machine Driver Pack contains Windows* disk and network device drivers to enable the high-performance hosting of these unmodified guest operating systems on top of SUSE Linux Enterprise Server. Paravirtualized drivers for SUSE Linux Enterprise Server are available, but not included in this Driver Pack. Paravirtualized drivers for SUSE Linux Enterprise Server are distributed under an open source license. They are included in both physical and electronic media of SUSE Linux Enterprise Server and corresponding SUSE Customer Center update channels.

1.1 Introduction

Virtualization allows the consolidation of Linux workloads on newer, more powerful, energy-efficient hardware. Paravirtualized operating systems such as SUSE Linux Enterprise Server are aware of the underlying virtualization platform, and can therefore interact efficiently with it. Unmodified operating systems are unaware of the virtualization platform and expect to interact directly with the hardware. Because this is not possible when consolidating servers, the hardware must be emulated for the operating system. Emulation can be slow, but it is especially troubling for high-throughput disk and network subsystems. Most performance loss occurs in this area.

1.2 Bringing performance

The device drivers in SUSE Linux Enterprise Virtual Machine Driver Pack bring many of the performance advantages of paravirtualized operating systems to unmodified operating systems: Only the paravirtualized device driver (not the rest of the operating system) is aware of the virtualization platform. For example, a paravirtualized disk device driver appears as a normal, physical disk to the operating system. However, the device driver interacts directly with the virtualization platform (with no emulation) to efficiently deliver disk access, allowing the disk subsystems to operate at near native speeds in a virtualized environment, without requiring changes to existing operating systems.

1.3 VMDP signature

1.3.1 VMDP-WIN-VERSION

VMDP-WIN-VERSION contains the Microsoft WHQL signed driver files for the Windows Server versions of the drivers contained in vmdp-211015. The Windows Server drivers will also run in the corresponding Windows client versions. Windows 10 32-bit client drivers are signed by SUSE and certified by Microsoft. All other 32-bit client drivers are signed by SUSE only.

The 64-bit drivers signed only by SUSE can be installed only after the initial Windows installation. Windows must have the Testsigning mode activated for the drivers to load on reboot.

1.3.2 VMDP Community

VMDP-WIN-VERSION-Community contains the same drivers as found in vmdp-211015. The Windows 10 Server versions (both 32 and 64-bit) have drivers signed by SUSE signed and certified by Microsoft. All other 32/64 bit drivers are signed by SUSE only.

1.3.3 Windows Server 2008 R2

Windows Server 2008 R2 VMs need to be updated to recognize the new WHQL signing format. Without the update, the WHQL signatures are treated as unknown and the drivers will not load.

1.4 Support subscription

The customer support you receive for the SUSE Linux Enterprise Virtual Machine Driver Pack is at the same level as your SUSE Linux Enterprise support subscription.

1.5 What is new in 2.5.3

The key update in version 2.5.3 are:

  • Added native drivers for Windows 10-2004/Windows Server 2022

  • Better support for wsl2

What is new in the PV block driver:

  • Handle force unit access commands for virtio

  • Add support for IOCTL_SCSI_MINIPORT_FIRMWARE

What is new in the PV SCSI driver:

  • Process Srbs at DPC time rather than interrupt time

What is new in the PV net driver:

  • Update to NDIS 6.85 spec for w2k22

  • Add priority vlan tagging support

  • Add packet length to IP header for IPv4 LS0v2

  • Added the ability to use indirect descriptors for TX packets.

  • Added parameters to enable or disable IndirectDescriptors and TxSgCnt to specify the maximum number of TX descriptors to use

2 SLE-VMDP certification

SLE-VMDP has been certified by Microsoft: http://www.windowsservercatalog.com/item.aspx?idItem=979ea66f-7f52-a04c-df5b-88ecc4dfa5b0&bCatID=1282

2.1 WHQL

SLE-VMDP has passed WHQL certification. See http://msdn.microsoft.com/en-us/windows/hardware/gg463010.aspx for more information.

2.2 SVVP

The SVVP program has validated our SLE-VMDP paravirtualized drivers. Thus, Microsoft customers running copies of Windows* Server they have acquired and licensed from Microsoft directly can receive technical support for Windows* Server in virtualized environments. See http://www.windowsservercatalog.com/svvp.aspx for more information.

3 General installation

The SUSE Linux Enterprise Virtual Machine Driver Pack is available at https://www.suse.com/download/suse-vmdp/ for download as one binary file - a Windows self-extracting ZIP file (.exe extension). There is also an ISO image (.iso) for Windows* 2008 and newer that may be used for VMs running on KVM.

3.1 Prerequisites

  • SUSE Linux Enterprise Server 12 SP3 or later

  • Fully virtualized Windows* virtual machines

3.2 Setup.exe installation instructions for KVM and Xen

  1. Download the Windows* VMDP-WIN-VERSION.exe file directly into your Windows* VM.

  2. Launch the VMDP-WIN-VERSION.exe to extract the installation program.

  3. Launch the setup.exe from the root of the newly created directory.

  4. Accept the EULA and follow the prompts to complete the driver installation.

  5. Reboot the VM when prompted by the installation program.

3.3 Additional KVM VirtIO setup instructions

Setup.exe can be run with and without VirtIO devices present in the VM. If the devices are present in the VM when setup is run, the drivers are installed and loaded at that time. If the VirtIO devices are not present when setup is run, shut down the VM, add the VirtIO devices, and start the VM. After booting, Windows* will discover the new devices and load the previously installed drivers.

To boot a running VM on a VirtIO disk, the VirtIO disk driver must be installed on a secondary/temporary (e:) VirtIO disk. After the driver is installed and controlling the disk, shut down the VM. From virt-manager, delete the secondary VirtIO disk and delete the IDE boot disk. Now add a disk of type VirtIO or VirtIO SCSI and give it the location for the boot disk. Boot the VM. The VirtIO driver will now be controlling the boot disk.

Warning
Warning: Installation failure

Failure to install a VirtIO disk driver on a secondary disk before changing the boot disk to a VirtIO or VirtIO SCSI disk will cause the VM to crash with bug check 0x7b (inaccessible boot disk).

3.4 Installation instructions .iso

A Windows* VM may attach the SLE-VMDP iso. The ISO contains VirtIO disk drivers for Windows* 2008 and newer. It also contains the full SLE-VMDP *.exe file that contains all the VirtIO and Xen drivers for all supported Windows* platforms.

3.5 .iso for VirtIO boot disk installation at VM creation

This method is only used for VMs running on KVM and is used to install the VirtIO disk driver on the boot disk while the VM is being installed.

  1. See Section 8, “Step-by-step installation” for attaching an ISO, setting upVirtio Network, and a VirtIO disk for the Windows* VM.

  2. Add the ISO to the VM configuration.

  3. Set the boot disk to be of type VirtIO or VirtIO SCSI.

  4. Finish all other VM configuration options.

  5. Start the VM installation.

  6. For Windows 2003, at the very beginning of the installation there is an option to press F6 for an OEM SCSI disk installation. At that time, press F6.

  7. For Windows 2008* and newer, on the Where do you want to install Windows screen, select Load driver and follow the prompts. This will allow the VirtIO disk driver to be installed for the boot disk.

  8. Continue the Windows installation.

  9. After the VM is completely installed, the remaining VirtIO drivers can be installed by copying the VMDP-WIN-VERSION.exe from the iso onto the VM's disk and performing a normal VMDP-WIN-VERSION.exe installation.

3.6 Additional Xen setup instructions

Setup and the /boot_vscsi option: The Xen SLE-VMDP SCSI driver is capable of controlling a physical SCSI disk such as /dev/sdb. To run the SLE-VMDP SCSI driver on the boot disk, use setup /boot_vscsi. If the /boot_vscsi option is not used with setup, pvctrlw.exe can be used later to indicate that the SLE-VMDP SCSI driver should control the boot disk. Before using the /boot_vscsi option or pvctrlw.exe, the VM's configuration file must already contain the necessary SCSI information for the boot disk: the disk line needs to reference the physical disk, for example disk=['phy:/dev/sdb,...'] and there must be a vscsi= line that corresponds to the physical disk. SCSI devices and disks, other than the boot disk, that are to be controlled by the SLE-VMDP SCSI driver are not placed in the disk= line but are only referenced in the vscsi= line.

3.7 Uninstalling the driver pack

To uninstall the SUSE Linux Enterprise Virtual Machine Driver Pack, execute the uninstall.exe from the \Program Files\vmdp folder. Uninstall.exe will uninstall the SUSE Linux Enterprise Virtual Machine Driver Pack and remove the associated files for the hypervisor that the VM is currently running on. The /virtio and /xen parameters forces the uninstall of those drivers reqardless of the running hypervisor. When uninstalling, it is important to reboot the VM on the currently running hypervisor to all allow the uninstall to clean up additional files and registry entries on reboot.

3.8 Upgrading the driver pack

Setup.exe can be used to update most existing installations. To update an existing installation do the following:

  1. Download the VMDP-WIN-VERSION.exe to your Windows VM.

  2. Run VMDP-WIN-VERSION.exe to extract the installation program and support files into a subfolder of the folder containing VMDP-WIN-VERSION.exe.

  3. Run Setup.exe from the root of the extracted subfolder and follow the on-screen instructions.

  4. Any Found New Hardware Wizard dialogs that pop up after the update can be ignored or canceled.

With some older installations, setup cannot perform an update. In these cases, setup will inform you that the existing installation will need to be uninstalled first. Uninstall the existing installation. After being completely uninstalled, setup.exe can then be used to install the new files.

3.9 Recovering from a failure

If a failure is caused by the driver pack, you can safely remove the driver pack and return to your previous system configuration.

  1. Shut down the virtual machine and reboot in safe mode.

  2. Uninstall the driver pack (see Section 3.7, “Uninstalling the driver pack”).

3.10 Known issues

For information on known issues for this release, see the README file within the archive, or consult the SUSE Linux Enterprise Virtual Machine Driver Pack guides.

4 QEMU guest agent

This section explain what qemu-ga is and how to install it.

4.1 Qemu guest agent

SLE-VMDP setup allows for the installation of the qemu guest agent service for Windows* when invoked with the /qemu-ga command line parameter. The qemu guest agent requires the VM to be equipped with the qemu guest agent channel (see Step 4). Without the qemu guest agent channel, the qemu guest agent can install but will not load. Trying to load without the channel results in errors in the event log.

The qemu guest agent is built in the mingw environment on a Linux system with no modifications to the guest agent source code. The guest agent and supporting DLLs remain under their respective GPL licenses.

Currently many of the features of the guest agent supported in Linux VMs have not yet been implemented for Windows*. Therefore the usage of guest agent in Windows* is somewhat limited at present.

4.2 Qemu guest agent installation

Open a cmd.exe from the start menu. Go to the path that contains the qemu-ga directory. View the help with the command qemu-ga.exe --help. To install the service use:

qemu-ga.exe --service install

To start the service you can use the Windows* Service Administrative tools, or the command line:

net start qemu-ga.exe

5 SLE-VMDP and v2v support

The virt-v2v utility provides an easy way to convert virtual machines from one hypervisor format to another (for example, from Xen to KVM). In the case of Windows* guests running under Xen, this conversion process includes support for the automatic deployment of the SLE-VMDP.

5.1 SLE-VMDP RPM package

The virt-v2v-vmdp RPM is a repackaging of the Windows* SLE-VMDP drivers into a directory structure usable by the virt-v2v utility. After being installed on a KVM host, any Windows* guests migrated to that host using the virt-v2v process can have the SLE-VMDP drivers automatically installed.

By default, virt-v2v will first check for the existence of the SLE-VMDP on the Windows* guest undergoing conversion. If found on the guest, and the virt-v2v-vmdp RPM is installed on the target host (the machine running the virt-v2v process), virt-v2v will automatically install the SLE-VMDP drivers as part of the conversion. This driver reinstallation is required to replace Xen specific drivers with virtio drivers for use with KVM.

5.2 v2v --vmdp parameter

Installation of the SLE-VMDP can be manually influenced during virt-v2v migration using the –-vmdp parameter:

  • --vmdp=auto: only install the SLE-VMDP if already installed on source image

  • --vmdp=always: always install the SLE-VMDP during Windows* guest conversions

  • --vmdp=never: never install the SLE-VMDP

In addition to installing the drivers included with the virt-v2v-vmdp RPM, it is possible for virt-v2v to copy the SLE-VMDP setup program itself to the converted guest. While not required, if the virt-v2v host is configured to perform this, the SLE-VMDP setup program will be automatically ran upon first login. This will ensure the install/uninstall program is registered with Windows* and any residual Xen drivers are correctly uninstalled. To allow for this capability, the SLE-VMDP setup program (VMDP-WIN-VERSION.exe) must be copied to /var/lib/virt-v2v/software/windows on the virt-v2v host. After copying the executable in place, ensure the setup executable name is correctly specified in /var/lib/virt-v2v/virt-v2v.db as follows:

   <!-- SUSE Virtual Machine Driver Pack (VMDP) setup program -->
   <app os='windows' name='vmdp'>
     <path>windows/VMDP-WIN-VERSION.exe</path>
   </app>

The virt-v2v-vmdp RPM is available in the same download location as the SLE-VMDP setup program.

6 Best practices

This section describes best practices, usage and potential problems using SUSE Linux Enterprise Virtual Machine Driver Pack.

6.1 Avoiding problems with the drivers

To avoid problems and potential failure of the device drivers in the driver pack, you should avoid the following actions:

  • Using the Device Manager to manage (update, disable, uninstall, etc.) the device drivers in the driver pack.

  • Deleting driver files manually. Always use the uninstall utility (see Section 3.7, “Uninstalling the driver pack”).

  • Uninstalling the driver pack with the installation CD attached to the virtual machine.

  • Canceling the installation when you see a security alert that indicates that the bus driver has not been properly signed. Click Yes to continue the installation.

  • Upgrading the Linux* kernel of the virtual machine host without upgrading the driver pack at the same time.

  • Installing or uninstalling the driver pack by any other process than what is documented in this guide (see Section 3.7, “Uninstalling the driver pack” and Section 3.7, “Uninstalling the driver pack”).

6.2 Before the installation

Before installing SUSE Linux Enterprise Virtual Machine Driver Pack in your production environment, we strongly recommend that you run it in a test environment to ensure that it functions properly with your system.

6.3 Network configuration

Do not give the server a fixed IP address before installing the driver pack, otherwise you need to switch to a different intermediate IP address before finishing the installation.

7 Advanced installation options

How to deal with SLE-VMDP install and uninstall.

7.1 Expert iInstallation

To help with automated installations, setup.exe currently has the following parameters:

  • /auto_reboot

  • /no_reboot

  • /eula_accepted

  • /force

  • /reset_net_params

  • /xen

  • /virtio

The default is to install the drivers for the hypervisor that the VM is currently running on. Howerver, the Xen and virtio drivers can be installed at the same time if both the /xen and /virtio parameters are given.

  • /auto_reboot: will cause the Windows* VM to automatically reboot after the setup has completed

  • /no_reboot: will prevent the reboot prompt from being displayed after the setup has completed

  • /eula_accepted: implies that the EULA has been read, accepted, and agreed to in all aspects. Accepting the EULA in this manner will therefore prevent the EULA acceptance dialog from being displayed during the setup process.

  • /force: will force the installation of the drivers and overwrite any previous drivers that may have been installed

  • /reset_net_params: will remove any net driver parameters that are still set to the default values. This is useful in upgrades when a net driver's parameter default changes. This will allow the new default to be used

  • /xen: will install the Xen drivers

  • /virtio: will install the virtio drivers

Additional options when running on a Xen hypervisor are:

  • /boot_vscsi: will configure the Windows* VM to boot off a supplied SCSI device. To use the /boot_vscsi option, the VM's configuration file must contain a vscsi= line and a disk = [phy:/...] line

  • /xvdisk: tells xenblk to only control disks of type xvd

  • /netfront: tells xennet to only control NICs of type=netfront

Advanced parameters of the Setup.exe command:

  • /w2k3, /w2k8, /win7, /win8, /win81, /win10 and /win10-2004 : are mutually exclusive. They allow the specified drivers to be installed in the running operating system, if compatible. These parameters are for testing purposes only and are not supported

7.2 Uninstall expert mode

Uninstall has some parameters:

  • /auto_reboot: will cause the Windows* VM to automatically reboot at the completion of the uninstall

  • /virtio: will uninstall virtio drivers

  • /xen: will uninstall Xen drivers

8 Step-by-step installation

This section describes how to configure the Windows* VM under virt-manager and how to install the VMDP while installing Windows Server 2022. This example is an installation of a KVM host. Using the ISO is only valid on KVM hosts.

8.1 Virt-manager for Windows Server 2022

  1. The virtio Network interface

  2. The SLE-VMDP Virtual CD-ROM ISO:

  3. The Windows* VM Virtio disk:

  4. The Windows* VM Qemu-ga Channel device with Device parameters set to: org.qemu.guest_agent.0

8.2 Windows Server 2022 installation

  1. Boot the Windows Server 2022 installation CD-ROM. The Select driver to be installed dialog will be displayed:

  2. Browse to the directory that contains the SLE-VMDP driver:

  3. Select the SUSE driver:

  4. Finish the installation of Windows Server 2022.

  5. On first boot, go to the directory which contains the SLE-VMDP driver (this should be a CD-ROM as defined in virt-manager). The VMDP-xxx.exe needs to be copied from the CD (ISO) onto the hard disk and expanded. Then double-click the Setup.exe program.

    A pop-up window will appear.

  6. To confirm the action, click Yes:

  7. Accept the End User License Agreement:

  8. The program will install the SUSE Drivers for Windows Server 2022:

  9. Restart your computer:

  10. Use the Windows device manager to check if all drivers have been successfully installed:

Print this page