这几天一直在忙这个问题:
umount操作出现:“vfs: busy inodes after unmount. self-destruct in 5 seconds.”
找了好长时间,kill_block_super, invalidate_inodes, alloc_inode, ... 把fs/super.c fs/inode.c
看了好长时间还是没解决。
最后没办法了就上cu发贴:
----------------
将文件系统升级(2.4 => 2.6), 在2.4下umount操作很正常, 在2.6下出现:
vfs: busy inodes after unmount. self-destruct in 5 seconds. have a nice day...
得等一会采可以再次mount, 不然就死机了.
找了好几天了, 好麻烦, 有高手多指教..
2.6.9 kernel
文件系统:
static struct file_system_type ntfs_fs_type = {
.owner = this_module,
.name = "ntfs",
.get_sb = ntfs_get_sb,
.kill_sb = kill_block_super,
.fs_flags = fs_requires_dev,
};
-----------------
真是气死人的,,刚发上不到10分左右自己解决了,,好几次是这样。。
感觉关键是自己不怎么努力,没什么激情,感觉做了今天没明天。哎,吧这个东东做完再说吧!
自己在alloc_inode是把inode, locked了,没有unlock,结果在generic_shutdown_super中就没办法把所
有的inode释放了。
================
下一步要解决多进程在linux kernel中是怎么实现的?
file_read中如果是多进程那会出现怎样的情况?
不太懂多进程到什么地方就不是多进程了??在内核中是如何实现的?
阅读(3140) | 评论(0) | 转发(0) |