Latest working kernel version: 2.6.28-rc9
Earliest failing kernel version: 2.6.29-rc1
Hardware Environment: IBM Thinkpad T42
xfs_fsr -v fails with:
XFS_IOC_SWAPEXT failed: ino=XXXXXXX: Invalid argument
Steps to reproduce:
Run xfs_fsr on a moderately fragmented filesystem.
Have git-bisected this to the following patch:
Author: email@example.com <firstname.lastname@example.org>
Date: Tue Nov 25 21:20:06 2008 -0600
[XFS] Move copy_from_user calls out of ioctl helpers into ioctl switch.
Moving the copy_from_user out of some of the ioctl helpers will
make it easier for the compat ioctl switch to copy in the right
struct, then just pass to the underlying helper.
Also, move common access checks into the helpers themselves,
and out of the native ioctl switch code, to reduce code
duplication between native & compat ioctl callers.
Signed-off-by: Eric Sandeen <email@example.com>
Reviewed-by: Christoph Hellwig <firstname.lastname@example.org>
Signed-off-by: Lachlan McIlroy <email@example.com>
Thanks for doing the bisecting.
Which arch is this on, and if a 64-bit arch, is it 32 bit or 64 bit userspace?
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 13
model name : Intel(R) Pentium(R) M processor 1.70GHz
stepping : 6
Created attachment 19986 [details]
Wow, that was an incredibly dumb mistake on my part, not sure how it ever worked at all. Does this help?
Yes, it fixes it.
thanks so much for finding, bisecting, and testing.
Patch sent to the list, cc'd akpm, should get upstream soon if all goes well. :)
Handled-By : Eric Sandeen <firstname.lastname@example.org
Patch : http://bugzilla.kernel.org/attachment.cgi?id=19986&action=view
First-Bad-Commit : 743bb4650da9e2595d6cedd01c680b5b9398c74a
Fixed by commit f0e0059b9c18426cffdcc04161062251a8f9741e .