从工作队列提交 BIO

发布于 2024-11-25 12:30:07 字数 263 浏览 2 评论 0原文

我使用的是 2.6.39.1 版本的 Linux 内核。在我的块设备驱动程序中,我从中断处理程序的下半部分对一个 struct work_struct 进行排队,即在先前提交的 BIO 的 ->bi_end_io 函数中。然后工作队列处理函数提交下一个要处理的 BIO。当我们这样做时,系统会变得无响应。我们认为,在此设置中从工作队列处理函数调用 submit_bio() 导致了问题。有人可以解释一下这种情况下的问题是什么吗?

I'm using 2.6.39.1 version of the Linux kernel. In my block device driver, I'm queuing a struct work_struct from the bottom half of the interrupt handler, i.e., in the ->bi_end_io function of a previously submitted BIO. The work queue handler function then submits the next BIO to be processed. The system becomes unresponsive when we do this. We believe that calling submit_bio() from our work queue handler function in this setup is causing the problem. Can someone explain what the problem is in this scenario?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文