Commit 849f8583 authored by Li Bin's avatar Li Bin Committed by Martin K. Petersen

scsi: sg: add sg_remove_request in sg_common_write

If the dxfer_len is greater than 256M then the request is invalid and we
need to call sg_remove_request in sg_common_write.

Link: https://lore.kernel.org/r/1586777361-17339-1-git-send-email-huawei.libin@huawei.com
Fixes: f930c704 ("scsi: sg: only check for dxfer_len greater than 256M")
Acked-by: default avatarDouglas Gilbert <dgilbert@interlog.com>
Signed-off-by: default avatarLi Bin <huawei.libin@huawei.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 066f79a5
...@@ -793,8 +793,10 @@ sg_common_write(Sg_fd * sfp, Sg_request * srp, ...@@ -793,8 +793,10 @@ sg_common_write(Sg_fd * sfp, Sg_request * srp,
"sg_common_write: scsi opcode=0x%02x, cmd_size=%d\n", "sg_common_write: scsi opcode=0x%02x, cmd_size=%d\n",
(int) cmnd[0], (int) hp->cmd_len)); (int) cmnd[0], (int) hp->cmd_len));
if (hp->dxfer_len >= SZ_256M) if (hp->dxfer_len >= SZ_256M) {
sg_remove_request(sfp, srp);
return -EINVAL; return -EINVAL;
}
k = sg_start_req(srp, cmnd); k = sg_start_req(srp, cmnd);
if (k) { if (k) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment