Re: [PATCH] nodemask: Drop duplicate check in for_each_node_mask()

From: Andy Shevchenko
Date: Tue Jan 24 2023 - 05:24:50 EST


On Tue, Jan 24, 2023 at 08:02:43AM +0800, Gavin Shan wrote:
> The return value type is changed from 'int' to 'unsigned int' since
> commit 0dfe54071d7c8 ("nodemask: Fix return values to be unsigned").
> Besides, the conversion between 'int' and 'unsigned int' on the
> parameter @node is guaranteed to be safe due to the limited range of
> MAX_NUMNODES and CONFIG_NODES_SHIFT. By the way, '(node >= 0)' should
> have been '(node) >= 0' actually.
>
> It's unnecessary to check if their return values are greater or equal
> to 0 in for_each_node_mask(). Remove it.
>
> No functional change intended.

Agree on the arguments.
Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

> Signed-off-by: Gavin Shan <gshan@xxxxxxxxxx>
> ---
> include/linux/nodemask.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/nodemask.h b/include/linux/nodemask.h
> index bb0ee80526b2..8d07116caaf1 100644
> --- a/include/linux/nodemask.h
> +++ b/include/linux/nodemask.h
> @@ -385,7 +385,7 @@ static inline void __nodes_fold(nodemask_t *dstp, const nodemask_t *origp,
> #if MAX_NUMNODES > 1
> #define for_each_node_mask(node, mask) \
> for ((node) = first_node(mask); \
> - (node >= 0) && (node) < MAX_NUMNODES; \
> + (node) < MAX_NUMNODES; \
> (node) = next_node((node), (mask)))
> #else /* MAX_NUMNODES == 1 */
> #define for_each_node_mask(node, mask) \
> --
> 2.23.0
>

--
With Best Regards,
Andy Shevchenko