[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250116224003.28675481@pumpkin>
Date: Thu, 16 Jan 2025 22:40:03 +0000
From: David Laight <david.laight.linux@...il.com>
To: Dave Penkler <dpenkler@...il.com>
Cc: gregkh@...uxfoundation.org, linux-staging@...ts.linux.dev,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] staging: gpib: Fix inadvertent negative shift
On Thu, 16 Jan 2025 12:00:14 +0100
Dave Penkler <dpenkler@...il.com> wrote:
> During the initial checkpatch cleanup, when removing blanks
> after open parentheses, a minus sign in the argument of a shift
> operation was deleted by mistake. This transformed a pre-decrement
> operation into a negation.
>
> The result of a negative shift is undefined and a warning was
> signalled by sparse.
>
> Restore the pre-decrement operation.
>
> Fixes: 6c52d5e3cde2 ("staging: gpib: Add common include files for GPIB drivers")
> Signed-off-by: Dave Penkler <dpenkler@...il.com>
> ---
> drivers/staging/gpib/include/amcc5920.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/gpib/include/amcc5920.h b/drivers/staging/gpib/include/amcc5920.h
> index 766b3799223f..7a88bd282feb 100644
> --- a/drivers/staging/gpib/include/amcc5920.h
> +++ b/drivers/staging/gpib/include/amcc5920.h
> @@ -22,7 +22,7 @@ static const int bits_per_region = 8;
>
> static inline uint32_t amcc_wait_state_bits(unsigned int region, unsigned int num_wait_states)
> {
> - return (num_wait_states & 0x7) << (-region * bits_per_region);
> + return (num_wait_states & 0x7) << (--region * bits_per_region);
It would be much better to use (region - 1).
David
> };
>
> enum amcc_prefetch_bits {
Powered by blists - more mailing lists