DragonFly commits List (threaded) for 2011-04
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
git: HAMMER VFS - Implement async I/O for double-buffer strategy case
commit 9a98f3cc99cb6d581eee77b15079c1fefd607e8f
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date: Sun Apr 10 08:46:04 2011 -0700
HAMMER VFS - Implement async I/O for double-buffer strategy case
* When vfs.hammer.double_buffer is enabled the HAMMER strategy code
was running synchronously. This creates numerous problems including
extra stalls when read-ahead is issued.
* Use the new breadcb() function to allow nominal double_buffer strategy
operations to run asynchronously. Essentially the original buffer and
CRC is recorded in the device bio and the copyback is made in the
callback.
* This improves performance vfs.hammer.double_buffer is enabled.
Summary of changes:
sys/vfs/hammer/hammer.h | 2 +
sys/vfs/hammer/hammer_io.c | 142 ++++++++++++++++++++++++++++++++++++++++
sys/vfs/hammer/hammer_ondisk.c | 3 +
sys/vfs/hammer/hammer_vnops.c | 45 +++++++++++--
4 files changed, 186 insertions(+), 6 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/9a98f3cc99cb6d581eee77b15079c1fefd607e8f
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]