Re: ENOIOCTLCMD?

Mark H. Wood (mwood@IUPUI.Edu)
Sat, 12 May 2001 08:40:18 -0500 (EST)


On Sat, 12 May 2001, Alan Cox wrote:
> > Can somebody explain the use of ENOIOCTLCMD? There are order of 170
> > uses in the kernel, but I don't see any guidelines for that use (nor
> > what prevents it from being seen by user programs).
>
> It should never be seen by apps. If it can be then it is wrong code.
> Basically you use it in things like
>
>
>
> int err = dev->ioctlfunc(dev, op, arg);
> if( err != -ENOIOCTLCMD)
> return err;
>
> /* Driver specific code does not support this ioctl */
>
> switch(op)
> {
>
> ...
> default:
> return -ENOTTY;
> }
>
> Its a way of passing back 'you handle it'

Okay, but another way of looking at it is as an instance of the classic
joke:

Husband: What have I done wrong this time?
Wife: If you don't know, I'm not going to tell you!

IOW instead of getting back "this file doesn't know what that IOCTL
means", you get "error somewhere". It certainly would be nice to know
*which* parameter was invalid and *why* it was invalid. Changing this
would be against the lore, but I would rather throw away excess
information than never have received it in the first place. *sigh*

-- 
Mark H. Wood, Lead System Programmer   mwood@IUPUI.Edu
Make a good day.

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/