How to Resolve the Failure to Load a Disk Driver for a Windows VM

Publication Date:  2015-03-10 Views:  6285 Downloads:  30
Issue Description
The disk space of a Windows virtual machine (VM) is insufficient. Under such a circumstance, a data disk is mounted. However, the new disk is not displayed in Disk Management although the portal indicates that the disk has been mounted successfully. In the VM, it is indicated that loading the disk driver fails, as shown in Figure 1.

Figure 1 Disk driver loading failure


Handling Process
1. In the VM in question, copy the disk.inf file in C:\Windows\System32\DriverStore\FileRepository\disk.inf_x86_neutral_b431b61a11f8df6c and the volume.inf file in C:\Windows\System32\DriverStore\FileRepository\volume.inf_x86_neutral_29364d30156a24ca to C:\Windows\inf.

2. In Device Manager, right-click XEN PV DISK SCSI Disk Device and choose Update Driver Software.

3. In the Update Driver Software dialog box, click Search automatically for updated driver software.

4. In Disk Management, format the disk and assign a letter to the disk after the driver software is updated.
Root Cause
1. The drivers of XEN PV DISK SCSI Disk Device are disk.sys and partmgr.sys, as shown in Figure 2. Both drivers are Windows system drivers but not xenvbd drivers. Check the two drivers in C:\Windows\System32\drivers. No exception is found. Compare the Windows services and processes of a normal VM with those of the VM in question. No exception is found. Enter the safe mode and find that the disk driver cannot be loaded normally. Hence, it can be ruled out that this problem is caused by application software. It is suspected that the Windows OS is abnormal and thus loading driver files disk.sys and partmgr.sys fails.

Figure 2 Details of the two driver files



2. Check the system log of the VM. The log shows that the driver to be loaded is NULL Driver (as shown in Figure 3), indicating that the driver does not exist. However, the driver does exist in C:\Windows\System32\drivers. Hence, the cause analysis should now focus on why no driver is detected when the driver is being loaded.

Figure 3 NULL Driver



3. According to the loading process of Windows OS, the OS checks for the *.inf driver installation file (disk.inf for a disk drive) in C:\Windows\inf first. The disk.inf file specifies the path of the corresponding binary driver file, that is, disk.sys in C:\Windows\System32\drivers, as shown in Figure 4.

Figure 4 Path of the corresponding binary driver file



4. Check for disk.inf in C:\Windows\inf. The file is missing. Copy the disk.inf file in the backup directory C:\Windows\System32\DriverStore\FileRepository\disk.inf_x86_neutral_b431b61a11f8df6c to C:\Windows\inf. In Device Manager, right-click XEN PV DISK SCSI Disk Device and choose Update Driver Software. In the Update Driver Software dialog box, click Search automatically for updated driver software. The driver is then loaded successfully. The new disk is displayed in Disk Management. However, formatting the disk stops unexpectedly and an error message is reported, as shown in Figure 5.

Figure 5 Error message return during disk formatting



5. Check the system event log. The log shows that the driver to be loaded for logical volumes is also NULL Driver (as shown in Figure 6). Check for the volume.inf file in C:\Windows\inf. The file is missing and an unknown volume device is displayed in Device Manager, as shown in Figure 7.

Figure 6 NULL Driver



Figure 7 Unknown device



6. Copy the volume.inf file in C:\Windows\System32\DriverStore\FileRepository\volume.inf_x86_neutral_29364d30156a24ca to C:\Windows\inf. Follow the instructions provided in step 4 to update driver files. Then the new disk can be formatted successfully.
To sum up, the disk.inf and volume.inf files are missing in C:\Windows\inf and thus the driver for the new disk cannot be loaded by installing driver files.

END