solo6x10: check dma_map_sg() return value
Subsystems (2)
The dma_map_sg() function can fail, so check for the return value.
Signed-off-by Hans Verkuil <[email protected]>
--- drivers/staging/media/solo6x10/solo6x10-v4l2-enc.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
drivers/staging/media/solo6x10/solo6x10-v4l2-enc.c +6 -4
@@ -479,8 +479,9 @@ static int solo_fill_jpeg(struct solo_enc_dev *solo_enc,vb2_set_plane_payload (vb,0 ,vop_jpeg_size (vh) + solo_enc->jpeg_len);/* may discard all previous data in vbuf->sgl */ -dma_map_sg (&solo_dev->pdev->dev, vbuf->sgl, vbuf->nents, -DMA_FROM_DEVICE ); +if (!dma_map_sg (&solo_dev->pdev->dev, vbuf->sgl, vbuf->nents, +DMA_FROM_DEVICE )) +return -ENOMEM ; ret = solo_send_desc(solo_enc, solo_enc->jpeg_len, vbuf, vop_jpeg_offset(vh) - SOLO_JPEG_EXT_ADDR(solo_dev), frame_size, SOLO_JPEG_EXT_ADDR(solo_dev),
@@ -525,8 +526,9 @@ static int solo_fill_mpeg(struct solo_enc_dev *solo_enc, & ~(DMA_ALIGN -1 );/* may discard all previous data in vbuf->sgl */ -dma_map_sg (&solo_dev->pdev->dev, vbuf->sgl, vbuf->nents, -DMA_FROM_DEVICE ); +if (!dma_map_sg (&solo_dev->pdev->dev, vbuf->sgl, vbuf->nents, +DMA_FROM_DEVICE )) +return -ENOMEM ; ret =solo_send_desc (solo_enc, skip, vbuf, frame_off, frame_size,SOLO_MP4E_EXT_ADDR (solo_dev),SOLO_MP4E_EXT_SIZE (solo_dev));
Signature · 1 line
1.8.4.rc3