diff options
author | Maciej W. Rozycki <macro@linux-mips.org> | 2006-10-11 04:21:54 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-11 14:14:22 -0400 |
commit | 39484e53bb00f55b6303a908070db133608ef2a5 (patch) | |
tree | 26c561e6ba06d03973652cc37544a7d930e18e42 /fs/compat_ioctl.c | |
parent | 2e3ad8af43c2f555c1be6c02581f6cc939dcb71c (diff) |
[PATCH] 32-bit compatibility HDIO IOCTLs
A couple of HDIO IOCTLs are not yet handled and a few others are marked
as using a pointer rather than an unsigned long. The formers include:
HDIO_GET_WCACHE, HDIO_GET_ACOUSTIC, HDIO_GET_ADDRESS and
HDIO_GET_BUSSTATE. The latters are: HDIO_SET_MULTCOUNT,
HDIO_SET_UNMASKINTR, HDIO_SET_KEEPSETTINGS, HDIO_SET_32BIT,
HDIO_SET_NOWERR, HDIO_SET_DMA, HDIO_SET_PIO_MODE and HDIO_SET_NICE.
Additionally 0x330 used to be HDIO_GETGEO_BIG and may be issued by 32-bit
`hdparm' run on a 64-bit kernel making Linux complain loudly.
This is a fix for these issues.
Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/compat_ioctl.c')
-rw-r--r-- | fs/compat_ioctl.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c index 27ca1aa30562..a91f2628c981 100644 --- a/fs/compat_ioctl.c +++ b/fs/compat_ioctl.c | |||
@@ -2438,13 +2438,17 @@ HANDLE_IOCTL(0x1260, broken_blkgetsize) | |||
2438 | HANDLE_IOCTL(BLKFRAGET, w_long) | 2438 | HANDLE_IOCTL(BLKFRAGET, w_long) |
2439 | HANDLE_IOCTL(BLKSECTGET, w_long) | 2439 | HANDLE_IOCTL(BLKSECTGET, w_long) |
2440 | HANDLE_IOCTL(BLKPG, blkpg_ioctl_trans) | 2440 | HANDLE_IOCTL(BLKPG, blkpg_ioctl_trans) |
2441 | HANDLE_IOCTL(HDIO_GET_KEEPSETTINGS, hdio_ioctl_trans) | ||
2442 | HANDLE_IOCTL(HDIO_GET_UNMASKINTR, hdio_ioctl_trans) | 2441 | HANDLE_IOCTL(HDIO_GET_UNMASKINTR, hdio_ioctl_trans) |
2443 | HANDLE_IOCTL(HDIO_GET_DMA, hdio_ioctl_trans) | ||
2444 | HANDLE_IOCTL(HDIO_GET_32BIT, hdio_ioctl_trans) | ||
2445 | HANDLE_IOCTL(HDIO_GET_MULTCOUNT, hdio_ioctl_trans) | 2442 | HANDLE_IOCTL(HDIO_GET_MULTCOUNT, hdio_ioctl_trans) |
2443 | HANDLE_IOCTL(HDIO_GET_KEEPSETTINGS, hdio_ioctl_trans) | ||
2444 | HANDLE_IOCTL(HDIO_GET_32BIT, hdio_ioctl_trans) | ||
2446 | HANDLE_IOCTL(HDIO_GET_NOWERR, hdio_ioctl_trans) | 2445 | HANDLE_IOCTL(HDIO_GET_NOWERR, hdio_ioctl_trans) |
2446 | HANDLE_IOCTL(HDIO_GET_DMA, hdio_ioctl_trans) | ||
2447 | HANDLE_IOCTL(HDIO_GET_NICE, hdio_ioctl_trans) | 2447 | HANDLE_IOCTL(HDIO_GET_NICE, hdio_ioctl_trans) |
2448 | HANDLE_IOCTL(HDIO_GET_WCACHE, hdio_ioctl_trans) | ||
2449 | HANDLE_IOCTL(HDIO_GET_ACOUSTIC, hdio_ioctl_trans) | ||
2450 | HANDLE_IOCTL(HDIO_GET_ADDRESS, hdio_ioctl_trans) | ||
2451 | HANDLE_IOCTL(HDIO_GET_BUSSTATE, hdio_ioctl_trans) | ||
2448 | HANDLE_IOCTL(FDSETPRM32, fd_ioctl_trans) | 2452 | HANDLE_IOCTL(FDSETPRM32, fd_ioctl_trans) |
2449 | HANDLE_IOCTL(FDDEFPRM32, fd_ioctl_trans) | 2453 | HANDLE_IOCTL(FDDEFPRM32, fd_ioctl_trans) |
2450 | HANDLE_IOCTL(FDGETPRM32, fd_ioctl_trans) | 2454 | HANDLE_IOCTL(FDGETPRM32, fd_ioctl_trans) |