Skip to contentSkip to conversation

BLIST_SINGLELUN

DISCUSSION Christoph Hellwig 2 participants 2 messages Mar 18, 2014 – Mar 19, 2014 SCSI

lore
Share & tools
lore
#0 lore raw

Does anyone still have a device listed in the blacklist with BLIST_SINGLELUN?

Quoted 1 line

From reading the source code I'm not sure the code actually works as

expected currently, or did for a long time.

While scsi_target_queue_ready makes sure to only queue commands to the right lun as long as starget_sdev_user is set, scsi_single_lun_run clears starget_sdev_user as soon as the any command completes on a target marked with the flag, allowing the following situation:

- cmd 1 lun 0 submitted
- cmd 2 lun 0 submitted
- cmd 1 lun 0 completed
- cmd 9 lun 1 submitted

and thus having commands for two luns in flight at the same time if we hit the narrow enough race of entering the scsi_request_fn for lun 1 before scsi_single_lun_run does so for lun 0.

#1 lore raw
Quoted 11 lines · Christoph Hellwig

Does anyone still have a device listed in the blacklist with BLIST_SINGLELUN?

From reading the source code I'm not sure the code actually works as expected currently, or did for a long time.

While scsi_target_queue_ready makes sure to only queue commands to the right lun as long as starget_sdev_user is set, scsi_single_lun_run clears starget_sdev_user as soon as the any command completes on a target marked with the flag, allowing the following situation:

Quoted 8 lines

- cmd 1 lun 0 submitted
- cmd 2 lun 0 submitted
- cmd 1 lun 0 completed
- cmd 9 lun 1 submitted

and thus having commands for two luns in flight at the same time if we hit the narrow enough race of entering the scsi_request_fn for lun 1 before scsi_single_lun_run does so for lun 0.

You know what, I've been looking at that, too.
And indeed, it looks like you're right.

I do wonder, though, why we don't do away with the starget_sdev_user and just set max_target_blocked to 1 ...

Cheers,

Hannes

Signature · 8 lines
Dr. Hannes Reinecke		      zSeries & Storage
[email protected]			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html