[dm-devel] About dm-integrity layer and fsync

Mikulas Patocka mpatocka at redhat.com
Fri Jan 3 17:14:07 UTC 2020



On Fri, 3 Jan 2020, Patrick Dung wrote:

> Hello,
> 
> A quick question on dm-integrity. Does dm-integrity layer honors fsync?

Yes it does.

However, it writes data into the journal and when the journal is flushed, 
it reports the fsync function as finished.

On a mechanical disk, writes to contiguous space (i.e. the journal) are 
faster than random writes all over the disk, that's why you see better 
performance with dm-integrity than without it.

Mikulas

> I was testing dm-integrity and performance. It had a strange result that using dm-integrity with journal is faster than a normal file system or dm-integrity with
> bitmap (no journal). fio is used for testing the storage performance. The device is a SATA hard disk drive. Then I created a 100GB partition for testing.
> 
> Below is the test cases:
> 
> 1) XFS on a partition directly test case
> 
> 2) dm-integrity: crc32c on a partition with default setting journal commit interval is 10 seconds. Then create XFS on it. test case
> 
> 3) dm-integrity: crc32c on a partition default setting journal commit interval set to 5 seconds. Then create XFS on it.
> 
> 4) dm-integrity:  crc32c on a partition default setting but using bitmap instead of journal. Then create XFS on it.
> 
> FIO command:
> 
> fio --filename=./t1 --direct=1 --rw=randrw --refill_buffers --norandommap --randrepeat=0 --ioengine=sync --bs=4k --rwmixread=75 --iodepth=16 --numjobs=8 --runtime=60
> --group_reporting --fsync=1 --name=4ktest --size=4G
> 
> Result:
> 
>  1. Read/Write IOPS: 117/41. Read/Write Speed 481KB/s 168KB/s
>  2. Read/Write IOPS: 178/59. Read/Write Speed 732KB/s 244KB/s
>  3. Read/Write IOPS: 169/57. Read/Write Speed 695KB/s 236KB/s
>  4. Read/Write IOPS: 97/32. Read/Write Speed 400K/s 131KB/s
> The original discussion in: https://gitlab.com/cryptsetup/cryptsetup/issues/513 . Milan Broz said the dm-devel mailing list is a suitable place to discuss the probem.
> 
> Thanks in advance.
> 
> Patrick
> 
> 


More information about the dm-devel mailing list