[SCSI] iscsi_transport, qla4xxx: have class lookup host for drivers
We are going to be adding more host level sysfs attrs and set_params, so this patch has them take a scsi_host instead of either a scsi_host or host no. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Cc: David C Somayajulu <david.somayajulu@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
这个提交包含在:
@@ -945,15 +945,26 @@ static int
|
||||
iscsi_tgt_dscvr(struct iscsi_transport *transport,
|
||||
struct iscsi_uevent *ev)
|
||||
{
|
||||
struct Scsi_Host *shost;
|
||||
struct sockaddr *dst_addr;
|
||||
int err;
|
||||
|
||||
if (!transport->tgt_dscvr)
|
||||
return -EINVAL;
|
||||
|
||||
shost = scsi_host_lookup(ev->u.tgt_dscvr.host_no);
|
||||
if (IS_ERR(shost)) {
|
||||
printk(KERN_ERR "target discovery could not find host no %u\n",
|
||||
ev->u.tgt_dscvr.host_no);
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
|
||||
dst_addr = (struct sockaddr *)((char*)ev + sizeof(*ev));
|
||||
return transport->tgt_dscvr(ev->u.tgt_dscvr.type,
|
||||
ev->u.tgt_dscvr.host_no,
|
||||
ev->u.tgt_dscvr.enable, dst_addr);
|
||||
err = transport->tgt_dscvr(shost, ev->u.tgt_dscvr.type,
|
||||
ev->u.tgt_dscvr.enable, dst_addr);
|
||||
scsi_host_put(shost);
|
||||
return err;
|
||||
}
|
||||
|
||||
static int
|
||||
|
在新工单中引用
屏蔽一个用户