Re: [discuss] Re: unregister_ioctl32_conversion and modules. ioctl32 revisited.

From: Arnd Bergmann
Date: Mon Dec 27 2004 - 06:33:00 EST


On Sünndag 26 Dezember 2004 23:26, Chris Wedgwood wrote:
> > It's an internal error code as Arnd pointed out.
>
> can we be sure this will never escape to userspace?  i can think of
> somewhere else we already do this (EFSCORRUPTED) and it does (somewhat
> deliberately escape to userspace) and this causes confusion from time
> to time when applications see 'errno == 990'

It's safe for the compat ioctl case. If someone wants to use the
same function for the compat and native handler, it would be a bug
to return -ENOIOCTLCMD from that handler with the current code.

To work around this, we could either convert -ENOIOCTLCMD to -EINVAL
when returning from sys_ioctl(). Or we could WARN_ON(err == -ENOIOCTLCMD)
for the native path in order to make the intention clear.

Arnd <><

Attachment: pgp00000.pgp
Description: signature