Re: edac/i7300_edac.c:307: strange macro ?

From: Borislav Petkov
Date: Wed Jan 11 2017 - 17:58:42 EST


On Wed, Jan 11, 2017 at 04:48:51PM +0000, David Binderman wrote:
> Hello there,
>
> drivers/edac/i7300_edac.c:307:32: warning: â*â in boolean context, suggest â&&â instead [-Wint-in-bool-context]

Are you adding some other -W-switches to the kernel Makefile?

:-)

> Source code is
>
> #define IS_SECOND_CH(v) ((v) * (1 << 17))

Looks like a bug to me. According to the chipset doc, bit 17 in REDMEMB
is the locator bit for CS[3:2] which probably means the second channel
but multiplying the full register value with 131072 looks wrong.

> Maybe better code
>
> #define IS_SECOND_CH(v) ((v) & (1 << 17))

Yap.

Mauro, what's up?

--
Regards/Gruss,
Boris.

Good mailing practices for 400: avoid top-posting and trim the reply.