]> git.baikalelectronics.ru Git - kernel.git/commit
[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)
commit37eb300201b5aa33a3bd8ae62d6b67c14d2f4165
tree1e9f4f89f1dd9cb64080e36eaec85337f2d0a0c3
parenteb1c21dfb26ab8c49cf512c2924c39706b6c179b
[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