HomeFreeBSD

Rework the logic of sequential SCSI LUN scanner.

Description

Rework the logic of sequential SCSI LUN scanner.

Previous logic was not differentiating disconnected LUNs and absent targets.
That made it to stop scan if LUN 0 was not found for any reason. That made
problematic, for example, using iSCSI targets declaring SPC-2 compliance and
having no LUN 0 configured.

The new logic continues sequential LUN scan if:

  • we have more configured LUNs that need recheck;
  • this LUN is connected and its SCSI version allows more LUNs;
  • this LUN is disconnected, its SCSI version allows more LUNs and we guess they may be connected (we haven't scanned first 8 LUNs yet or kern.cam.cam_srch_hi sysctl is set to scan more).

Reported by: trasz
MFC after: 1 month

Details

Provenance
mavAuthored on
Parents
rS272400: Merge head r258543 through r272399.
Branches
Unknown
Tags
Unknown

Event Timeline