aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/infiniband/ulp/isert/ib_isert.c2
-rw-r--r--drivers/target/iscsi/iscsi_target.c14
-rw-r--r--include/target/iscsi/iscsi_transport.h3
3 files changed, 13 insertions, 6 deletions
diff --git a/drivers/infiniband/ulp/isert/ib_isert.c b/drivers/infiniband/ulp/isert/ib_isert.c
index 647a5e2beee4..ba619fa84662 100644
--- a/drivers/infiniband/ulp/isert/ib_isert.c
+++ b/drivers/infiniband/ulp/isert/ib_isert.c
@@ -2318,7 +2318,7 @@ isert_put_text_rsp(struct iscsi_cmd *cmd, struct iscsi_conn *conn)
2318 int rc; 2318 int rc;
2319 2319
2320 isert_create_send_desc(isert_conn, isert_cmd, &isert_cmd->tx_desc); 2320 isert_create_send_desc(isert_conn, isert_cmd, &isert_cmd->tx_desc);
2321 rc = iscsit_build_text_rsp(cmd, conn, hdr); 2321 rc = iscsit_build_text_rsp(cmd, conn, hdr, ISCSI_INFINIBAND);
2322 if (rc < 0) 2322 if (rc < 0)
2323 return rc; 2323 return rc;
2324 2324
diff --git a/drivers/target/iscsi/iscsi_target.c b/drivers/target/iscsi/iscsi_target.c
index e0d98344e4bd..b87721a01b74 100644
--- a/drivers/target/iscsi/iscsi_target.c
+++ b/drivers/target/iscsi/iscsi_target.c
@@ -3389,7 +3389,9 @@ static bool iscsit_check_inaddr_any(struct iscsi_np *np)
3389 3389
3390#define SENDTARGETS_BUF_LIMIT 32768U 3390#define SENDTARGETS_BUF_LIMIT 32768U
3391 3391
3392static int iscsit_build_sendtargets_response(struct iscsi_cmd *cmd) 3392static int
3393iscsit_build_sendtargets_response(struct iscsi_cmd *cmd,
3394 enum iscsit_transport_type network_transport)
3393{ 3395{
3394 char *payload = NULL; 3396 char *payload = NULL;
3395 struct iscsi_conn *conn = cmd->conn; 3397 struct iscsi_conn *conn = cmd->conn;
@@ -3466,6 +3468,9 @@ static int iscsit_build_sendtargets_response(struct iscsi_cmd *cmd)
3466 struct iscsi_np *np = tpg_np->tpg_np; 3468 struct iscsi_np *np = tpg_np->tpg_np;
3467 bool inaddr_any = iscsit_check_inaddr_any(np); 3469 bool inaddr_any = iscsit_check_inaddr_any(np);
3468 3470
3471 if (np->np_network_transport != network_transport)
3472 continue;
3473
3469 if (!target_name_printed) { 3474 if (!target_name_printed) {
3470 len = sprintf(buf, "TargetName=%s", 3475 len = sprintf(buf, "TargetName=%s",
3471 tiqn->tiqn); 3476 tiqn->tiqn);
@@ -3517,11 +3522,12 @@ eob:
3517 3522
3518int 3523int
3519iscsit_build_text_rsp(struct iscsi_cmd *cmd, struct iscsi_conn *conn, 3524iscsit_build_text_rsp(struct iscsi_cmd *cmd, struct iscsi_conn *conn,
3520 struct iscsi_text_rsp *hdr) 3525 struct iscsi_text_rsp *hdr,
3526 enum iscsit_transport_type network_transport)
3521{ 3527{
3522 int text_length, padding; 3528 int text_length, padding;
3523 3529
3524 text_length = iscsit_build_sendtargets_response(cmd); 3530 text_length = iscsit_build_sendtargets_response(cmd, network_transport);
3525 if (text_length < 0) 3531 if (text_length < 0)
3526 return text_length; 3532 return text_length;
3527 3533
@@ -3559,7 +3565,7 @@ static int iscsit_send_text_rsp(
3559 u32 tx_size = 0; 3565 u32 tx_size = 0;
3560 int text_length, iov_count = 0, rc; 3566 int text_length, iov_count = 0, rc;
3561 3567
3562 rc = iscsit_build_text_rsp(cmd, conn, hdr); 3568 rc = iscsit_build_text_rsp(cmd, conn, hdr, ISCSI_TCP);
3563 if (rc < 0) 3569 if (rc < 0)
3564 return rc; 3570 return rc;
3565 3571
diff --git a/include/target/iscsi/iscsi_transport.h b/include/target/iscsi/iscsi_transport.h
index 33b487b5da92..daef9daa500c 100644
--- a/include/target/iscsi/iscsi_transport.h
+++ b/include/target/iscsi/iscsi_transport.h
@@ -70,7 +70,8 @@ extern void iscsit_build_nopin_rsp(struct iscsi_cmd *, struct iscsi_conn *,
70extern void iscsit_build_task_mgt_rsp(struct iscsi_cmd *, struct iscsi_conn *, 70extern void iscsit_build_task_mgt_rsp(struct iscsi_cmd *, struct iscsi_conn *,
71 struct iscsi_tm_rsp *); 71 struct iscsi_tm_rsp *);
72extern int iscsit_build_text_rsp(struct iscsi_cmd *, struct iscsi_conn *, 72extern int iscsit_build_text_rsp(struct iscsi_cmd *, struct iscsi_conn *,
73 struct iscsi_text_rsp *); 73 struct iscsi_text_rsp *,
74 enum iscsit_transport_type);
74extern void iscsit_build_reject(struct iscsi_cmd *, struct iscsi_conn *, 75extern void iscsit_build_reject(struct iscsi_cmd *, struct iscsi_conn *,
75 struct iscsi_reject *); 76 struct iscsi_reject *);
76extern int iscsit_build_logout_rsp(struct iscsi_cmd *, struct iscsi_conn *, 77extern int iscsit_build_logout_rsp(struct iscsi_cmd *, struct iscsi_conn *,