From: Vincent StehlĂ© <[email protected]>

[ Upstream commit d0edaa28a1f7830997131cbce87b6c52472825d1 ]

The DMA address returned by dma_map_single() should be checked with
dma_mapping_error(). Fix the ps3stor_setup() function accordingly.

Fixes: 80071802cb9c ("[POWERPC] PS3: Storage Driver Core")
Signed-off-by: Vincent StehlĂ© <[email protected]>
Reviewed-by: Geert Uytterhoeven <[email protected]>
Signed-off-by: Michael Ellerman <[email protected]>
Link: 
https://lore.kernel.org/r/[email protected]
Signed-off-by: Sasha Levin <[email protected]>
---
 drivers/ps3/ps3stor_lib.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/ps3/ps3stor_lib.c b/drivers/ps3/ps3stor_lib.c
index 8c3f5adf1bc65..2d76183756626 100644
--- a/drivers/ps3/ps3stor_lib.c
+++ b/drivers/ps3/ps3stor_lib.c
@@ -201,7 +201,7 @@ int ps3stor_setup(struct ps3_storage_device *dev, 
irq_handler_t handler)
        dev->bounce_lpar = ps3_mm_phys_to_lpar(__pa(dev->bounce_buf));
        dev->bounce_dma = dma_map_single(&dev->sbd.core, dev->bounce_buf,
                                         dev->bounce_size, DMA_BIDIRECTIONAL);
-       if (!dev->bounce_dma) {
+       if (dma_mapping_error(&dev->sbd.core, dev->bounce_dma)) {
                dev_err(&dev->sbd.core, "%s:%u: map DMA region failed\n",
                        __func__, __LINE__);
                error = -ENODEV;
-- 
2.27.0



Reply via email to