Re: [PATCH] tools/iio: iio_event_monitor: Fix ioctl error check

From: Alexandru Ardelean
Date: Mon May 03 2021 - 10:35:37 EST


On Mon, May 3, 2021 at 5:31 PM Linus Walleij <linus.walleij@xxxxxxxxxx> wrote:
>
> On Mon, May 3, 2021 at 1:05 PM Jonathan Cameron <jic23@xxxxxxxxxx> wrote:
>
> > So, I did a bit of detective work on this one. Seems this change in error
> > code was actually introduced as a side effect of Alex's recent rework of
> > the IOCTLs. Prior to that we returned -ENODEV for this case and now
> > we do indeed return EINVAL.
> >
> > So we may need to figure out how to fix that, or decide that such is life
> > and modify this code to give the right error message as done in this patch...
> >
> > Linus / Alex, thoughts? It's always been a bit messy because we also
> > return -ENODEV in the path where the ioctl hits a driver that is going away
> > so it hasn't uniquely identified a lack of support for a long time, even
> > if that is by far the most likely reason for this return code.
>
> Normally this would be ABI if any existing userspace can break because
> of the wrong error code being returned. Linus (the other one) has
> clearly stated that the ABI is a contract that cannot be broken.
>
> So I would just try to fix the errorpath to go back to returning -ENODEV.

Same from my side.
I was just looking through the code now.

Will send a patch.
Sorry for the breakage.

>
> Yours,
> Linus Walleij