[XFS] fix 32-bit compat ioctls for GETXFLAGS, SETXFLAGS, GETVERSION
authorEric Sandeen <sandeen@sandeen.net>
Fri, 12 Oct 2007 01:13:22 +0000 (11:13 +1000)
committerLachlan McIlroy <lachlan@redback.melbourne.sgi.com>
Thu, 7 Feb 2008 07:13:17 +0000 (18:13 +1100)
commitbc58f9bb6be02a80b5f1f757b656c9affc07154f
tree1e9f4f89f1dd9cb64080e36eaec85337f2d0a0c3
parentd4f3cc016fd6b392d483adc586b6dfaabad081af
[XFS] fix 32-bit compat ioctls for GETXFLAGS, SETXFLAGS, GETVERSION

XFS_IOC_GETVERSION, XFS_IOC_GETXFLAGS and XFS_IOC_SETXFLAGS all take a
"long" which changes size between 32 and 64 bit platforms.

So, the ioctl cmds that come in from a 32-bit app aren't as expected, for
example on GETXFLAGS,

unknown cmd fd(3) cmd(80046601){t:'f';sz:4}

due to the size mismatch.

So, use instead the 32-bit version of the commands for compat ioctls, and
other than that it doesn't take any more manipulation.

Also, for both native and compat versions, just define them to the values
as defined in fs.h

SGI-PV: 971186
SGI-Modid: xfs-linux-melb:xfs-kern:29849a

Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
fs/xfs/linux-2.6/xfs_ioctl32.c
fs/xfs/xfs_fs.h