Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c5b250ad authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab
Browse files

[media] solo6x10: check dma_map_sg() return value



The dma_map_sg() function can fail, so check for the return value.

Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
parent 761f9aa2
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -478,8 +478,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,
	frame_size = ALIGN(vop_mpeg_size(vh) + skip, DMA_ALIGN);

	/* 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));