XFS and 4k stacks/newer kernels.
Hi folks,
Firstly, I must apologise for the tremendously vague nature of this "report". I do hope it's of some use, and it's the best I can do at the moment.
I've been using XFS for several years now on a raid6 partition on a 15-disk array on linux 2.6.19 without 4k stacks, and without incident. And a very nice filesystem it is too.
I've just set up a new one based on exactly the same hardware but with a 2.6.22.3 kernel (and thus with compulsory 4k stacks, as I understand it?). During a large rsync to populate the filesystem, the write to local disk blocked in a fast device wait, but without any errors in dmesg. After giving it half an hour to wake up again, I hard rebooted and the XFS superblock was unreadable; bye bye filesystem.
So I've rolled back to 2.6.19, unsurprisingly, but I wanted to let you know that some issues with 4k stacks or other features of newer kernels may not have been resolved yet. Since there were no errors, I've nothing specific to give you, which I appreciate gives you little to go on. It wouldn't be right to leave this anecdote unreported, however.
Best of luck and thanks,
Mike.
Quoted 3 lines · Mike Ashton
I've just set up a new one based on exactly the same hardware but with a 2.6.22.3 kernel (and thus with compulsory 4k stacks, as I understand it?).
Not when I tested here. Turn off 4K stacks.
Quoted 2 lines
After giving it half an hour to wake up again, I hard rebooted and the XFS superblock was unreadable; bye bye filesystem.
Did xfs_repair fix the damage?
Quoted 3 lines
So I've rolled back to 2.6.19, unsurprisingly, but I wanted to let you know that some issues with 4k stacks or other features of newer kernels may not have been resolved yet.
XFS on i386 with 4K stacks isn't safe. People are working on making it better but it's a bit of an uphill battle in some ways.
I've posted patches in the past to change of some the config logic to avoid this but none of them ever got much more than a grunt ora snarky anti-XFS comment, it's probably time to do it again.