git: HAMMER VFS - Handle critical I/O errors without panicing

看板DFBSD_commit作者時間16年前 (2009/11/03 10:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit 2faf07370caaeaef6f64df1610d34b421946c538 Author: Matthew Dillon <dillon@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
文章代碼(AID): #1AxuxbpI (DFBSD_commit)