Message ID | 20210615105218.214-1-xieyongji@bytedance.com |
---|---|
State | New |
Headers | show |
Series | [v2] virtio_scsi: Add validation for residual bytes from response | expand |
Xie, > This ensures that the residual bytes in response (might come > from an untrusted device) will not exceed the data buffer length. Applied to 5.14/scsi-staging, thanks! -- Martin K. Petersen Oracle Linux Engineering
diff --git a/drivers/scsi/virtio_scsi.c b/drivers/scsi/virtio_scsi.c index b9c86a7e3b97..2badc3c80d73 100644 --- a/drivers/scsi/virtio_scsi.c +++ b/drivers/scsi/virtio_scsi.c @@ -97,7 +97,7 @@ static inline struct Scsi_Host *virtio_scsi_host(struct virtio_device *vdev) static void virtscsi_compute_resid(struct scsi_cmnd *sc, u32 resid) { if (resid) - scsi_set_resid(sc, resid); + scsi_set_resid(sc, min(resid, scsi_bufflen(sc))); } /*