Opened 14 years ago
Closed 14 years ago
#89 closed defect (fixed)
Use log directory to check for old error/self-test log support
Reported by: | Christian Franke | Owned by: | Christian Franke |
---|---|---|---|
Priority: | minor | Milestone: | Release 5.41 |
Component: | all | Version: | 5.39.1 |
Keywords: | Cc: |
Description (last modified by )
Smartctl and smartd assume that the old SMART error log (log address 0x01) is supported if an error-logging capability bit in IDENTIFY or SMART data is set. Same applies to old SMART self-test log (log address 0x06). These logs were introduced in ATA-5 and are now outdated because 48-bit LBA addresses are not supported. Recent devices may only support the newer 48-bit capable logs (extended comprehensive error-log, extended self-test log) introduced in ATA-6.
smartctl -a ...
prints misleading messages then:
Error SMART Error Log Read failed: Input/output error Smartctl: SMART Error Log Read Failed Error SMART Error Self-Test Log Read failed: Input/output error Smartctl: SMART Self Test Log Read Failed
Misleading kernel messages may appear during smartd startup:
... kernel: hda: drive_cmd: status=0x51 { DriveReady SeekComplete Error } ... kernel: hda: drive_cmd: error=0x04 { DriveStatusError } ... kernel: ide: failed opcode was: 0xb0 ... smartd[...]: Device: /dev/hda, Read SMART Self Test Log Failed ... smartd[...]: Device: /dev/hda, no SMART Self-Test log; remove -l selftest Directive from smartd.conf
(smartctl -x ...
is not affected)
Smartctl and smartd should read the log directory (log address 0x00) to check whether the old logs are still supported and print an "unsupported
" message if not.
Change History (4)
comment:1 by , 14 years ago
Owner: | changed from | to
---|---|
Status: | new → accepted |
comment:2 by , 14 years ago
Component: | smartctl → all |
---|---|
Description: | modified (diff) |
comment:3 by , 14 years ago
Milestone: | → Release 5.41 |
---|
comment:4 by , 14 years ago
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
r3239.