Hi everyone,
I extended the btrfs volume on my laptop by adding a second partition to
it which lies on the same SSD (using btrfs device add). Since I did
this, all kinds of applications regularly hang for up to 30 seconds. It
seems they are stuck in the fdatasync syscall. For example:
$ strace -tt -T gajim 2>&1 | grep fdatasync
[...]
11:36:31.112200 fdatasync(25) = 0 <0.006958>
11:36:32.147525 fdatasync(25) = 0 <0.008138>
11:36:32.156882 fdatasync(25) = 0 <0.006866>
11:36:32.165979 fdatasync(25) = 0 <0.011797>
11:36:32.178867 fdatasync(25) = 0 <23.636614>
11:36:55.827726 fdatasync(25) = 0 <0.009595>
11:36:55.838702 fdatasync(25) = 0 <0.007261>
11:36:55.850440 fdatasync(25) = 0 <0.006807>
11:36:55.858168 fdatasync(25) = 0 <0.006767>
[...]
File descriptor 25 here points to a file which is just ~90KB, so it
really shouldn't take that long.
Removing the second partition again resolves the problem. Does anyone
know this issue? Is it related to btrfs? Or am I just doing something wrong?
Best,
Florian
Some more info:
$ btrfs device usage /
/dev/sda2, ID: 2
Device size: 52.16GiB
Device slack: 0.00B
Data,single: 1.00GiB
Unallocated: 51.16GiB
/dev/sda8, ID: 1
Device size: 174.92GiB
Device slack: 0.00B
Data,single: 168.91GiB
Metadata,single: 3.01GiB
System,single: 4.00MiB
Unallocated: 3.00GiB
$ fdisk -l /dev/sda
Disk /dev/sda: 238.5 GiB, 256060514304 bytes, 500118192 sectors
Disk model: SAMSUNG SSD PM87
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A48B5A25-AA84-4D3F-90DD-E8A4991BDF03
Device Start End Sectors Size Type
/dev/sda1 2048 1026047 1024000 500M EFI System
/dev/sda2 1026048 110422015 109395968 52.2G Linux filesystem
/dev/sda8 110422016 477263871 366841856 174.9G Linux filesystem
/dev/sda9 477263872 481458175 4194304 2G Linux swap
$ uname -a
Linux dell 4.20.0-arch1-1-ARCH #1 SMP PREEMPT Mon Dec 24 03:00:40 UTC
2018 x86_64 GNU/Linux