[SCSI] bnx2i: Added mutex lock protection to conn_get_param
Added net_dev mutex lock protection before accessing the csk parameters. Signed-off-by: Eddie Wai <eddie.wai@broadcom.com> Reviewed-by: Benjamin Li <benli@broadcom.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
parent
252e44805b
commit
7a2962c77c
1 changed files with 10 additions and 3 deletions
|
@ -1461,21 +1461,28 @@ static int bnx2i_conn_get_param(struct iscsi_cls_conn *cls_conn,
|
|||
struct bnx2i_conn *bnx2i_conn = conn->dd_data;
|
||||
int len = 0;
|
||||
|
||||
if (!(bnx2i_conn && bnx2i_conn->ep && bnx2i_conn->ep->hba))
|
||||
goto out;
|
||||
|
||||
switch (param) {
|
||||
case ISCSI_PARAM_CONN_PORT:
|
||||
if (bnx2i_conn->ep)
|
||||
mutex_lock(&bnx2i_conn->ep->hba->net_dev_lock);
|
||||
if (bnx2i_conn->ep->cm_sk)
|
||||
len = sprintf(buf, "%hu\n",
|
||||
bnx2i_conn->ep->cm_sk->dst_port);
|
||||
mutex_unlock(&bnx2i_conn->ep->hba->net_dev_lock);
|
||||
break;
|
||||
case ISCSI_PARAM_CONN_ADDRESS:
|
||||
if (bnx2i_conn->ep)
|
||||
mutex_lock(&bnx2i_conn->ep->hba->net_dev_lock);
|
||||
if (bnx2i_conn->ep->cm_sk)
|
||||
len = sprintf(buf, "%pI4\n",
|
||||
&bnx2i_conn->ep->cm_sk->dst_ip);
|
||||
mutex_unlock(&bnx2i_conn->ep->hba->net_dev_lock);
|
||||
break;
|
||||
default:
|
||||
return iscsi_conn_get_param(cls_conn, param, buf);
|
||||
}
|
||||
|
||||
out:
|
||||
return len;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue