Microsoft KB Archive/141988

{|
 * width="100%"|

BUG: IOCTL_SCSI_RESCAN_BUS Finds New TargetIds, Not New LUNs

 * }

Q141988

-

The information in this article applies to:


 * Microsoft Win32 Device Driver Kit (DDK) for Windows NT, versions 3.5, 3.51

-

SYMPTOMS
When the SCSIPORT driver rescans the SCSI bus because of an IOCTL_SCSI_RESCAN_BUS request, the SCSIPORT driver only finds new TargetIds, not new LUNs. If the TargetId matches an existing TargetId, SCSIPORT will not recognize a new device even if the LUNs are different.

Example One - Rescan Fails
Consider a system with TargetId 1 LUN 0 active. After the system has been booted, TargetId 1 LUN 1 is powered up and becomes accessible. If SCSIPORT rescans the bus, this new device will not be located because the TargetId is the same as an existing TargetId.

Example Two - Rescan Succeeds
Consider a system with TargetId 1 LUN 0 active. After the system has been booted, TargetId 2 LUN 0 is powered up and becomes accessible. If SCSIPORT rescans the bus, the new device will be located by SCSIPORT.

CAUSE
When SCSIPORT gets the IOCTL_SCSI_RESCAN_BUS command, it only checks that the TargetId doesn't match an existing TargetId rather than checking that both the TargetId and LUN are not currently known.

STATUS
Microsoft has confirmed this to be a problem in the SCSIPORT driver. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.