xfs
[Top] [All Lists]

Re: xfstests, bad generic tests 009 and 308

To: xfs@xxxxxxxxxxx
Subject: Re: xfstests, bad generic tests 009 and 308
From: Angelo Dureghello <angelo.dureghello@xxxxxxxxxxx>
Date: Wed, 23 Sep 2015 11:15:28 +0200
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20150922212740.GJ19114@dastard>
References: <55FC3E0E.9060506@xxxxxxxxxxx> <20150918224412.GE26895@dastard> <55FFE665.7040004@xxxxxxxxxxx> <20150921225244.GD19114@dastard> <56014C62.1070403@xxxxxxxxxxx> <20150922212740.GJ19114@dastard>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.7.0
Hi Dave,

many thanks.

On 22/09/2015 23:27, Dave Chinner wrote:
Urk, the command should be "fsync", not "sync". Regardless, the
last bmap/fiemap pair shows something interesting:

bmap-vp:

/media/p6/testfile:
  EXT: FILE-OFFSET      BLOCK-RANGE      AG AG-OFFSET        TOTAL FLAGS
    0: [0..127]:        96..223           0 (96..223)          128 00000
    1: [128..2047]:     hole                                  1920
    2: [2048..2559]:    2144..2655        0 (2144..2655)       512 10000
fiemap -v:

/media/p6/testfile:
  EXT: FILE-OFFSET      BLOCK-RANGE      TOTAL FLAGS
    0: [0..127]:        96..223            128   0x0
    1: [128..2047]:     hole              1920
    2: [2048..2175]:    2144..2271         128 0x800
    3: [2176..2303]:    2272..2399         128   0x0
    4: [2304..2559]:    2400..2655         256 0x801
Note that they are different - the former shows an unwritten extent
of 256k @ offset 1MB, the later shows that extent split by 64k of
data @ 1088k.

The bmap -vp output is incorrect - it is supposed to sync data first
and so should look the same as the fiemap output. Can you run this
test again, this time with s/sync/fsync so the files are clean when
bmap/fiemap are run? Can you run it a second time (umount/mkfs
again) but with fiemap run first? i.e '-c "fiemap -v" -c "bmap -vp" \'
instead of the original order?

Next, can you compile your kernel with CONFIG_XFS_DEBUG=y and rerun
the tests? Does anything interesting appear in dmesg during the test
run?

Done, see mkfs_output_2.txt attached

Not actually useful - I need to know what is happening inside the
unlinkat() call.  I'm going to need a trace-cmd event dump of that
xfs_io command and the subsequent rm (at least for the first couple
of seconds of the rm). Please put the output file from the trace-cmd
record command on a tmpfs filesystem so it doesn't pollute the xfs
event trace ;)

I set some traces inside fs/namei.c  do_unlinkat()

root[243] vpc24 (master) /home/angelo/xfstests
# ./start_xfs_test.sh
QA output created by 308
[  144.822616] XFS (mmcblk0p5): Mounting V4 Filesystem
[  145.074537] XFS (mmcblk0p5): Starting recovery (logdev: internal)
[  145.107298] XFS (mmcblk0p5): Ending recovery (logdev: internal)
Silence is golden
[  145.413606] do_unlinkat(): entering
[  145.417124] do_unlinkat(): retry
[  145.421156] do_unlinkat(): retry_delegate
[  145.425920] do_unlinkat(): vfs_unlink returns 0
[  145.430950] do_unlinkat(): exit2

At least that function "seems" to complete, but, as from my previous message
looks like strace was not showing nothig over it.

I captured about 10 seconds of events after the "hang" on 308. Hope they are
enough.

File is quite long, so you can read it from here:
http://sysam.it/~angelo/events.txt

bye,

--
Best regards,
Angelo Dureghello

Attachment: mkfs_output_2.txt
Description: Text document

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