Re: [PATCH] staging: erofs: Add braces to do-while statements

From: Greg KH
Date: Sun Dec 09 2018 - 11:25:35 EST


On Sun, Dec 09, 2018 at 04:59:00PM +0100, Thomas Jespersen wrote:
> This fixes warning reported by sparse (with -Wsparse-all).

Why is sparse warning about this?

> Signed-off-by: Thomas Jespersen <laumann.thomas@xxxxxxxxx>
> ---
> drivers/staging/erofs/internal.h | 4 ++--
> drivers/staging/erofs/utils.c | 4 ++--
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/staging/erofs/internal.h b/drivers/staging/erofs/internal.h
> index 57575c7f5635..bf180a803446 100644
> --- a/drivers/staging/erofs/internal.h
> +++ b/drivers/staging/erofs/internal.h
> @@ -232,9 +232,9 @@ static inline bool erofs_workgroup_get(struct erofs_workgroup *grp, int *ocnt)
> /* spin if it is temporarily locked at the reclaim path */
> if (unlikely(o == locked)) {
> #if defined(CONFIG_SMP) || defined(CONFIG_DEBUG_SPINLOCK)
> - do
> + do {
> cpu_relax();
> - while (atomic_read(&grp->refcount) == locked);
> + } while (atomic_read(&grp->refcount) == locked);

That looks like valid code to me, why change this?

greg k-h