]> git-server-git.apps.pok.os.sepia.ceph.com Git - xfstests-dev.git/commit
xfsqa: add delayed allocation @ ENOSPC exerciser
authorDave Chinner <dchinner@redhat.com>
Sat, 6 Mar 2010 00:22:58 +0000 (11:22 +1100)
committerDave Chinner <david@fromorbit.com>
Sat, 6 Mar 2010 00:22:58 +0000 (11:22 +1100)
commit56cc8b05d4c5281c2c91fb7c2e5f0d8279e50922
tree702d426b5240aaa3745b13e7d26fee69b923364f
parentf2e62aadc3ec40b47b2a1c7f9a15a4a3e188e8dc
xfsqa: add delayed allocation @ ENOSPC exerciser

When we deplete the reserve block pool or receive an error during
delayed allocation, we currently toss the page away. If that page
has delayed allocation extents on it, we can fail to remove them and
leave stale delayed llocation extents lying around on the inode.
This can, in certain circumstances, trigger errors later on when the
stale delalloc extent it found again, including tripping a BUG().

Exercise this failure path so that we get code coverage of the fix
that prevents stale delalloc mappings from being left on the inode
when pages are tossed.

This is based on a test case supplied by Lachlan McIlroy.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
224 [new file with mode: 0644]
224.out [new file with mode: 0644]
group