mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-22 09:22:37 +00:00
nvme: fix uninitialized prp2 value on small transfers
The value of iod->first_dma ends up as prp2 in NVMe commands. In case there is not enough data to cross a page boundary, iod->first_dma is never initialized and contains random data. Comply with the NVMe specification and fill in 0 in that case. Signed-off-by: Jan H. Schönherr <jschoenh@amazon.de> Signed-off-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
parent
a7b7c7a105
commit
5228b3280b
@ -555,8 +555,10 @@ static blk_status_t nvme_setup_prps(struct nvme_dev *dev, struct request *req)
|
||||
int nprps, i;
|
||||
|
||||
length -= (page_size - offset);
|
||||
if (length <= 0)
|
||||
if (length <= 0) {
|
||||
iod->first_dma = 0;
|
||||
return BLK_STS_OK;
|
||||
}
|
||||
|
||||
dma_len -= (page_size - offset);
|
||||
if (dma_len) {
|
||||
|
Loading…
Reference in New Issue
Block a user