由于任务被阻止,USB HDD 停止工作

由于任务被阻止,USB HDD 停止工作

我开始使用带有最新 Arch Linux Images 的 Raspberry Pi。

配置是一个简单的 Raspberry Pi Ver. B,大约两周前购买的(所以 USB 限制是固定的),一个用于主系统的 8GB SD 卡,一个外部供电的 USB 集线器和一个 1TB 东芝 e.store 基本 USB 硬盘。

系统已完全安装并正常运行。唯一的问题是我的硬盘。硬盘有时会突然停止工作。一开始我以为这可能是文件系统有问题,所以我将其重新格式化为 ext3(GUID 分区表)。然后我以为是将硬盘设置为睡眠模式出了问题,因为 hdparm 给了我这个奇怪的错误。

SG_IO: bad/missing sense data, sb[]:  f0 00 01 00 50 40 ff 0a 00 00 00 00 00 1d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

因此我编写了一个 cronjob,它每分钟使用“touch”对硬盘执行一些操作,但这种行为仍然发生。

有时,硬盘会停止工作,电源 LED 会变黑,当我尝试在硬盘上执行某些操作时,我的 ssh 连接就会挂起,没有中断信号或其他任何工作。

这是 dmesg 对我的错误所显示的:

[35282.602948] INFO: task scsi_eh_0:52 blocked for more than 120 seconds.
[35282.626554] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[35282.652268] scsi_eh_0       D c055dd0c     0    52      2 0x00000000
[35282.652368] [<c055dd0c>] (__schedule+0x2ec/0x638) from [<c055caa4>] (schedule_timeout+0x16c/0x248)
[35282.652424] [<c055caa4>] (schedule_timeout+0x16c/0x248) from [<c055e254>] (wait_for_common+0x108/0x190)
[35282.652472] [<c055e254>] (wait_for_common+0x108/0x190) from [<c03fe810>] (command_abort+0xa4/0xec)
[35282.652538] [<c03fe810>] (command_abort+0xa4/0xec) from [<c03af1a4>] (scsi_error_handler+0x378/0x484)
[35282.652576] [<c03af1a4>] (scsi_error_handler+0x378/0x484) from [<c00422c0>] (kthread+0x84/0x90)
[35282.652616] [<c00422c0>] (kthread+0x84/0x90) from [<c000eac0>] (kernel_thread_exit+0x0/0x8)

知道为什么这种情况总是发生吗?

任何帮助将不胜感激。

答案1

经过一段时间的调查,我发现了几个类似的错误,它们与 3.6 Linux 内核中的一个旧错误有关,该内核是 Arch/Raspberry Pi 安装指南中的默认内核。

我最终设法将我的 pi 更新到最新的内核版本

pacman -Sy linux-raspberrypi-latest linux-headers-raspberrypi-latest

它将为您安装最新的内核版本。(目前大约为 3.9.x)

从此以后就不再有问题了;)

相关内容