Comment 10 for bug 1470014

Revision history for this message
Nathan Stratton Treadway (nathanst) wrote : systemd-udevd: Process '/lib/udev/hdparm' failed with exit code 5

I ran into this (using hdparm 9.48+ds-1 running under Ubuntu
16.04.1 LTS) with some HP Enterprise MB4000GCWLV drives that don't
have APM support (i.e.
  hdparm -I /dev/sdb | grep "Advanced Power"
returns no output, or [as mentioned in comment #5] "hdparm -B"
reports "not supported").

For these drives, along with the "failed with exit code 5" log
messages, the default behavior of /lib/udev/hdparm triggered a
"SMART error (ErrorCount) detected on host" email from smartd each
time the system was rebooted (one email for each affected drive).

Each warning email had a message similar to:
   Device: /dev/sdb [SAT], ATA error count increased from 33 to 34
... and sure enough, "smartctl -l error /dev/sdb" showed errors
like this one:

Error 30 [1] occurred at disk power-on lifetime: 5380 hours (224 days + 4 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER -- ST COUNT LBA_48 LH LM LL DV DC
  -- -- -- == -- == == == -- -- -- -- --
  04 -- 51 00 00 00 00 00 00 00 00 00 00 Error: ABRT

  Commands leading to the command that caused the error were:
  CR FEATR COUNT LBA_48 LH LM LL DV DC Powered_Up_Time Command/Feature_Name
  -- == -- == -- == == == -- -- -- -- -- --------------- --------------------
  ef 00 05 01 fe dc d8 08 00 00 00 40 08 10:18:04.515 SET FEATURES [Enable APM]
  2f 00 00 00 01 00 00 00 00 00 11 00 08 10:17:53.325 READ LOG EXT
  2f 00 00 00 01 00 00 00 00 06 04 00 08 10:17:53.091 READ LOG EXT
  2f 00 00 00 01 00 00 00 00 05 04 00 08 10:17:52.857 READ LOG EXT
  2f 00 00 00 01 00 00 00 00 04 04 00 08 10:17:52.618 READ LOG EXT

Once I tracked these errors down to the default settings in the
hdparm udev script, I was able to avoid them by setting the "apm"
option to blank in a hdparm.conf device block, e.g.

/dev/disk/by-id/wwn[...] {
apm =
}

(This causes the script to end up running "hdparm -B" instead of
"hdparm -B254" for the drive in question, thus skipping the attempt
to enable APM on the drive, and as a result avoiding both the
error exit status message and a new instance of the error in the
ATA error log.)

       Nathan