diff options
-rwxr-xr-x | extras/path_id/path_id | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/extras/path_id/path_id b/extras/path_id/path_id index d21dea7011..7b4973fa03 100755 --- a/extras/path_id/path_id +++ b/extras/path_id/path_id @@ -129,6 +129,30 @@ handle_platform () { RESULT=0 } +handle_xen () { + local DEV=$1 + cd -P $1 + vbd_id=${DEV##*/} + host_dev_path=$DEV + while [ ! -z "$host_dev_path" ] ; do + case "$host_dev_path" in + */vbd*) + host_dev_path=${host_dev_path%/*} + ;; + *) + break + ;; + esac + done + if [ "$d" ]; then + d="xen-$vbd_id-$d" + else + d="xen-$vbd_id" + fi + D="$host_dev_path" + RESULT=0 +} + handle_serio () { local DEV=$1 cd -P $1 @@ -532,6 +556,9 @@ handle_device () { */platform/*) handle_platform "$D" ;; + */vbd-[0-9]*) + handle_xen "$D" + ;; */devices) D= ;; |