Re: [Patch v4 1/2] staging/lustre: add parenthesis to macro argument

From: greg@xxxxxxxxx
Date: Fri Apr 28 2017 - 05:42:47 EST


On Wed, Apr 19, 2017 at 03:50:05PM +0000, Rishiraj Manwatkar wrote:
> Add parenthesis to cl_io_for_each() macro to avoid potential issues with
> unexpected argument expansion in CPP.
>
> Signed-off-by: Rishiraj Manwatkar <manwatkar@xxxxxxxxxxx>
> ---
> v1 -> v2: Added mailing list in cc.
> v2 -> v3: Changed From: to be same as Signed-off-by:.
> v3 -> v4: Changed Subject line and patch description as suggested by andreas.dilger@xxxxxxxxx
> drivers/staging/lustre/lustre/obdclass/cl_io.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/lustre/lustre/obdclass/cl_io.c b/drivers/staging/lustre/lustre/obdclass/cl_io.c
> index ee7d677..0997254 100755
> --- a/drivers/staging/lustre/lustre/obdclass/cl_io.c
> +++ b/drivers/staging/lustre/lustre/obdclass/cl_io.c
> @@ -52,9 +52,9 @@
> */
>
> #define cl_io_for_each(slice, io) \
> - list_for_each_entry((slice), &io->ci_layers, cis_linkage)
> + list_for_each_entry((slice), &(io)->ci_layers, cis_linkage)
> #define cl_io_for_each_reverse(slice, io) \
> - list_for_each_entry_reverse((slice), &io->ci_layers, cis_linkage)
> + list_for_each_entry_reverse((slice), &(io)->ci_layers, cis_linkage)

No, the original code is correct, that's going to be a variable only,
not any type of "complex argument".

thanks,

greg k-h