v4l2-ioctl: WARN_ON if querycap didn't fill device_caps
PATCH 1/1 v4l2-ioctl: WARN_ON if querycap didn't fill device_caps
This is easy to forget to do in drivers. While v4l2-compliance will check for it, not everyone remembers to run it. So warn about it.
Signed-off-by Hans Verkuil <[email protected]>
drivers/media/v4l2-core/v4l2-ioctl.c +6 -0
@@ -1017,6 +1017,12 @@ static int v4l_querycap(const struct v4l2_ioctl_ops *ops, ret = ops->vidioc_querycap (file, fh, cap); cap->capabilities |=V4L2_CAP_EXT_PIX_FORMAT ; +/* +* Drivers MUST fill in device_caps, so check for this and +* warn if it was forgotten. +*/ +WARN_ON (!(cap->capabilities &V4L2_CAP_DEVICE_CAPS ) || + !cap->device_caps); cap->device_caps |=V4L2_CAP_EXT_PIX_FORMAT ;return ret;