On Wed, Oct 09, 2013 at 10:11:29PM -0500, Eric Sandeen wrote:
> On 3/30/12 10:01 AM, Eric Sandeen wrote:
> > In some cases the target file may have a non-local attribute,
> > but the temp file gets assigned a local attribute on creation,
> > due to selinux, for example.
> > In this case, the large-ish selinux attr will create a forkoff
> > in the temp file smaller than the forkoff in the target file,
> > because the FMT_EXTENTS attr takes up less space. There is
> > no mechanism to grow the forkoff to match, so we can end up
> > failing to swap these 2 inodes if the result is not enough
> > data space in the temp inode as a result.
> > After testing the target file for a non-local extent, and
> > checking to see if the forkoff needs to be grown on the first
> > pass, we can add a large attr to knock all attributes of the
> > temp file out of local format, and grow the fork offset.
> > This passes xfstest 227, and also resolves issues seen on
> > a metadata image provided by Gabriel.
> > Reported-by: Gabriel VLASIU <gabriel@xxxxxxxxxx>
> > Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
> > ---
> Ping #2? This was a real bug once, IIRC. Probably still is...
> Patch 1/2 helped identify the problem, so ping on that too I guess.
Can you repost all these old patches as a new series to make it easy
to apply and test them?