James: What do you think of removing shost->scan_mutex and replacing it with a "visibility mutex" in each scsi_target and scsi_device? This new mutex would be held whenever the target/device was undergoing a change of visibility or was gaining a new child (reap_ref would be protected by the new mutex instead of by the host lock). Those are the actions which really need to be serialized. The same general scheme would work for both targets and devices, since they employ the same "allocate and initialize a new structure, see if an older one already exists, then either use the old one or link in and use the new one" approach. I'm not sure if this really addresses all your misgivings about the scan_mutex. It does have the advantage of not forcing all activities below a given host through a single funnel. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html