Linux:ata:失败的命令:READ FPDMA QUEUED

时间:2020-02-23 14:44:20  来源:igfitidea点击:

从Linux机器上的" dmesg"输出中得到" READ FPDMA QUEUED"错误?

ata2.00: status: { DRDY ERR }
ata2.00: error: { UNC }
ata2.00: failed command: READ FPDMA QUEUED
ata2.00: cmd 60/28:70:28:19:89/00:00:6c:01:00/40 tag 14 ncq 20480 in
res 41/40:00:00:00:00/00:00:00:00:00/00 Emask 0x9 (media error)

这可能意味着您有控制器驱动程序问题。
一些控制器在某些内核和驱动程序上存在已知的错误。

您可以通过如下禁用NCQ(本机命令队列)来解决此问题:

echo 1 > /sys/block/sdX/device/queue_depth

[用相关的设备名称(即sda)替换sdX]

注意:要验证当前是否已启用NCQ,只需执行以下操作:

cat /sys/block/sdX/device/queue_depth

如果返回值大于" 1",则表示已启用NCQ。

要启用NCQ,只需执行以下操作:

echo 31 > /sys/block/sdX/device/queue_depth