net/atm: move all compat_ioctl handling to atm/ioctl.c
authorArnd Bergmann <arnd@arndb.de>
Wed, 11 Nov 2009 03:45:22 +0000 (03:45 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 12 Nov 2009 03:22:23 +0000 (19:22 -0800)
commit805003a41c035ccbe37d3d5ef5e6df8874346b5a
tree55828a6642fc6f974842cea3387f2625ec9499b3
parenta2116ed223c88b6c424f42398e54d1607dc785ba
net/atm: move all compat_ioctl handling to atm/ioctl.c

We have two implementations of the compat_ioctl handling for ATM, the
one that we have had for ages in fs/compat_ioctl.c and the one added to
net/atm/ioctl.c by David Woodhouse. Unfortunately, both versions are
incomplete, and in practice we use a very confusing combination of the
two.

For ioctl numbers that have the same identifier on 32 and 64 bit systems,
we go directly through the compat_ioctl socket operation, for those that

differ, we do a conversion in fs/compat_ioctl.c.

This patch moves both variants into the vcc_compat_ioctl() function,
while preserving the current behaviour. It also kills off the COMPATIBLE_IOCTL
definitions that we never use here.
Doing it this way is clearly not a good solution, but I hope it is a
step into the right direction, so that someone is able to clean up this
mess for real.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Eric Dumazet <eric.dumazet@gmail.com>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/atm/ioctl.c
net/socket.c