On Mon, Aug 31, 2009 at 2:30 PM, Christoph Hellwig<hch@xxxxxxxxxxxxx> wrote: > On Mon, Aug 31, 2009 at 11:02:51AM +0400, Michael Tokarev wrote: >> Hello! >> >> I tried to resize an xfs filesystem on 64bit 2.6.30 kernel >> using 32bit userland, and that does not work, in dmesg I see: >> >> ioctl32(xfs_growfs:24426): Unknown cmd fd(3) cmd(400c586e){t:'X';sz:12} arg(ffa56df4) on /mnt >> ioctl32(xfs_growfs:24427): Unknown cmd fd(3) cmd(400c586e){t:'X';sz:12} arg(ff991254) on /mnt >> >> so apparently there's no compat_ioctl layer for these ioctls. >> >> Are there any plans to add these? :) > > Are you sure you're testing 2.6.30? The copat ioctls were added in > 2.6.28. On a slightly related note: I also have a system with a 32bit userland and a 64bit kernel. After switching to the 64bit kernel, xfs_fsr was no longer working, but that was caused by the then still missing compat ioctls. Today I retried it, but it still fails: XFS_IOC_SWAPEXT failed: ino=<number>: Invalid argument Looking at the compat code SWAPEXT looks somewhat suspicious: fs/xfs/linux-2.6/xfs_ioctl32.h defines XFS_IOC_SWAPEXT_32, but I can't find a single place where this is used. And in the big switch of xfs_compat_ioctl() the value XFS_IOC_SWAPEXT is surrounded by contants that all end in 32. I don't have any experience with the linux ioctl code, I only read fs/xfs/linux-2.6/xfs_ioctl32.c, but for my untrained eye it looks like there is a _32 missing. Or am I misreading this completely? Torsten -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html