[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20221027222516.GB3123386@roeck-us.net>
Date: Thu, 27 Oct 2022 15:25:16 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Nathan Chancellor <nathan@...nel.org>
Cc: Jean Delvare <jdelvare@...e.com>,
Nick Desaulniers <ndesaulniers@...gle.com>,
Tom Rix <trix@...hat.com>,
Quan Nguyen <quan@...amperecomputing.com>,
linux-hwmon@...r.kernel.org, linux-kernel@...r.kernel.org,
llvm@...ts.linux.dev, patches@...ts.linux.dev
Subject: Re: [PATCH -next] hwmon: (smpro-hwmon) Add missing break in
smpro_is_visible()
On Thu, Oct 27, 2022 at 02:03:56PM -0700, Nathan Chancellor wrote:
> On Thu, Oct 27, 2022 at 02:00:16PM -0700, Guenter Roeck wrote:
> > On Thu, Oct 27, 2022 at 12:52:38PM -0700, Nathan Chancellor wrote:
> > > Clang warns:
> > >
> > > drivers/hwmon/smpro-hwmon.c:378:2: error: unannotated fall-through between switch labels [-Werror,-Wimplicit-fallthrough]
> > > default:
> > > ^
> > > drivers/hwmon/smpro-hwmon.c:378:2: note: insert 'break;' to avoid fall-through
> > > default:
> > > ^
> > > break;
> > > 1 error generated.
> > >
> > > Clang is a little more pedantic than GCC, which does not warn when
> > > falling through to a case that is just break or return. Clang's version
> > > is more in line with the kernel's own stance in deprecated.rst, which
> > > states that all switch/case blocks must end in either break,
> > > fallthrough, continue, goto, or return. Add the missing break to silence
> > > the warning.
> > >
> > > Fixes: a87456864cbb ("hwmon: Add Ampere's Altra smpro-hwmon driver")
> > > Link: https://github.com/ClangBuiltLinux/linux/issues/1751
> > > Signed-off-by: Nathan Chancellor <nathan@...nel.org>
> > > ---
> > > drivers/hwmon/smpro-hwmon.c | 1 +
> > > 1 file changed, 1 insertion(+)
> > >
> > > diff --git a/drivers/hwmon/smpro-hwmon.c b/drivers/hwmon/smpro-hwmon.c
> > > index ee54e21c2c12..667e88b6bae5 100644
> > > --- a/drivers/hwmon/smpro-hwmon.c
> > > +++ b/drivers/hwmon/smpro-hwmon.c
> > > @@ -375,6 +375,7 @@ static umode_t smpro_is_visible(const void *data, enum hwmon_sensor_types type,
> > > return 0;
> > > break;
> > > }
> > > + break;
> >
> > The alignment of the break; statement above is also bad, and a default:
> > for switch (attr) is missing.
>
> Would you prefer those fixed in the same patch or a separate one?
>
Same patch, please. The resulting code is ultimately the same.
Thanks,
Guenter
> > > default:
> > > break;
> > > }
> > >
> > > base-commit: 0ffb687b6508c36a17b99bdaf014b38532404182
> > > --
> > > 2.38.1
> > >
Powered by blists - more mailing lists