Dear, I modifid kernel to write to disk directly after unmount all mounted filesystem in boot() kern/kern_shutdown.c. However, I found that my IO requests wouldn't have callback from device interrupt routine. I traced the codes and use gdb to find something out. The interesting is after execute vfs_unmountall() -> dounmount() -> ffs_unmount() -> ffs_flushfiles() -> vflush()-> ??? the interrupt mask is set by splbio() without splx(), therefore, all my following requests cannot return. Notice that, the situation only happens after heavy IO, for example: cp 30 files at the same time. I use spl0() to solve the prolbem, but I think it's not the right way to do that. Can anyone provide some clues or suggestions. Thanks -- Rex Luo Tel : 886-2-25521814 Ext. 824 Fax : 886-2-25521824 e-mail : [EMAIL PROTECTED] To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-hackers" in the body of the message