mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2025-12-21 21:17:37 -08:00
31 lines
910 B
Diff
31 lines
910 B
Diff
Fix the devspec path on newer kernels
|
|
|
|
--- a/usr/sbin/ofpath
|
|
+++ b/usr/sbin/ofpath
|
|
@@ -85,11 +85,20 @@
|
|
[ "$DEBUG" = 1 ] && echo "Devpath is: $DEVPATH"
|
|
|
|
### Get the OF Path of the controller
|
|
-case ${DISK_NAME} in
|
|
- sd*|sg*|sr*) CONTROLLER_PATH=$(cat ${DEVPATH}/../../../devspec) ;;
|
|
- hd*) CONTROLLER_PATH=$(cat ${DEVPATH}/../../devspec) ;;
|
|
- *) CONTROLLER_PATH="" ;;
|
|
-esac
|
|
+if [ -e "${DEVPATH}/../../devspec" ]; then
|
|
+ ### /dev/hd*
|
|
+ CONTROLLER_PATH=$(cat ${DEVPATH}/../../devspec);
|
|
+elif [ -e "${DEVPATH}/../../../devspec" ]; then
|
|
+ ### /dev/sd* on kernel <3.3
|
|
+ CONTROLLER_PATH=$(cat ${DEVPATH}/../../../devspec);
|
|
+elif [ -e "${DEVPATH}/../../../../devspec" ]; then
|
|
+ ### /dev/sd* on kernel 3.3+
|
|
+ CONTROLLER_PATH=$(cat ${DEVPATH}/../../../../devspec);
|
|
+else
|
|
+ ### None of the above...
|
|
+ CONTROLLER_PATH="";
|
|
+fi
|
|
+
|
|
if [ -z "$CONTROLLER_PATH" ]; then
|
|
echo "Unable to determine controller path!"
|
|
exit 1
|