diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2005-09-06 20:12:15 -0700 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2005-09-06 20:12:15 -0700 |
commit | 09bbe1043a65903c93f6b6df123e36e3584bfac7 (patch) | |
tree | e12cbfce02e6e4706d0d51f34bfde962de95efed /arch | |
parent | 93c37f292110a37dd77e4cc0aaf1c341d79bf6aa (diff) | |
download | blackbird-op-linux-09bbe1043a65903c93f6b6df123e36e3584bfac7.tar.gz blackbird-op-linux-09bbe1043a65903c93f6b6df123e36e3584bfac7.zip |
[SPARC64]: Fix set/get MTU cases in sunos_ioctl()
Need to use compat struct sizes and compat_sys_ioctl().
Reported by Adrian Bunk via kernel bugzilla #2683
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/sparc64/kernel/sunos_ioctl32.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/arch/sparc64/kernel/sunos_ioctl32.c b/arch/sparc64/kernel/sunos_ioctl32.c index 87c1aeb02220..7654b8a7f03a 100644 --- a/arch/sparc64/kernel/sunos_ioctl32.c +++ b/arch/sparc64/kernel/sunos_ioctl32.c @@ -152,11 +152,12 @@ asmlinkage int sunos_ioctl (int fd, u32 cmd, u32 arg) ret = compat_sys_ioctl(fd, SIOCGIFCONF, arg); goto out; - case _IOW('i', 21, struct ifreq): /* SIOCSIFMTU */ - ret = sys_ioctl(fd, SIOCSIFMTU, arg); + case _IOW('i', 21, struct ifreq32): + ret = compat_sys_ioctl(fd, SIOCSIFMTU, arg); goto out; - case _IOWR('i', 22, struct ifreq): /* SIOCGIFMTU */ - ret = sys_ioctl(fd, SIOCGIFMTU, arg); + + case _IOWR('i', 22, struct ifreq32): + ret = compat_sys_ioctl(fd, SIOCGIFMTU, arg); goto out; case _IOWR('i', 23, struct ifreq32): |