Hi Sakari, Thanks for the patch. On Friday 02 March 2012 19:30:14 Sakari Ailus wrote: > Unify functions to get try pointers and validate the pad number accessed by > the user. > > Signed-off-by: Sakari Ailus <sakari.ailus@xxxxxx> Acked-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- > include/media/v4l2-subdev.h | 30 +++++++++++++----------------- > 1 files changed, 13 insertions(+), 17 deletions(-) > > diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h > index bcaf6b8..7e85035 100644 > --- a/include/media/v4l2-subdev.h > +++ b/include/media/v4l2-subdev.h > @@ -565,23 +565,19 @@ struct v4l2_subdev_fh { > container_of(fh, struct v4l2_subdev_fh, vfh) > > #if defined(CONFIG_VIDEO_V4L2_SUBDEV_API) > -static inline struct v4l2_mbus_framefmt * > -v4l2_subdev_get_try_format(struct v4l2_subdev_fh *fh, unsigned int pad) > -{ > - return &fh->pad[pad].try_fmt; > -} > - > -static inline struct v4l2_rect * > -v4l2_subdev_get_try_crop(struct v4l2_subdev_fh *fh, unsigned int pad) > -{ > - return &fh->pad[pad].try_crop; > -} > - > -static inline struct v4l2_rect * > -v4l2_subdev_get_try_compose(struct v4l2_subdev_fh *fh, unsigned int pad) > -{ > - return &fh->pad[pad].try_compose; > -} > +#define __V4L2_SUBDEV_MK_GET_TRY(rtype, fun_name, field_name) \ > + static inline struct rtype * \ > + v4l2_subdev_get_try_##fun_name(struct v4l2_subdev_fh *fh, \ > + unsigned int pad) \ > + { \ > + BUG_ON(unlikely(pad >= vdev_to_v4l2_subdev( \ > + fh->vfh.vdev)->entity.num_pads)); \ > + return &fh->pad[pad].field_name; \ > + } > + > +__V4L2_SUBDEV_MK_GET_TRY(v4l2_mbus_framefmt, format, try_fmt) > +__V4L2_SUBDEV_MK_GET_TRY(v4l2_rect, crop, try_compose) > +__V4L2_SUBDEV_MK_GET_TRY(v4l2_rect, compose, try_compose) > #endif > > extern const struct v4l2_file_operations v4l2_subdev_fops; -- Regards, Laurent Pinchart -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html