Re: [PATCH] iio: adc: ad7816: propagate SPI error codes
From: Denny Lin
Date: Sat May 09 2026 - 03:25:17 EST
Hi Andy,
Thanks for pointing this out.
You're right that this changes the userspace-visible error codes and
can be considered an ABI change. I don't think this is worth the risk,
so I'll drop this change.
Thanks,
Hungyu
On Fri, May 8, 2026 at 11:57 PM Andy Shevchenko
<andriy.shevchenko@xxxxxxxxx> wrote:
>
> On Sat, May 09, 2026 at 02:06:46AM +0000, Hungyu Lin wrote:
> > The driver currently returns -EIO for SPI read/write failures,
> > which hides the actual error code returned by the SPI subsystem.
> >
> > Return the original error code instead to allow better diagnostics
> > and error handling by callers.
>
> ...
>
> > static ssize_t ad7816_show_value(struct device *dev,
>
> > ret = ad7816_spi_read(chip, &data);
> > if (ret)
> > - return -EIO;
> > + return ret;
>
> At least this is an ABI change and should have been mentioned in the commit
> message and justified.
>
> Yes, error code is an ABI and infamous case is already known when similar
> change badly broke user space.
>
> https://lkml.org/lkml/2012/12/23/75
>
> ...
>
> > static inline ssize_t ad7816_set_oti(struct device *dev,
>
> > ret = ad7816_spi_write(chip, data);
> > if (ret)
> > - return -EIO;
> > + return ret;
>
> Haven't checked this one, though.
>
> --
> With Best Regards,
> Andy Shevchenko
>
>