]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: do not async metadata csumming in certain situations
authorJosef Bacik <jbacik@fusionio.com>
Tue, 25 Sep 2012 18:25:58 +0000 (14:25 -0400)
committerChris Mason <chris.mason@fusionio.com>
Tue, 9 Oct 2012 13:15:40 +0000 (09:15 -0400)
commit9499cb88e4cec88425def99f6d28e4fa6ce8d10e
tree5a96323c250b846da82da82ed999828255be0e34
parent6e5fd913c46da58f017e88f70b80961be92ac37e
Btrfs: do not async metadata csumming in certain situations

There are a coule scenarios where farming metadata csumming off to an async
thread doesn't help.  The first is if our processor supports crc32c, in
which case the csumming will be fast and so the overhead of the async model
is not worth the cost.  The other case is for our tree log.  We will be
making that stuff dirty and writing it out and waiting for it immediately.
Even with software crc32c this gives me a ~15% increase in speed with O_SYNC
workloads.  Thanks,

Signed-off-by: Josef Bacik <jbacik@fusionio.com>
fs/btrfs/disk-io.c
fs/btrfs/extent_io.c
fs/btrfs/extent_io.h