Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

compat_ioctl: hook up compat handler for FIEMAP ioctl

The FIEMAP_IOC_FIEMAP mapping ioctl was missing a 32-bit compat handler,
which means that 32-bit suerspace on 64-bit kernels cannot use this ioctl
command.

The structure is nicely aligned, padded, and sized, so it is just this
simple.

Tested w/ 32-bit ioctl tester (from Josef) on a 64-bit kernel on ext4.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Cc: <linux-ext4@vger.kernel.org>
Cc: Mark Lord <lkml@rtr.ca>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Josef Bacik <josef@redhat.com>
Cc: Jan Kara <jack@suse.cz>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Eric Sandeen and committed by
Linus Torvalds
69130c7c 0035fe00

+1
+1
fs/compat_ioctl.c
··· 1905 1905 COMPATIBLE_IOCTL(FIOASYNC) 1906 1906 COMPATIBLE_IOCTL(FIONBIO) 1907 1907 COMPATIBLE_IOCTL(FIONREAD) /* This is also TIOCINQ */ 1908 + COMPATIBLE_IOCTL(FS_IOC_FIEMAP) 1908 1909 /* 0x00 */ 1909 1910 COMPATIBLE_IOCTL(FIBMAP) 1910 1911 COMPATIBLE_IOCTL(FIGETBSZ)