免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4200 | 回复: 5
打印 上一主题 下一主题

linux网卡中断和时钟中断的优先级问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-10-22 11:13 |只看该作者 |倒序浏览
x86上linux2.6.9默认情况下是网卡中断的优先级高,还是时钟中断的优先级高?

换句话说,如果程序在网卡中断处理程序中(中断上下文中)死锁了或者睡眠了,时钟中断可否抢占?

论坛徽章:
0
2 [报告]
发表于 2007-10-22 13:57 |只看该作者

回复 #1 simtiger 的帖子

中断处理时如果关了中断,而中断处理程序因为某种原因而睡眠或者死锁,那么你只能有一个办法来恢复系统,那就是重新启动。这时候不存在什么抢占的问题了,因为你diable了CPU的中断。

在中断上下文中不能睡眠,要小心处理spin_lock的问题。

论坛徽章:
0
3 [报告]
发表于 2007-10-23 22:09 |只看该作者
原帖由 xhbdahai 于 2007-10-22 13:57 发表
中断处理时如果关了中断,而中断处理程序因为某种原因而睡眠或者死锁,那么你只能有一个办法来恢复系统,那就是重新启动。这时候不存在什么抢占的问题了,因为你diable了CPU的中断。

在中断上下文中不能睡眠 ...



谢谢指点。死锁问题通常怎么解决呢?  除了代码review之外?

论坛徽章:
0
4 [报告]
发表于 2007-10-24 21:33 |只看该作者

回复 #3 simtiger 的帖子

对于死锁,我这里没有太多的方法。通常出来这个问题,我的做法就是代码review,没有发现有什么好的方式。不知仁兄有没有什么高招?如果有更好的方式,请不吝赐教!谢谢!

论坛徽章:
0
5 [报告]
发表于 2007-10-25 12:51 |只看该作者
原帖由 xhbdahai 于 2007-10-24 21:33 发表
对于死锁,我这里没有太多的方法。通常出来这个问题,我的做法就是代码review,没有发现有什么好的方式。不知仁兄有没有什么高招?如果有更好的方式,请不吝赐教!谢谢!


正在痛苦的code review中,

有个问题再请教一下,,,用户态程序通过调用ioctl调用内核模块的时候(此时内核处于进程上下文),,此时网卡来数据导致的网卡中断(中断上下文)能抢占么?这两个谁的优先级高一些呢?

论坛徽章:
0
6 [报告]
发表于 2007-10-25 23:12 |只看该作者

回复 #5 simtiger 的帖子

你的进程会被打断,中断处理程序会被执行!应为中断对CPU来说属于异常。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP