On Mon, Sep 06, 2021 at 03:08:42PM +0900, Nobuhiro Iwamatsu wrote: > From: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > > commit 35f3f8504c3b60a1ae5576e178b27fc0ddd6157d upstream. > > While fixing undefined behaviour the commit f60d7270c8a3 ("spi: Avoid > undefined behaviour when counting unused native CSs") missed the case > when all CSs are GPIOs and thus unused_native_cs will be evaluated to > -1 in unsigned representation. This will falsely trigger a condition > in the spi_get_gpio_descs(). > > Switch to signed types for *_native_cs SPI controller fields to fix above. > > Fixes: f60d7270c8a3 ("spi: Avoid undefined behaviour when counting unused native CSs") > Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > Link: https://lore.kernel.org/r/20210510131242.49455-1-andriy.shevchenko@xxxxxxxxxxxxxxx > Signed-off-by: Mark Brown <broonie@xxxxxxxxxx> > Signed-off-by: Nobuhiro Iwamatsu (CIP) <nobuhiro1.iwamatsu@xxxxxxxxxxxxx> > --- > include/linux/spi/spi.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/include/linux/spi/spi.h b/include/linux/spi/spi.h > index 2d906b9c149929..e1d88630ff2439 100644 > --- a/include/linux/spi/spi.h > +++ b/include/linux/spi/spi.h > @@ -646,8 +646,8 @@ struct spi_controller { > int *cs_gpios; > struct gpio_desc **cs_gpiods; > bool use_gpio_descriptors; > - u8 unused_native_cs; > - u8 max_native_cs; > + s8 unused_native_cs; > + s8 max_native_cs; > > /* statistics */ > struct spi_statistics statistics; > -- > 2.33.0 > > Now queued up, thanks. greg k-h