Thread (24 messages) 24 messages, 7 authors, 2020-12-04

Re: [PATCH v5 09/10] media: Avoid parsing quantization and huffman tables

From: Hans Verkuil <hidden>
Date: 2020-12-02 12:13:34
Also in: linux-media, lkml

On 12/11/2020 04:05, Mirela Rabulea (OSS) wrote:
quoted hunk ↗ jump to hunk
From: Mirela Rabulea <mirela.rabulea@nxp.com>

These are optional in struct v4l2_jpeg_header, so do not parse if
not requested, save some time.

Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
---
 drivers/media/v4l2-core/v4l2-jpeg.c | 6 ++++++
 1 file changed, 6 insertions(+)
diff --git a/drivers/media/v4l2-core/v4l2-jpeg.c b/drivers/media/v4l2-core/v4l2-jpeg.c
index d77e04083d57..7576cd0ce6b9 100644
--- a/drivers/media/v4l2-core/v4l2-jpeg.c
+++ b/drivers/media/v4l2-core/v4l2-jpeg.c
@@ -307,6 +307,9 @@ static int jpeg_parse_quantization_tables(struct jpeg_stream *stream,
 {
 	int len = jpeg_get_word_be(stream);
 
+	if (!tables)
+		return 0;
+
It feels more natural to check for a non-NULL out->quantization_tables
or non-NULL out->huffman_tables pointer in v4l2_jpeg_parse_header()
rather than in these low-level functions. It's weird to have this check here.

Regards,

	Hans
quoted hunk ↗ jump to hunk
 	if (len < 0)
 		return len;
 	/* Lq = 2 + n * 65 (for baseline DCT), n >= 1 */
@@ -361,6 +364,9 @@ static int jpeg_parse_huffman_tables(struct jpeg_stream *stream,
 	int mt;
 	int len = jpeg_get_word_be(stream);
 
+	if (!tables)
+		return 0;
+
 	if (len < 0)
 		return len;
 	/* Table B.5 - Huffman table specification parameter sizes and values */
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help