On 2018年01月15日 09:47, Johannes Ernst wrote:
>>>>> INFO: task systemd-journal:20876 blocked for more than 120 seconds.
>>>>> [ 5037.962603]       Tainted: G         C O    4.14.9-1-ARCH #1
>>>>> [ 5037.962609] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" 
>>>>> disables this message.
>>>>> [ 5037.962616] systemd-journal D    0 20876  20860 0x00000100
>>>>> [ 5037.962622] Call Trace:
>>>>> [ 5037.962635]  ? __schedule+0x290/0x890
>>>>> [ 5037.962640]  ? __slab_free+0x14e/0x300
>>>>> [ 5037.962645]  ? _copy_to_iter+0x8f/0x3d0
>>>>> [ 5037.962651]  schedule+0x2f/0x90
>>>>> [ 5037.962704]  btrfs_tree_read_lock+0xb6/0x100 [btrfs]
>>>>
>>>> Still some tree write is blocking all incoming read.
>>>>
>>>> BTW, did your tests include any send and relocation operations?
>>>>
>>>> IIRC there is a bug that makes send and relocation (I'm not sure though)
>>>> will cause similar problem.
>>>
>>> No. I’m doing nothing btrfs-specific at all, it’s just whatever 
>>> systemd-nspawn —ephemeral does.
>>
>> So, only systemd-nspwan --ephemeral, and nothing else at all?
>>
>> Even nothing happened inside the container?
> 
> 
> Gotcha. (Sorry for missing that)
> 
> Inside the container, snapper might be invoked. Here are the snippets:
> 
> snapper -c root create-config -t ubos-default /
> snapper setup-quota
> snapper -c root create --type pre --print-number
> snapper -c root create --type post --pre-number <n>
> 
> Here is the snapper config:
> 
> # Snapper default configuration for UBOS.
> #
> # subvolume to snapshot
> SUBVOLUME="/"
> 
> # filesystem type
> FSTYPE="btrfs"
> 
> # btrfs qgroup for space aware cleanup algorithms
> QGROUP=""

What about disabling qgroup here?

And since I'm not familiar with snapper, I'm not pretty sure what it
will do.

But what about disabling snapper and try again to see if the btrfs hangs?

Thanks,
Qu

> 
> # fraction of the filesystems space the snapshots may use
> SPACE_LIMIT="0.2"
> 
> # users and groups allowed to work with config
> ALLOW_USERS=""
> ALLOW_GROUPS=""
> 
> # sync users and groups from ALLOW_USERS and ALLOW_GROUPS to .snapshots
> # directory
> SYNC_ACL="no"
> 
> # start comparing pre- and post-snapshot in background after creating
> # post-snapshot
> BACKGROUND_COMPARISON="no"
> 
> # run daily number cleanup
> NUMBER_CLEANUP="yes"
> 
> # limit for number cleanup; unit is seconds
> NUMBER_MIN_AGE="1800"
> NUMBER_LIMIT="50"
> NUMBER_LIMIT_IMPORTANT="10"
> 
> # create hourly snapshots
> TIMELINE_CREATE="no"
> 
> # cleanup hourly snapshots after some time
> TIMELINE_CLEANUP="yes"
> 
> # limits for timeline cleanup; unit is seconds
> TIMELINE_MIN_AGE="1800"
> TIMELINE_LIMIT_HOURLY="12"
> TIMELINE_LIMIT_DAILY="7"
> TIMELINE_LIMIT_WEEKLY="0"
> TIMELINE_LIMIT_MONTHLY="6"
> TIMELINE_LIMIT_YEARLY="0"
> 
> # cleanup empty pre-post-pairs
> EMPTY_PRE_POST_CLEANUP="yes"
> 
> # limits for empty pre-post-pair cleanup
> EMPTY_PRE_POST_MIN_AGE="1800"
> 
> 
> 
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to