Ioctls (Was: Re: 2.1.120 - too many errors on the...)

David Holland (dholland@cs.toronto.edu)
Tue, 22 Sep 1998 11:15:25 -0400


> I've said it before and I'll say it again - /proc is only half the
> problem. Robust parsers are all very well but what about ioctl()
> queries? No parsing is possible, it has to be some form of versioning
> in the ioctl() response. Parsers should still be robust, but that does
> not fix the whole problem.

The solution to ioctl() is not to use it.

In the course of building the VINO operating system, I made a list of
all the tty ioctls (some 40-odd), thought about what they did, and
came up with a set of three system calls that obsoleted all of them.

Only an example, and perhaps a bad one; a lot more software knows
about tty ioctls than a lot of the random ioctls linux supports, and
they're also much more well-defined. So it would be even easier, with
less backwards-compatibility overhead in libc, to deal with the kind
of thing I think you're talking about.

That lecture aside, I don't see why ioctls are different from other
system calls - if you change the format, you change the code number,
and/or symbolic name.

-- 
   - David A. Holland             | (please continue to send non-list mail to
     dholland@cs.utoronto.ca      | dholland@hcs.harvard.edu. yes, I moved.)

Any netkit mail should be sent to netbug@ftp.uk.linux.org, not me.

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