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.
@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 hdparm- functions. orig 2010-05-13 09:12:43.034523157 -0400 hdparm- functions 2010-05-13 09:16:21.603306128 -0400
pci- *-ieee1394- *|pci-* -usb-*)
return 1
--- /lib/hdparm/
+++ /lib/hdparm/
@@ -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
+ logger -p info -t XXX "hdparm_try_apm returning 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