There have been cases where seemingly innocuous patches have broken the
uAPI by changing the memory layout of the parameter struct. Generally such
changes also introduce a change in the size of the entire struct. This
patch adds a sanity check to avoid such cases happening in the future.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Tested-by: Tested-by: Bingbu Cao <bingbu.cao@intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
        switch (fmt->dataformat) {
        case V4L2_META_FMT_IPU3_PARAMS:
                fmt->buffersize = sizeof(struct ipu3_uapi_params);
+
+               /*
+                * Sanity check for the parameter struct size. This must
+                * not change!
+                */
+               BUILD_BUG_ON(sizeof(struct ipu3_uapi_params) != 39328);
+
                break;
        case V4L2_META_FMT_IPU3_STAT_3A:
                fmt->buffersize = sizeof(struct ipu3_uapi_stats_3a);