On Tue, Sep 30, 2008 at 11:46:08AM +1000, Mark Goodwin wrote:
> Hi Dave,
> by the looks of it, this is a proposed fix for the bug reported
> by Kevin Jamieson (and others in the past) :
> "xfs_trans_cancel at line 1138 of file fs/xfs/xfs_trans.c"
Yes, it's the main fix needed.
> Do you (or Kevin or anyone) have a reliable test case to reproduce
Sure - the metadump image that Kevin sent us a pointer to reproduces
it precisely. i.e:
# echo 255 > /proc/sys/fs/xfs/panic_mask
# mount /dev/ubd/5 /mnt/xfs
# cd /mnt/xfs/*/nerd/run1/*5st1\-
# touch aaaaaaaa
With the patch I posted, it doesn't shut down any more and the
create succeeds. The patch has passed through xfsqa a couple of
Of the list of things I posted after analysing the problem,
this patch addresses item 1, via the indirect method noted in
item 2, and I've covered all the expansion cases (I think) in the
directory code (item 3).
Item 4 and 5 are less critical given that I don't think they can
cause shutdowns now that the directory reserved block accounting