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