Re: [PATCH V2] xfs/289: test fragmented multi-fsb readdir

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]




On 5/18/17 9:43 PM, Xiao Yang wrote:
> Hi Eric and Eryu
> 
> I tested it on RHE7.3GA and RHEL7.4Alpha, i got ENOSPC error instead of hang.  Is it expected behavior?
> 
> Please see the following detailed message:
> =================================================================================
> [root@RHEL7U4Alpha_Intel64 xfstests]# ./check xfs/294
> FSTYP         -- xfs (non-debug)
> PLATFORM      -- Linux/x86_64 RHEL7U4Alpha_Intel64 3.10.0-657.el7.x86_64
> MKFS_OPTIONS  -- -f -bsize=4096 /dev/sda11
> MOUNT_OPTIONS -- -o context=system_u:object_r:root_t:s0 /dev/sda11 /mnt/xfstests/scratch
> 
> xfs/294 10s ... - output mismatch (see /var/lib/xfstests/results//xfs/294.out.bad)
>     --- tests/xfs/294.out    2017-05-19 10:39:31.798010275 +0800
>     +++ /var/lib/xfstests/results//xfs/294.out.bad    2017-05-19 10:40:02.112008755 +0800
>     @@ -1,2 +1,1234 @@
>      QA output created by 294
>     -23accd029fad51ec02e4ec1f24799878  -
>     +touch: cannot touch '/mnt/xfstests/scratch/testdir/12345678901234567890169': No space left on device
>     +touch: cannot touch '/mnt/xfstests/scratch/testdir/12345678901234567890170': No space left on device
>     +touch: cannot touch '/mnt/xfstests/scratch/testdir/12345678901234567890171': No space left on device
>     +touch: cannot touch '/mnt/xfstests/scratch/testdir/12345678901234567890172': No space left on device
>     +touch: cannot touch '/mnt/xfstests/scratch/testdir/12345678901234567890173': No space left on device
>     ...
>     (Run 'diff -u tests/xfs/294.out /var/lib/xfstests/results//xfs/294.out.bad'  to see the entire diff)

That's an odd failure; I wrote the test for upstream...

On that kernel, despite free inodes:

# df -i /mnt/scratch
Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/loop1      10260   490  9770    5% /mnt/scratch

and xfs_db concurs (more or less?):

icount = 10240
ifree = 9750

creating a new inode fails:

# touch /mnt/scratch/testdir/12345678901234567890169
touch: cannot touch ‘/mnt/scratch/testdir/12345678901234567890169’: No space left on device

Everything about the fs looks the same as if we run it upstream, including
the reserved blocks:

reserved blocks = 6553
available reserved blocks = 6553

But, it's failing to allocate the space:

           touch-12302 [005] d... 118038.499302: ret_xfs_mod_fdblocks: (xfs_trans_reserve+0x123/0x200 [xfs] <- xfs_mod_fdblocks) arg1=0xffffffe4

(arg1 is the return value, -ENOSPC)

It's not clear to me at this point why we can't create another inode on this fs.

-Eric

--
To unsubscribe from this list: send the line "unsubscribe fstests" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux