Re: [PATCH V2 2/2] fs/super.c: don't fool lockdep in freeze_super() and thaw_super() paths

From: Dave Chinner
Date: Tue Oct 04 2016 - 16:03:48 EST


On Tue, Oct 04, 2016 at 06:58:27PM +0200, Oleg Nesterov wrote:
> I removed this test and then the next run (after reboot) hangs at xfs/073 with
> a lot of errors in dmesg like
>
> XFS (loop2): Failing async write on buffer block 0x9600790. Retrying async write.
> blk_update_request: I/O error, dev loop2, sector 8389920
> loop: Write error at byte offset 4295647232, length 4096.

tests will dump lots of errors into dmesg. That doesn't mean there's
a problem - many tests are designed to exercise error paths. That,
however, looks like a loop device problem.

xfs/073 is using loop devices internally itself, so this ends up
with XFS on loop2 on XFS on loop1. That loop2 device is 100GB in
size, and the test copies the xfstests source tree to a loopback
filesystem image in $SCRATCH_DEV mounted on $TEST_DIR/$$.

The issue is, most likely, that your TEST_DIR and SCRATCH_MNT are
rooted in the xfstests source tree. Hence copying the xfstests
source tree will also try to copy the 8GB image files into the
filesystems that the image files contain. Which, clearly, will
eventually result in ENOSPC errors when writing to the underlying
loop device...

Put your TEST_DIR and SCRATCHMNT mount points outside the xfstests
directory, and this should go away. Most people use /mnt/test and
/mnt/scratch for these....

Cheers,

Dave.
--
Dave Chinner
david@xxxxxxxxxxxxx