diff options
author | Johannes Stezenbach <js@sig21.net> | 2011-07-01 16:32:26 -0400 |
---|---|---|
committer | Jens Axboe <jaxboe@fusionio.com> | 2011-07-01 16:32:26 -0400 |
commit | 390192b300570b2bc721d77067ca133f58015ae8 (patch) | |
tree | bacbd75f23e74308b814146338bcaa6b3636bae7 /fs/compat_ioctl.c | |
parent | 85ef06d1d252f6a2e73b678591ab71caad4667bb (diff) |
compat_ioctl: fix warning caused by qemu
On Linux x86_64 host with 32bit userspace, running
qemu or even just "qemu-img create -f qcow2 some.img 1G"
causes a kernel warning:
ioctl32(qemu-img:5296): Unknown cmd fd(3) cmd(00005326){t:'S';sz:0} arg(7fffffff) on some.img
ioctl32(qemu-img:5296): Unknown cmd fd(3) cmd(801c0204){t:02;sz:28} arg(fff77350) on some.img
ioctl 00005326 is CDROM_DRIVE_STATUS,
ioctl 801c0204 is FDGETPRM.
The warning appears because the Linux compat-ioctl handler for these
ioctls only applies to block devices, while qemu also uses the ioctls on
plain files.
Signed-off-by: Johannes Stezenbach <js@sig21.net>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
Diffstat (limited to 'fs/compat_ioctl.c')
-rw-r--r-- | fs/compat_ioctl.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c index 61abb638b4bf..8be086e9abe4 100644 --- a/fs/compat_ioctl.c +++ b/fs/compat_ioctl.c | |||
@@ -68,6 +68,8 @@ | |||
68 | 68 | ||
69 | #ifdef CONFIG_BLOCK | 69 | #ifdef CONFIG_BLOCK |
70 | #include <linux/loop.h> | 70 | #include <linux/loop.h> |
71 | #include <linux/cdrom.h> | ||
72 | #include <linux/fd.h> | ||
71 | #include <scsi/scsi.h> | 73 | #include <scsi/scsi.h> |
72 | #include <scsi/scsi_ioctl.h> | 74 | #include <scsi/scsi_ioctl.h> |
73 | #include <scsi/sg.h> | 75 | #include <scsi/sg.h> |
@@ -944,6 +946,9 @@ COMPATIBLE_IOCTL(FIOQSIZE) | |||
944 | IGNORE_IOCTL(LOOP_CLR_FD) | 946 | IGNORE_IOCTL(LOOP_CLR_FD) |
945 | /* md calls this on random blockdevs */ | 947 | /* md calls this on random blockdevs */ |
946 | IGNORE_IOCTL(RAID_VERSION) | 948 | IGNORE_IOCTL(RAID_VERSION) |
949 | /* qemu/qemu-img might call these two on plain files for probing */ | ||
950 | IGNORE_IOCTL(CDROM_DRIVE_STATUS) | ||
951 | IGNORE_IOCTL(FDGETPRM32) | ||
947 | /* SG stuff */ | 952 | /* SG stuff */ |
948 | COMPATIBLE_IOCTL(SG_SET_TIMEOUT) | 953 | COMPATIBLE_IOCTL(SG_SET_TIMEOUT) |
949 | COMPATIBLE_IOCTL(SG_GET_TIMEOUT) | 954 | COMPATIBLE_IOCTL(SG_GET_TIMEOUT) |