[PATCH] EDAC: sb_edac: simplify switch statement

5 views
Skip to first unread message

tr...@redhat.com

unread,
Sep 7, 2020, 11:32:35 AM9/7/20
to tony...@intel.com, qiuxu...@intel.com, b...@alien8.de, mch...@kernel.org, james...@arm.com, rr...@kernel.org, natecha...@gmail.com, ndesau...@google.com, linux...@vger.kernel.org, linux-...@vger.kernel.org, clang-bu...@googlegroups.com, Tom Rix
From: Tom Rix <tr...@redhat.com>

clang static analyzer reports this problem

sb_edac.c:959:2: warning: Undefined or garbage value
returned to caller
return type;
^~~~~~~~~~~

This is a false positive.

However by initializing the type to DEV_UNKNOWN the 3 case can be
removed from the switch, saving a comparison and jump.

Signed-off-by: Tom Rix <tr...@redhat.com>
---
drivers/edac/sb_edac.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/edac/sb_edac.c b/drivers/edac/sb_edac.c
index 68f2fe4df333..93daa4297f2e 100644
--- a/drivers/edac/sb_edac.c
+++ b/drivers/edac/sb_edac.c
@@ -939,12 +939,9 @@ static enum dev_type sbridge_get_width(struct sbridge_pvt *pvt, u32 mtr)

static enum dev_type __ibridge_get_width(u32 mtr)
{
- enum dev_type type;
+ enum dev_type type = DEV_UNKNOWN;

switch (mtr) {
- case 3:
- type = DEV_UNKNOWN;
- break;
case 2:
type = DEV_X16;
break;
--
2.18.1

Nathan Chancellor

unread,
Sep 8, 2020, 12:28:54 AM9/8/20
to tr...@redhat.com, tony...@intel.com, qiuxu...@intel.com, b...@alien8.de, mch...@kernel.org, james...@arm.com, rr...@kernel.org, ndesau...@google.com, linux...@vger.kernel.org, linux-...@vger.kernel.org, clang-bu...@googlegroups.com
On Mon, Sep 07, 2020 at 08:32:25AM -0700, tr...@redhat.com wrote:
> From: Tom Rix <tr...@redhat.com>
>
> clang static analyzer reports this problem
>
> sb_edac.c:959:2: warning: Undefined or garbage value
> returned to caller
> return type;
> ^~~~~~~~~~~
>
> This is a false positive.
>
> However by initializing the type to DEV_UNKNOWN the 3 case can be
> removed from the switch, saving a comparison and jump.
>
> Signed-off-by: Tom Rix <tr...@redhat.com>

Some maintainers have a preference for a default case statement but
presumably this case statement has been cutting it as is so:

Reviewed-by: Nathan Chancellor <natecha...@gmail.com>

> ---
> drivers/edac/sb_edac.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/edac/sb_edac.c b/drivers/edac/sb_edac.c
> index 68f2fe4df333..93daa4297f2e 100644
> --- a/drivers/edac/sb_edac.c
> +++ b/drivers/edac/sb_edac.c
> @@ -939,12 +939,9 @@ static enum dev_type sbridge_get_width(struct sbridge_pvt *pvt, u32 mtr)
>
> static enum dev_type __ibridge_get_width(u32 mtr)
> {
> - enum dev_type type;
> + enum dev_type type = DEV_UNKNOWN;
>
> switch (mtr) {
> - case 3:
> - type = DEV_UNKNOWN;
> - break;
> case 2:
> type = DEV_X16;
> break;
> --
> 2.18.1
>
> --
> You received this message because you are subscribed to the Google Groups "Clang Built Linux" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to clang-built-li...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/20200907153225.7294-1-trix%40redhat.com.

Luck, Tony

unread,
Sep 8, 2020, 6:08:36 PM9/8/20
to tr...@redhat.com, Zhuo, Qiuxu, b...@alien8.de, mch...@kernel.org, james...@arm.com, rr...@kernel.org, natecha...@gmail.com, ndesau...@google.com, linux...@vger.kernel.org, linux-...@vger.kernel.org, clang-bu...@googlegroups.com
> However by initializing the type to DEV_UNKNOWN the 3 case can be
> removed from the switch, saving a comparison and jump.
>
> Signed-off-by: Tom Rix <tr...@redhat.com>

Applied. Thanks.

-Tony

[Boris: Pushed to edac-misc and edac-for-next branches in RAS tree]

Borislav Petkov

unread,
Sep 10, 2020, 12:11:02 PM9/10/20
to Luck, Tony, tr...@redhat.com, Zhuo, Qiuxu, mch...@kernel.org, james...@arm.com, rr...@kernel.org, natecha...@gmail.com, ndesau...@google.com, linux...@vger.kernel.org, linux-...@vger.kernel.org, clang-bu...@googlegroups.com
On Tue, Sep 08, 2020 at 10:08:28PM +0000, Luck, Tony wrote:
> [Boris: Pushed to edac-misc and edac-for-next branches in RAS tree]

Yap, looks good.

Thx.

--
Regards/Gruss,
Boris.

https://people.kernel.org/tglx/notes-about-netiquette
Reply all
Reply to author
Forward
0 new messages