diff options
Diffstat (limited to 'drivers/scsi/qla4xxx/ql4_os.c')
| -rw-r--r-- | drivers/scsi/qla4xxx/ql4_os.c | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c index 01308e7ef2ae..29cd4b90ebed 100644 --- a/drivers/scsi/qla4xxx/ql4_os.c +++ b/drivers/scsi/qla4xxx/ql4_os.c | |||
| @@ -54,8 +54,9 @@ static void qla4xxx_config_dma_addressing(struct scsi_qla_host *ha); | |||
| 54 | /* | 54 | /* |
| 55 | * iSCSI template entry points | 55 | * iSCSI template entry points |
| 56 | */ | 56 | */ |
| 57 | static int qla4xxx_tgt_dscvr(enum iscsi_tgt_dscvr type, uint32_t host_no, | 57 | static int qla4xxx_tgt_dscvr(struct Scsi_Host *shost, |
| 58 | uint32_t enable, struct sockaddr *dst_addr); | 58 | enum iscsi_tgt_dscvr type, uint32_t enable, |
| 59 | struct sockaddr *dst_addr); | ||
| 59 | static int qla4xxx_conn_get_param(struct iscsi_cls_conn *conn, | 60 | static int qla4xxx_conn_get_param(struct iscsi_cls_conn *conn, |
| 60 | enum iscsi_param param, char *buf); | 61 | enum iscsi_param param, char *buf); |
| 61 | static int qla4xxx_sess_get_param(struct iscsi_cls_session *sess, | 62 | static int qla4xxx_sess_get_param(struct iscsi_cls_session *sess, |
| @@ -243,21 +244,15 @@ static int qla4xxx_conn_get_param(struct iscsi_cls_conn *conn, | |||
| 243 | return len; | 244 | return len; |
| 244 | } | 245 | } |
| 245 | 246 | ||
| 246 | static int qla4xxx_tgt_dscvr(enum iscsi_tgt_dscvr type, uint32_t host_no, | 247 | static int qla4xxx_tgt_dscvr(struct Scsi_Host *shost, |
| 247 | uint32_t enable, struct sockaddr *dst_addr) | 248 | enum iscsi_tgt_dscvr type, uint32_t enable, |
| 249 | struct sockaddr *dst_addr) | ||
| 248 | { | 250 | { |
| 249 | struct scsi_qla_host *ha; | 251 | struct scsi_qla_host *ha; |
| 250 | struct Scsi_Host *shost; | ||
| 251 | struct sockaddr_in *addr; | 252 | struct sockaddr_in *addr; |
| 252 | struct sockaddr_in6 *addr6; | 253 | struct sockaddr_in6 *addr6; |
| 253 | int ret = 0; | 254 | int ret = 0; |
| 254 | 255 | ||
| 255 | shost = scsi_host_lookup(host_no); | ||
| 256 | if (IS_ERR(shost)) { | ||
| 257 | printk(KERN_ERR "Could not find host no %u\n", host_no); | ||
| 258 | return -ENODEV; | ||
| 259 | } | ||
| 260 | |||
| 261 | ha = (struct scsi_qla_host *) shost->hostdata; | 256 | ha = (struct scsi_qla_host *) shost->hostdata; |
| 262 | 257 | ||
| 263 | switch (type) { | 258 | switch (type) { |
| @@ -281,8 +276,6 @@ static int qla4xxx_tgt_dscvr(enum iscsi_tgt_dscvr type, uint32_t host_no, | |||
| 281 | default: | 276 | default: |
| 282 | ret = -ENOSYS; | 277 | ret = -ENOSYS; |
| 283 | } | 278 | } |
| 284 | |||
| 285 | scsi_host_put(shost); | ||
| 286 | return ret; | 279 | return ret; |
| 287 | } | 280 | } |
| 288 | 281 | ||
