- 论坛徽章:
- 0
|
原帖由 塑料袋 于 2006-12-21 22:22 发表
今天看的我一股火冒了上来,仔细看了看帖子,看完后妈的我真绝望了。
没看明白你到底想让我解释什么,那句指令?
我现在已经知道我之所以弱智的地方了,操,下次我再发类似的叫板帖子会去linuxforum发。 ...
妈逼的,我也服你了。
从一开始我就说了,源代码一点错都没有,你的注释全TM是错的,每一个字都是错误的,明白了吗?傻逼!!!!!
问题一
i_count==0时,如果inode->i_nlink>0,且inode存在于hash表中时, 有这样三行代码
spin_lock(&inode_lock);
inodes_stat.nr_unused--;
list_del_init(&inode->i_hash);
它为什么能这么肯定的把inode从hash中删除?并且inodes_stat.nr_unused--;
从判断出i_count==0,到这三行代码,以前有一段时间,并没有持有自旋锁,执行到这三行时,也许已经inode->i_count>0
上面是你的问题一,我可没心情在你写的贴子内容里面写解释。傻逼,你连为什么会inodes_stat.nr_unsed--都不明白是为什么?操~几岁了?白痴!下面是内核inode.c中iput()函数片段,你上面的三行话是不是截选的最后三行?你粪逼吧,你没看到从inodes_stat.nr_unused--上数6行,那里有个++操作吗?如果在ms_active标记时返回了,上面的这个++操作就是正确的,但如果函数没有中途返回,就要再自减回来。校正一下而己。下面的list_del_init都TM要删除了,你不自减一下行吗?
这是你丫的二个月前的贴子,现在还不知道自己哪里错了,说你是读核食物链中的单细胞浮游生物都高抬你了。
-
- if (!list_empty(&inode->i_hash)) {
- if (!(inode->i_state & (I_DIRTY|I_LOCK))) {
- list_del(&inode->i_list);
- list_add(&inode->i_list, &inode_unused);
- }
- inodes_stat.nr_unused++; <--------------
- spin_unlock(&inode_lock);
- if (!sb || (sb->s_flags & MS_ACTIVE))
- return;
- write_inode_now(inode, 1);
- /************这里截选*************/
- spin_lock(&inode_lock);
- inodes_stat.nr_unused--; <------------
- list_del_init(&inode->i_hash);
- /*******************************/
- }
复制代码
别没事就拿出几个id说事,你佩服人家并不能说明你和人家是一个档次。在论坛里我没感觉谁比我强,但也没感觉谁比我弱,要说我真正佩服的...只是一个讲解内核某函数的贴子(网络部分,很可惜以你现在的功力都没办法给你举例),佩服它是因为作者想的比我更精细。人家的id我就不提了,我佩服的只是贴子不是id。
你的问题二,就更傻逼了,是你自己想,还是我点给您老人家?还是那句话,你的注释都是错的。
[ 本帖最后由 secworld 于 2006-12-22 09:55 编辑 ] |
|