iscsi-target: Don't over-allocate sendtargets text resp buffer
No reason to allocate a buffer of size bigger than initiator MaxRecvDataSegmentLength. Moreover, we need to respect initiator MRDSL and not send a larger payload. Signed-off-by: Sagi Grimberg <sagig@mellanox.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
parent
c1e34b6404
commit
be7dcfb683
@ -3397,7 +3397,7 @@ iscsit_build_sendtargets_response(struct iscsi_cmd *cmd,
|
|||||||
unsigned char buf[ISCSI_IQN_LEN+12]; /* iqn + "TargetName=" + \0 */
|
unsigned char buf[ISCSI_IQN_LEN+12]; /* iqn + "TargetName=" + \0 */
|
||||||
unsigned char *text_in = cmd->text_in_ptr, *text_ptr = NULL;
|
unsigned char *text_in = cmd->text_in_ptr, *text_ptr = NULL;
|
||||||
|
|
||||||
buffer_len = max(conn->conn_ops->MaxRecvDataSegmentLength,
|
buffer_len = min(conn->conn_ops->MaxRecvDataSegmentLength,
|
||||||
SENDTARGETS_BUF_LIMIT);
|
SENDTARGETS_BUF_LIMIT);
|
||||||
|
|
||||||
payload = kzalloc(buffer_len, GFP_KERNEL);
|
payload = kzalloc(buffer_len, GFP_KERNEL);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user