[SCSI] scsi_transport_fc: Introduce disable_target_scan flag
This change has already been discussed on linux-scsi: http://marc.info/?t=118771096400003 http://marc.info/?t=118760913100005 Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Acked-by: James Smart <James.Smart@Emulex.Com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>wifi-calibration
parent
6b76a72141
commit
03f002f778
|
@ -2988,10 +2988,12 @@ fc_scsi_scan_rport(struct work_struct *work)
|
||||||
struct fc_rport *rport =
|
struct fc_rport *rport =
|
||||||
container_of(work, struct fc_rport, scan_work);
|
container_of(work, struct fc_rport, scan_work);
|
||||||
struct Scsi_Host *shost = rport_to_shost(rport);
|
struct Scsi_Host *shost = rport_to_shost(rport);
|
||||||
|
struct fc_internal *i = to_fc_internal(shost->transportt);
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
if ((rport->port_state == FC_PORTSTATE_ONLINE) &&
|
if ((rport->port_state == FC_PORTSTATE_ONLINE) &&
|
||||||
(rport->roles & FC_PORT_ROLE_FCP_TARGET)) {
|
(rport->roles & FC_PORT_ROLE_FCP_TARGET) &&
|
||||||
|
!(i->f->disable_target_scan)) {
|
||||||
scsi_scan_target(&rport->dev, rport->channel,
|
scsi_scan_target(&rport->dev, rport->channel,
|
||||||
rport->scsi_target_id, SCAN_WILD_CARD, 1);
|
rport->scsi_target_id, SCAN_WILD_CARD, 1);
|
||||||
}
|
}
|
||||||
|
|
|
@ -632,6 +632,8 @@ struct fc_function_template {
|
||||||
unsigned long show_host_fabric_name:1;
|
unsigned long show_host_fabric_name:1;
|
||||||
unsigned long show_host_symbolic_name:1;
|
unsigned long show_host_symbolic_name:1;
|
||||||
unsigned long show_host_system_hostname:1;
|
unsigned long show_host_system_hostname:1;
|
||||||
|
|
||||||
|
unsigned long disable_target_scan:1;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue