Re: [PATCH] wifi: rt2x00: use explicitly signed type for clamping
From: Andy Shevchenko
Date: Tue Oct 18 2022 - 16:57:49 EST
On Tue, Oct 18, 2022 at 02:52:43PM -0600, Jason A. Donenfeld wrote:
> On Tue, Oct 18, 2022 at 11:40:54PM +0300, Andy Shevchenko wrote:
> > On Tue, Oct 18, 2022 at 02:27:34PM -0600, Jason A. Donenfeld wrote:
> > > On some platforms, `char` is unsigned, which makes casting -7 to char
> > > overflow, which in turn makes the clamping operation bogus. Instead,
> > > deal with an explicit `s8` type, so that the comparison is always
> > > signed, and return an s8 result from the function as well. Note that
> > > this function's result is assigned to a `short`, which is always signed.
> >
> > Why not to use short? See my patch I just sent.
>
> Trying to have the most minimal change here that doesn't rock the boat.
> I'm not out to rewrite the driver. I don't know the original author's
> rationales. This patch here is correct and will generate the same code
> as before on architectures where it wasn't broken.
>
> However, if you want your "change the codegen" patch to be taken
> seriously, you should probably send it to the wireless maintainers like
> this one, and they can decide. Personally, I don't really care either
> way.
I have checked the code paths there and I found no evidence that short can't be
used. That's why my patch.
Okay, I will formally send it to the corresponding maintainers.
But if they want, they can always download this thread using `b4` tool and at
least comment on it.
--
With Best Regards,
Andy Shevchenko