diff --git a/scst/src/dev_handlers/scst_vdisk.c b/scst/src/dev_handlers/scst_vdisk.c index 9ec6e4af6..884f6d827 100644 --- a/scst/src/dev_handlers/scst_vdisk.c +++ b/scst/src/dev_handlers/scst_vdisk.c @@ -3269,6 +3269,8 @@ static void fileio_async_complete(struct kiocb *iocb, long ret, long ret2) struct vdisk_cmd_params *p = container_of(iocb, typeof(*p), async.iocb); struct scst_cmd *cmd = p->cmd; + WARN_ON_ONCE(ret >= 0 && ret != cmd->bufflen); + if (ret < 0 && scst_cmd_get_data_direction(cmd) & SCST_DATA_WRITE) scst_set_cmd_error(cmd,