Re: [PATCH] staging: greybus: Clear up precedence for gcam logging macros

From: Greg Kroah-Hartman
Date: Sun Apr 07 2024 - 02:13:34 EST


On Wed, Apr 03, 2024 at 05:16:28PM -0700, Jackson Chui wrote:
> Reported by checkpatch:
>
> CHECK: Macro argument 'gcam' may be better as '(gcam)' to avoid
> precedence issues
>
> Disambiguates '&' (address-of) operator and '->' operator precedence,
> accounting for how '(gcam)->bundle->dev' is a 'struct device' and not a
> 'struct device*', which is required by the dev_{dbg,info,err} driver
> model diagnostic macros. Issue found by checkpatch.

This really is not an issue at all, as you are dealing with pointers and
structures and nothing else.

>
> Signed-off-by: Jackson Chui <jacksonchui.qwerty@xxxxxxxxx>
> ---
> drivers/staging/greybus/camera.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/staging/greybus/camera.c b/drivers/staging/greybus/camera.c
> index a8173aa3a995..d82a2d2abdca 100644
> --- a/drivers/staging/greybus/camera.c
> +++ b/drivers/staging/greybus/camera.c
> @@ -180,9 +180,9 @@ static const struct gb_camera_fmt_info *gb_camera_get_format_info(u16 gb_fmt)
>
> #define GB_CAMERA_MAX_SETTINGS_SIZE 8192
>
> -#define gcam_dbg(gcam, format...) dev_dbg(&gcam->bundle->dev, format)
> -#define gcam_info(gcam, format...) dev_info(&gcam->bundle->dev, format)
> -#define gcam_err(gcam, format...) dev_err(&gcam->bundle->dev, format)
> +#define gcam_dbg(gcam, format...) dev_dbg(&((gcam)->bundle->dev), format)

Again, the original code here is fine. Getting rid of the gcam_*()
functions would be nice, as hiding dev_*() calls isn't really needed.

thanks,

greg k-h