[RFC 0/4] compat-ioctl.c diet

From: Arnd Bergmann
Date: Sun Nov 15 2009 - 11:04:52 EST


I've spent some time on making the compat ioctl code significantly smaller.
Removing the tty and socket level ioctl handling from common code
in linux-next helps a bit, but mostly just moves code to other places
but does not save much in an allyesconfig.


This is the output of /usr/bin/size on the fs/compat_ioctl.o
file in different versions:

2.6.32-rc7:
text data bss dec hex filename
13335 17792 2080 33207 81b7 obj/fs/compat_ioctl.o
linux-next:
8877 14696 2080 25653 6435 obj/fs/compat_ioctl.o
Simplifying the remaining code (this series):
7572 2144 4 9720 25f8 obj/fs/compat_ioctl.o
Moving more handlers directly into driver (future series):
4817 1740 4 6561 19a1 obj/fs/compat_ioctl.o

There are a few dependencies on code in other trees, so this
series doesn't currently apply cleanly anywhere except my
own tree.

The final series of patches that I'll post separately
depends on this one as well and touches most of the drivers
that currently require a conversion function in fs/compat_ioctl.c
that no other driver uses. Moving those conversions into
the drivers simplifies the common code and keeps the
native and compat versions closer.

Arnd <><

---

Arnd Bergmann (4):
compat_ioctl: inline all conversion handlers
compat_ioctl: simplify calling of handlers
compat_ioctl: simplify lookup table
compat_ioctl: pass compat pointer directly to handlers

fs/compat_ioctl.c | 471 +++++++++++++++++++++++++----------------------------
1 files changed, 220 insertions(+), 251 deletions(-)

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