git: HAMMER VFS - Handle critical I/O errors without panicing
Matthew Dillon
dillon at crater.dragonflybsd.org
Mon Nov 2 17:48:49 PST 2009
commit 2faf07370caaeaef6f64df1610d34b421946c538
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Mon Nov 2 17:42:21 2009 -0800
HAMMER VFS - Handle critical I/O errors without panicing
Physically pull the SATA cable while pounding the disk via a HAMMER
mounted filesystem and fix the error paths that are not handled properly.
Make umount -f work properly.
Reminder: Currently if HAMMER hits a critical media error it drops down
into read-only mode and can only be read or unmounted after that.
* Do not try to test the CRC for bread data if the bread fails.
* Clean up the reference count on hammer_buffer structures related to
dangling modified and ioerror bits.
* Remove a debugging kprintf() that was lousing up the console output.
Summary of changes:
sys/vfs/hammer/hammer.h | 1 +
sys/vfs/hammer/hammer_btree.c | 3 ++-
sys/vfs/hammer/hammer_io.c | 15 +++++++++++++++
sys/vfs/hammer/hammer_ondisk.c | 10 ++++++----
sys/vfs/hammer/hammer_recover.c | 36 +++++++++++++++++++++++++++++-------
sys/vfs/hammer/hammer_vnops.c | 1 -
6 files changed, 53 insertions(+), 13 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/2faf07370caaeaef6f64df1610d34b421946c538
--
DragonFly BSD source repository
More information about the Commits
mailing list