MMC Hangs under load with multiple threads

未关闭
#70 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
linux

调研方向

首先检查链接的 Linux kernel 提交 7472bab236bdee1173412585591329e718f4d324,以及目标 kernel 树中的 MMC 控制器代码。回移植该提交,并验证在多个线程上进行高负载 SD/MMC I/O 时,BeagleBone kernel 不再挂起,包括应用了 Xenomai 补丁的 kernel。

由索引模型根据 Issue 内容生成。

描述

If you missed the post:

https://groups.google.com/d/msg/beagleboard/g8JQWFmw4_w/by2kdCbjZmgJ

...there's a problem where all 3.8 BeagleBone kernels (it actually goes back to 3.2, I think) will hang if you have a heavy SD/MMC I/O load across multiple threads. This is particularly apparent in the Xenomai patched kernels, where the increased IRQ latency causes the bug to be easier to trigger, but it happens with the "stock" non-xenomai patched kernels as well (typically when doing apt-get upgrade for those running Debian/Ubuntu). The fix is to back-port a commit from the 3.12 kernel tree:

http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=7472bab236bdee1173412585591329e718f4d324

That commit fixes the race condition which results in corruption of the MMC controller's status flags that causes the hang.

主要语言
Shell
星标
173
派生
155
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

beagleboard/kernel 的其他 Issue

查看 beagleboard/kernel 的全部 Issue

相似的 Issue

更多 Shell/Bash Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。