On 14.01.19 г. 13:42 ч., Scott E. Blomquist wrote:
> 
> Scott E. Blomquist writes:
>  > Nikolay Borisov writes:
>  > 
>  > Thanks.  I have not seen the free space cache message with the new
>  > kernel.
>  > 
>  > Next time the hang pops up I'll echo w > /proc/sysrq-trigger and send
>  > it along.
>  > 
>  > I am hoping that the new kernel will magically fix the problem.
>  > 
>  > Thanks again,
>  > 
>  > sb. Scott Blomquist
> 
> The file system hung again below is the sysrq output
> 
> Linux kanlabfs 4.19.13-custom #1 SMP Wed Jan 9 08:36:50 EST 2019 x86_64 
> x86_64 x86_64 GNU/Linux
> 
> btrfs-progs v4.19.1 
> 
> # btrfs fi df /export/
> Data, single: total=79.61TiB, used=79.61TiB
> System, single: total=36.00MiB, used=8.31MiB
> Metadata, single: total=192.01GiB, used=190.19GiB
> GlobalReserve, single: total=512.00MiB, used=0.00B

So this btrfs is hosted on your local machine but it is exported via
NFS, correct?

> 
> #  btrfs fi show
> Label: '/export'  uuid: 8f92c2e4-86fe-48cb-b2d3-bc36da765f02
>         Total devices 3 FS bytes used 79.79TiB
>         devid    1 size 47.30TiB used 43.58TiB path /dev/sda1
>         devid    2 size 21.83TiB used 18.11TiB path /dev/sdb1
>         devid    3 size 21.83TiB used 18.11TiB path /dev/sdc1

What kind of disks are those, presumably spinning rust due to their size
but what model/make?

> 
> [Mon Jan 14 06:24:26 2019] sysrq: SysRq : Show Blocked State

<snip>

> [Mon Jan 14 06:24:26 2019] btrfs-transacti D    0  6808      2 0x80000000
> [Mon Jan 14 06:24:26 2019] Call Trace:
> [Mon Jan 14 06:24:26 2019]  ? __schedule+0x2ea/0x870
> [Mon Jan 14 06:24:26 2019]  schedule+0x32/0x80
> [Mon Jan 14 06:24:26 2019]  btrfs_start_ordered_extent+0xca/0x100 [btrfs]
> [Mon Jan 14 06:24:26 2019]  ? wait_woken+0x80/0x80
> [Mon Jan 14 06:24:26 2019]  btrfs_wait_ordered_range+0xbd/0x110 [btrfs]
> [Mon Jan 14 06:24:26 2019]  __btrfs_wait_cache_io+0x49/0x1a0 [btrfs]
> [Mon Jan 14 06:24:26 2019]  btrfs_write_dirty_block_groups+0xed/0x360 [btrfs]
> [Mon Jan 14 06:24:26 2019]  ? btrfs_run_delayed_refs+0x8b/0x1d0 [btrfs]
> [Mon Jan 14 06:24:26 2019]  commit_cowonly_roots+0x1ed/0x280 [btrfs]
> [Mon Jan 14 06:24:26 2019]  btrfs_commit_transaction+0x36e/0x8d0 [btrfs]
> [Mon Jan 14 06:24:26 2019]  ? start_transaction+0x9b/0x3f0 [btrfs]
> [Mon Jan 14 06:24:26 2019]  transaction_kthread+0x14d/0x180 [btrfs]
> [Mon Jan 14 06:24:26 2019]  kthread+0xf8/0x130
> [Mon Jan 14 06:24:26 2019]  ? btrfs_cleanup_transaction+0x530/0x530 [btrfs]
> [Mon Jan 14 06:24:26 2019]  ? kthread_bind+0x10/0x10
> [Mon Jan 14 06:24:26 2019]  ret_from_fork+0x35/0x40

So the transaction is being committed as a result of that
btrfs_start_ordered_extent, which flushes data to disk. Since you've
compiled your kernel can you run the following command from the kernel's
source:

./scripts/faddr2line  vmlinux  btrfs_start_ordered_extent+0xca/0x100

'vmlinux' should be the kernel executable with debug info that results
from compiling the kernel. I want to figure out which line exactly
btrfs_start_ordered_extent+0xca/0x100 resolves to.


<snip>

All other processes are waiting for the transaction to commit. So we
have to figure out why btrfs_commit_transaction doesn't finish.

> 
> Thanks for any help.
> 
> sb. Scott Blomquist
> 

Reply via email to