[PATCH -next] umem: fix error return code in mm_pci_probe()
From: 'Wei Yongjun <hidden>
Date: 2021-03-08 12:27:16
Subsystem:
block layer, the rest · Maintainers:
Jens Axboe, Linus Torvalds
From: 'Wei Yongjun <hidden>
Date: 2021-03-08 12:27:16
Subsystem:
block layer, the rest · Maintainers:
Jens Axboe, Linus Torvalds
From: Wei Yongjun <redacted> Fix to return negative error code -ENOMEM from the blk_alloc_queue() and dma_alloc_coherent() error handling cases instead of 0, as done elsewhere in this function. Reported-by: Hulk Robot <redacted> Signed-off-by: Wei Yongjun <redacted> --- drivers/block/umem.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/block/umem.c b/drivers/block/umem.c
index 982732dbe82e..664280f23bee 100644
--- a/drivers/block/umem.c
+++ b/drivers/block/umem.c@@ -877,6 +877,7 @@ static int mm_pci_probe(struct pci_dev *dev, const struct pci_device_id *id) if (card->mm_pages[0].desc == NULL || card->mm_pages[1].desc == NULL) { dev_printk(KERN_ERR, &card->dev->dev, "alloc failed\n"); + ret = -ENOMEM; goto failed_alloc; } reset_page(&card->mm_pages[0]);
@@ -888,8 +889,10 @@ static int mm_pci_probe(struct pci_dev *dev, const struct pci_device_id *id) spin_lock_init(&card->lock); card->queue = blk_alloc_queue(NUMA_NO_NODE); - if (!card->queue) + if (!card->queue) { + ret = -ENOMEM; goto failed_alloc; + } tasklet_init(&card->tasklet, process_page, (unsigned long)card);