Summary
If your system is using a storage device in addition to an ioDrive, you may encounter the system showing duplicate SCSI IDs causing conflicts. The SCSI ID for the ioMemory devices is computed based on the fct index number, which is stored in the fctDevMap registry key and may be modified if necessary. Check the disks section in the msinfo32 output to see the SCSI IDs in use (sysinfo.txt in a fio-bugreport). You can resolve the conflict by changing the ioMemory device fct index number. This will make it possible to give each ioMemory device a unique SCSI ID.
Affected Versions
VSL version 3.2.2 and later
Resolution
Change the fctDevMap registry key to assign the ioDrive a unique SCSI ID. The registry key uses decimal numbers for the PCI bus number, despite the utilities that print-out the value in hexadecimal. The registry key format is the PCI address (in decimal) followed by the virtual controller number (or 0 if virtual controllers are not enabled/supported on that device).
000:011:00.0-0 is for <domain 0>:<bus 0xb>:<device 0>.<function 0>-<virtual controller 0>
Determine the PCIe bus number
The fio-status utility displays the bus number as a hexidecimal value. You must convert that value into a decimal value. For example, the utility may return a value of 0xb. This stands for bus 011. You should also verify the fct value (for example, fct0).
Change the fctDevMap registry key
For affected versions, it is possible to change the fct index number that the ioDrive will use on the system. This will ensure a unique SCSI ID (Bus, Logical Unit, Port, Target). The Logical Unit is set to the fct index number of the VSL drive. Change the value of a Windows registry entry under the following key or path:
HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\services\\fiodrive\\fctDevMapOpen up the Windows registry editor regedit.exe,and navigate to the location above. Note that there is one entry per drive. The registry entry visible in the right pane will be named with the PCIe bus number (e.g. 000:011:00.0-0). The value stored in the entry is the fct index number.The fct index must be between 0 and 254 or the results are undefined. Once this change is done, restart your Windows system for it to take effect. The change to the registry will be preserved across a system restart.
![]() |
Unused entries may be deleted,but only one device entry may have the same fct index or the results are undefined. |
Be aware that if a new drive is added to the system, the numbering of the fct index will start at the lowest number again, or fct0. Another registry modification would be necessary in this case.
