我已经在syslog中得到了这些神秘的消息,因为我安装了一些新的硬件,我不知道问题是什么,如果是严重的,或者如何处理。
他们来自新的SATA HBA,他们遵循一个模式。 我会收到几条第一条消息,然后是5-30秒后的几条第二条消息。 他们进来的斑点都在同一秒login,其准确的数量在2到35之间变化。它可能是在出现的条目之间的几分钟或几小时。
两条消息的例子:
Jul 13 06:06:23 durandal kernel: [366918.435596] mpt2sas0: log_info(0x31120303): originator(PL), code(0x12), sub_code(0x0303) Jul 13 06:06:28 durandal kernel: [366923.145524] mpt2sas0: log_info(0x31110d01): originator(PL), code(0x11), sub_code(0x0d01)
始终总是0x31120303,然后是0x31110d01。
mpt2sas是我使用的SATA主机总线适配器的驱动程序,但错误内容过于隐晦。 它并不告诉我问题是什么,它使用的是什么磁盘或端口,或者它有多严重。
带Xeon E3-1220和8GB内存的Supermicro X9SCL 。
基于LSI SAS2008的Supermicro AOC-USAS2-L8I SAS / SATA HBA连接到Supermicro CSE-M35T-1B磁盘托架组。 它有三个Western Digital WD30EZRX和两个Segate ST3000DM001插入。 所有3TB驱动器(实际上完全相同的扇区数)。 没有使用端口扩展器。
HBA,磁盘托盘和4个驱动器是新的。 其中一个WD30EZRX已经有好几个月了,没有问题。 如果以前连接到集成的英特尔SATA控制器,则使用此新设置将其移动到驱动器托架中。
HBA出现问题需要经常重置,性能非常糟糕。 将固件/ BIOS更新为Supermicro最新版本“Phase 12”,并将其types更改为IT(即通过,因为我将使用所有软件raid,从IR进行集成raid):2008IT12.FW。 这个更新清除了所有早期的问题,直到后来我才开始得到上述消息(见下文)。
我添加的前四个磁盘都在第一个SFF-8087端口上(分成4个SATA电缆)。 如果有问题,我添加的最新磁盘在另一个端口上。
系统上唯一的另一个磁盘包含操作系统,并且是一个旧的英特尔80GB固态硬盘插入集成SATA控制器。
Ubuntu 11.10(oneiric)。 Linux 3.0.0-14-x86_64服务器。 使用操作系统附带的mpt2sas驱动程序。
尝试使用Linux md和这五个磁盘构build一个RAID6arrays。 从三个磁盘退化arrays开始,两个Segates和一个新的WD驱动器。 这很快,进行得非常好,固件更新后,日志中没有消息。 同时,我仍然在同一个控制器的端口0上使用旧的WD磁盘。
将其他新的WD磁盘添加到arrays。 开始重build,我现在定期在syslog中获取这些消息。 我不知道应该花多长时间才能将磁盘添加到arrays,但估计的时间(cat / proc / mdstat)从数千到数万分钟不等,比前3个磁盘长得多。 我知道WD磁盘要慢得多, 我得到了不同的型号,以减less多个磁盘故障的可能性,那些是两个最便宜的3TB型号。
SMART不会在任何磁盘上报告任何问题。 在任何磁盘上都没有logging错误,并且没有任何失败统计数字在阈值附近。
logging的消息只在我添加最后一个磁盘后才开始出现,这表明可能有一个问题,但我没有其他的指向。
我find了一个头文件 ,似乎与来自该驱动程序的日志消息相对应。 第一条消息似乎是未列出的“子代码”0303的中止(代码12)。 第二条消息是重置(代码11),原因也不清楚。 如果我能确定0303和0d01是什么意思,那真的很有帮助。
我知道5磁盘RAID6中的4个磁盘是不完整的arrays。 我计划将旧磁盘的内容复制到arrays,一旦完成第四个磁盘的集成,然后将旧磁盘添加到arrays。
可能你最好的select是在你的磁盘和你的sas raid控制器之间的硬件问题。 我build议尝试:
我有两个完全相同的戴尔PowerEdge R515中的一个给出非常类似的消息(日志周期性地填满了mpt2sas0消息,但我没有确切的数字代码)。 戴尔自己的可启动诊断程序将其视为“硬件错误”,并更换RAID SAS背板解决了这个问题。
当我调查时,我找不到各种mpt2sas0错误代码的全面资源。 我怀疑他们甚至可能是硬件厂商特定的(对SAS知道更多的人需要确认或否认这一点)。 所以你的错误代码可能意味着很大的不同,但是如果SMART是干净的,很难想象mpt2sas0会报告错误代码的其他原因。
这些错误可能是非常严重的。 我的R515看起来好像用这些信息一个星期的12盘Ubuntu Linux软件突袭6,但突然抛出arrays中的所有12个磁盘破坏(!)
在我的情况下,所有磁盘的SMART都是完全干净的。 一个好的检查是智能自我诊断testing: smartctl -t long /dev/sdX ,然后使用smartctl -l selftest /dev/sdX检查一天后的结果。 如果一切正常,testing应该说Completed ,并且LBA_first_err列应该是空的。
哇,一个艰难的。
这似乎表明0x31120303是一个总线重置,由于您的设备之一负载很重。 它也说你不必担心它。 (哈哈,是的。)
这表示这些日志消息正在发生,因为您的某个设备花了太长时间来响应命令。 这说的是同样的事情,也表明它发生在重负荷下。
虽然这不是一个完整的答案,但希望能指出你一个有用的方向。
这意味着磁盘上有一些错误,它是来自LSI的SAS控制器中的SATA磁盘,并且由于错误,所有未完成的请求都被中止。
在大多数情况下,您在磁盘上出现中等错误,这是触发此错误的原因。 这个错误本身并不意味着一个中等的错误,你需要检查日志中的其他提示,以查找原始磁盘故障的来源。
稍微详细的版本: http : //blog.disksurvey.org/blog/2014/03/27/sata-handling-of-medium-errors-log-info-0x0x31080000/