Re: [PATCH] tools/iio: iio_event_monitor: Fix ioctl error check
From: Linus Walleij
Date: Mon May 03 2021 - 09:56:24 EST
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.
Yours,
Linus Walleij