xfs
[Top] [All Lists]

Re: [PATCH] XFS: Account for allocated blocks when expanding directories

To: Mark Goodwin <markgw@xxxxxxx>
Subject: Re: [PATCH] XFS: Account for allocated blocks when expanding directories
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Tue, 30 Sep 2008 12:09:34 +1000
Cc: xfs@xxxxxxxxxxx, kevin@xxxxxxxxxxxxxxxxx
In-reply-to: <48E184E0.4020301@xxxxxxx>
Mail-followup-to: Mark Goodwin <markgw@xxxxxxx>, xfs@xxxxxxxxxxx, kevin@xxxxxxxxxxxxxxxxx
References: <1222737924-18884-1-git-send-email-david@xxxxxxxxxxxxx> <48E184E0.4020301@xxxxxxx>
User-agent: Mutt/1.5.18 (2008-05-17)
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
> this?

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

<shutdown>

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
times now....

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
is correct.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>