This is an automatic generated email to let you know that the following patch were queued at the http://git.linuxtv.org/cgit.cgi/v4l-utils.git tree:
Subject: v4l2-compliance: always test blocking wait Author: Hans Verkuil <hverkuil-ci...@xs4all.nl> Date: Mon Sep 2 09:49:38 2024 +0200 The blocking wait test is currently only run if -s was specified. But it doesn't depend on streaming since it never queues any buffers. So just always perform this test. This will make it easier to catch situations where the wait_prepare/finish ops weren't set. Signed-off-by: Hans Verkuil <hverkuil-ci...@xs4all.nl> utils/v4l2-compliance/v4l2-compliance.cpp | 4 ++-- utils/v4l2-compliance/v4l2-test-buffers.cpp | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) --- http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=fce3922fbe38fb005bb864d8780d67735be1a3d1 diff --git a/utils/v4l2-compliance/v4l2-compliance.cpp b/utils/v4l2-compliance/v4l2-compliance.cpp index 144f961842c6..1190a80215fa 100644 --- a/utils/v4l2-compliance/v4l2-compliance.cpp +++ b/utils/v4l2-compliance/v4l2-compliance.cpp @@ -1478,6 +1478,8 @@ void testNode(struct node &node, struct node &node_m2m_cap, struct node &expbuf_ printf("\ttest Requests: %s\n", ok(testRequests(&node, options[OptStreaming]))); if (sizeof(void *) == 4) printf("\ttest TIME32/64: %s\n", ok(testTime32_64(&node))); + printf("\ttest blocking wait: %s\n", ok(testBlockingWait(&node))); + // Reopen after each streaming test to reset the streaming state // in case of any errors in the preceeding test. node.reopen(); @@ -1516,8 +1518,6 @@ void testNode(struct node &node, struct node &node_m2m_cap, struct node &expbuf_ // Reopen after each streaming test to reset the streaming state // in case of any errors in the preceeding test. node.reopen(); - printf("\ttest blocking wait: %s\n", ok(testBlockingWait(&node))); - node.reopen(); if (!(node.codec_mask & (STATEFUL_ENCODER | STATEFUL_DECODER))) { printf("\ttest MMAP (no poll): %s\n", ok(testMmap(&node, &node_m2m_cap, frame_count, POLL_MODE_NONE))); diff --git a/utils/v4l2-compliance/v4l2-test-buffers.cpp b/utils/v4l2-compliance/v4l2-test-buffers.cpp index f5bd18b769a8..0d90f5915a11 100644 --- a/utils/v4l2-compliance/v4l2-test-buffers.cpp +++ b/utils/v4l2-compliance/v4l2-test-buffers.cpp @@ -3030,6 +3030,9 @@ static int testBlockingDQBuf(struct node *node, cv4l_queue &q) /* * This test checks if a blocking wait in VIDIOC_DQBUF doesn't block * other ioctls. + * + * If this fails, check that the vb2_ops wait_prepare/finish callbacks + * are set. */ fflush(stdout); thread_dqbuf.start();