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: do not warn for unexpected vivid_ro_ctrl values
Author:  Hans Verkuil <hverkuil-ci...@xs4all.nl>
Date:    Wed May 8 08:59:46 2024 +0200

The vivid driver does not produce reliable sequence counters,
the first sequence counter may be > 0, and there are gaps in the
counters when there shouldn't be.

Until this is fixed (work in progress) replace the warning when
an unexpected vivid_ro_ctrl value is seen by an info message.

Once vivid is fixed this can be reworked.

Signed-off-by: Hans Verkuil <hverkuil-ci...@xs4all.nl>

 utils/v4l2-compliance/v4l2-compliance.h     | 10 ++++++++++
 utils/v4l2-compliance/v4l2-test-buffers.cpp | 10 ++++++++--
 2 files changed, 18 insertions(+), 2 deletions(-)

---

http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=7d7c5d2973f0891c5289dcd33fb8e6a84ac9c91e
diff --git a/utils/v4l2-compliance/v4l2-compliance.h 
b/utils/v4l2-compliance/v4l2-compliance.h
index b6e342f31ce3..3517bd07a452 100644
--- a/utils/v4l2-compliance/v4l2-compliance.h
+++ b/utils/v4l2-compliance/v4l2-compliance.h
@@ -226,6 +226,16 @@ private:
                        printf("\t\tinfo: " fmt, ##args);       \
        } while (0)
 
+#define info_once(fmt, args...)                                \
+       do {                                            \
+               static bool show;                       \
+                                                       \
+               if (!show) {                            \
+                       show = true;                    \
+                       info(fmt, ##args);              \
+               }                                       \
+       } while (0)
+
 #define warn(fmt, args...)                                     \
        do {                                                    \
                warnings++;                                     \
diff --git a/utils/v4l2-compliance/v4l2-test-buffers.cpp 
b/utils/v4l2-compliance/v4l2-test-buffers.cpp
index 1db6f4e9e66c..fbd68d8dbb4e 100644
--- a/utils/v4l2-compliance/v4l2-test-buffers.cpp
+++ b/utils/v4l2-compliance/v4l2-test-buffers.cpp
@@ -2690,9 +2690,12 @@ int testRequests(struct node *node, bool test_streaming)
                        // (sequence number & 0xff).
                        vivid_ro_ctrls.request_fd = buf_req_fds[i];
                        fail_on_test(doioctl(node, VIDIOC_G_EXT_CTRLS, 
&vivid_ro_ctrls));
+                       // FIXME: due to unreliable sequence counters from 
vivid this
+                       // test fails regularly. For now replace the 
'warn_once' by
+                       // 'info_once' until vivid is fixed.
                        if (node->is_video && !node->can_output &&
                            vivid_ro_ctrl.value != (int)i)
-                               warn_once("vivid_ro_ctrl.value (%d) != i 
(%u)\n",
+                               info_once("vivid_ro_ctrl.value (%d) != i 
(%u)\n",
                                          vivid_ro_ctrl.value, i);
 
                        // Check that the dynamic control array is set as
@@ -2768,9 +2771,12 @@ int testRequests(struct node *node, bool test_streaming)
                        // For vivid check the final read-only value,
                        vivid_ro_ctrls.which = 0;
                        fail_on_test(doioctl(node, VIDIOC_G_EXT_CTRLS, 
&vivid_ro_ctrls));
+                       // FIXME: due to unreliable sequence counters from 
vivid this
+                       // test fails regularly. For now replace the 'warn' by 
'info'
+                       // until vivid is fixed.
                        if (node->is_video && !node->can_output &&
                            vivid_ro_ctrl.value != (int)(num_bufs - 1))
-                               warn("vivid_ro_ctrl.value (%d) != num_bufs - 1 
(%d)\n",
+                               info("vivid_ro_ctrl.value (%d) != num_bufs - 1 
(%d)\n",
                                     vivid_ro_ctrl.value, num_bufs - 1);
 
                        // the final dynamic array value,

Reply via email to