diff options
| -rw-r--r-- | drivers/infiniband/ulp/isert/ib_isert.c | 2 | ||||
| -rw-r--r-- | drivers/target/iscsi/iscsi_target.c | 14 | ||||
| -rw-r--r-- | include/target/iscsi/iscsi_transport.h | 3 |
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 | ||
| 3392 | static int iscsit_build_sendtargets_response(struct iscsi_cmd *cmd) | 3392 | static int |
| 3393 | iscsit_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 | ||
| 3518 | int | 3523 | int |
| 3519 | iscsit_build_text_rsp(struct iscsi_cmd *cmd, struct iscsi_conn *conn, | 3524 | iscsit_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 *, | |||
| 70 | extern void iscsit_build_task_mgt_rsp(struct iscsi_cmd *, struct iscsi_conn *, | 70 | extern void iscsit_build_task_mgt_rsp(struct iscsi_cmd *, struct iscsi_conn *, |
| 71 | struct iscsi_tm_rsp *); | 71 | struct iscsi_tm_rsp *); |
| 72 | extern int iscsit_build_text_rsp(struct iscsi_cmd *, struct iscsi_conn *, | 72 | extern 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); | ||
| 74 | extern void iscsit_build_reject(struct iscsi_cmd *, struct iscsi_conn *, | 75 | extern void iscsit_build_reject(struct iscsi_cmd *, struct iscsi_conn *, |
| 75 | struct iscsi_reject *); | 76 | struct iscsi_reject *); |
| 76 | extern int iscsit_build_logout_rsp(struct iscsi_cmd *, struct iscsi_conn *, | 77 | extern int iscsit_build_logout_rsp(struct iscsi_cmd *, struct iscsi_conn *, |
