Comment 50 for bug 548513

Revision history for this message
Peter Petrakis (peter-petrakis) wrote : Re: [Bug 548513] Re: hdparm's IDENTIFY DEVICE command breaks firewire devices

@No_OnE

I'm hoping there isn't some packaging issue between kubuntu
and ubuntu. I have the same version of hdparm as you quoted running
lucid/ubuntu and have verified that the workaround is indeed here.

$ grep hdparm_try_apm /lib/hdparm/hdparm-functions
hdparm_try_apm()
         if hdparm_try_apm "$WANTED_DISK"; then

If it's not returning one, or it's not there, that would explain
why you're seeing the hang. Could you please verify that these
bits are indeed there and if so, please apply the following
modifications and retest so we can see what's going on.

# diff -u /lib/hdparm/hdparm-functions.orig /lib/hdparm/hdparm-functions
--- /lib/hdparm/hdparm-functions.orig 2010-05-13 09:12:43.034523157 -0400
+++ /lib/hdparm/hdparm-functions 2010-05-13 09:16:21.603306128 -0400
@@ -49,13 +49,17 @@
  {
      # set our default global apm policy here.
      if [ -z "$ID_PATH" ]; then
+ logger -p info -t XXX "device id_path ${ID_PATH}"
          local ID_PATH="$(udevadm info -n "$1" -q property 2>/dev/null | sed -n 's/^ID_PATH=//p')" || true
      fi
      case $ID_PATH in
          pci-*-ieee1394-*|pci-*-usb-*)
+ logger -p info -t XXX "hdparm_try_apm returning 1"
              return 1
              ;;
      esac
+
+ logger -p info -t XXX "hdparm_try_apm returning 0"
      return 0
  }

Just grep for XXX in /var/log/messages and post the results. Thanks.

Peter