Re: [PATCH v4] v4l: subdev: tolerate null in media_entity_to_v4l2_subdev
Hi Sakari, Mauro, On 08/06/17 21:10, Mauro Carvalho Chehab wrote: > Em Thu, 8 Jun 2017 22:32:10 +0300 > Sakari Ailusescreveu: > >> Hi Mauro, >> >> On Thu, Jun 08, 2017 at 03:00:22PM -0300, Mauro Carvalho Chehab wrote: >>> Em Wed, 7 Jun 2017 10:52:07 +0100 >>> Kieran Bingham escreveu: >>> From: Kieran Bingham Return NULL, if a null entity is parsed for it's v4l2_subdev Signed-off-by: Kieran Bingham >>> >>> Could you please improve this patch description? >>> >>> I'm unsure if this is a bug fix, or some sort of feature... >>> >>> On what situations would a null entity be passed to this function? Sorry for not being clear enough there ... >> >> I actually proposed this patch. This change is simply for convenience --- >> the caller doesn't need to make sure the subdev is non-NULL, possibly >> obtained from e.g. media_entity_remote_pad() which returns NULL all links to >> the pad are disabled. This is a recurring pattern, and making this change >> avoids an additional check. >> >> Having something along these lines in the patch description wouldn't hurt. Yes, the above looks good ... > Patch added, with a description based on the above. And thank you :) Regards -- Kieran
Re: [PATCH v4] v4l: subdev: tolerate null in media_entity_to_v4l2_subdev
Hi Mauro, On Thu, Jun 08, 2017 at 03:00:22PM -0300, Mauro Carvalho Chehab wrote: > Em Wed, 7 Jun 2017 10:52:07 +0100 > Kieran Binghamescreveu: > > > From: Kieran Bingham > > > > Return NULL, if a null entity is parsed for it's v4l2_subdev > > > > Signed-off-by: Kieran Bingham > > Could you please improve this patch description? > > I'm unsure if this is a bug fix, or some sort of feature... > > On what situations would a null entity be passed to this function? I actually proposed this patch. This change is simply for convenience --- the caller doesn't need to make sure the subdev is non-NULL, possibly obtained from e.g. media_entity_remote_pad() which returns NULL all links to the pad are disabled. This is a recurring pattern, and making this change avoids an additional check. Having something along these lines in the patch description wouldn't hurt. -- Regards, Sakari Ailus e-mail: sakari.ai...@iki.fi XMPP: sai...@retiisi.org.uk
Re: [PATCH v4] v4l: subdev: tolerate null in media_entity_to_v4l2_subdev
Em Wed, 7 Jun 2017 10:52:07 +0100 Kieran Binghamescreveu: > From: Kieran Bingham > > Return NULL, if a null entity is parsed for it's v4l2_subdev > > Signed-off-by: Kieran Bingham Could you please improve this patch description? I'm unsure if this is a bug fix, or some sort of feature... On what situations would a null entity be passed to this function? Regards, Mauro > > --- > Not sure if this patch ever made it out of my mailbox: > > Here's the respin with the parameter evaluated only once. > > v4: > - Improve macro usage to evaluate ent only once > > include/media/v4l2-subdev.h | 11 +-- > 1 file changed, 9 insertions(+), 2 deletions(-) > > diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h > index a40760174797..0f92ebd2d710 100644 > --- a/include/media/v4l2-subdev.h > +++ b/include/media/v4l2-subdev.h > @@ -826,8 +826,15 @@ struct v4l2_subdev { > struct v4l2_subdev_platform_data *pdata; > }; > > -#define media_entity_to_v4l2_subdev(ent) \ > - container_of(ent, struct v4l2_subdev, entity) > +#define media_entity_to_v4l2_subdev(ent) \ > +({ \ > + typeof(ent) __me_sd_ent = (ent);\ > + \ > + __me_sd_ent ? \ > + container_of(__me_sd_ent, struct v4l2_subdev, entity) : \ > + NULL; \ > +}) > + > #define vdev_to_v4l2_subdev(vdev) \ > ((struct v4l2_subdev *)video_get_drvdata(vdev)) > Thanks, Mauro
Re: [PATCH v4] v4l: subdev: tolerate null in media_entity_to_v4l2_subdev
On Wed, Jun 07, 2017 at 10:52:07AM +0100, Kieran Bingham wrote: > From: Kieran Bingham> > Return NULL, if a null entity is parsed for it's v4l2_subdev > > Signed-off-by: Kieran Bingham Reviewed-by: Sakari Ailus -- Sakari Ailus e-mail: sakari.ai...@iki.fi XMPP: sai...@retiisi.org.uk
[PATCH v4] v4l: subdev: tolerate null in media_entity_to_v4l2_subdev
From: Kieran BinghamReturn NULL, if a null entity is parsed for it's v4l2_subdev Signed-off-by: Kieran Bingham --- Not sure if this patch ever made it out of my mailbox: Here's the respin with the parameter evaluated only once. v4: - Improve macro usage to evaluate ent only once include/media/v4l2-subdev.h | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h index a40760174797..0f92ebd2d710 100644 --- a/include/media/v4l2-subdev.h +++ b/include/media/v4l2-subdev.h @@ -826,8 +826,15 @@ struct v4l2_subdev { struct v4l2_subdev_platform_data *pdata; }; -#define media_entity_to_v4l2_subdev(ent) \ - container_of(ent, struct v4l2_subdev, entity) +#define media_entity_to_v4l2_subdev(ent) \ +({ \ + typeof(ent) __me_sd_ent = (ent);\ + \ + __me_sd_ent ? \ + container_of(__me_sd_ent, struct v4l2_subdev, entity) : \ + NULL; \ +}) + #define vdev_to_v4l2_subdev(vdev) \ ((struct v4l2_subdev *)video_get_drvdata(vdev)) -- 2.7.4