diff options
Diffstat (limited to 'testing/zfs-git-grsec/vdev_id_posix.patch')
-rw-r--r-- | testing/zfs-git-grsec/vdev_id_posix.patch | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/testing/zfs-git-grsec/vdev_id_posix.patch b/testing/zfs-git-grsec/vdev_id_posix.patch deleted file mode 100644 index 8f44d039c..000000000 --- a/testing/zfs-git-grsec/vdev_id_posix.patch +++ /dev/null @@ -1,103 +0,0 @@ -From 8714d5292b09502b9f19a6f01f7d5fac99e9759c Mon Sep 17 00:00:00 2001 -From: Ned Bass <bass6@llnl.gov> -Date: Wed, 19 Sep 2012 11:44:12 -0700 -Subject: [PATCH] Make vdev_id POSIX sh compatible - -Full bash may not be available in all environments where udev helpers -run, such as in an initial ramdisk. To avoid breakage in this case, -remove use of bash-specific features such as variable arrays and the -`declare' keyword from the vdev_id script. - -Closes #870 -Signed-off-by: Ned Bass <bass6@llnl.gov> ---- - cmd/vdev_id/vdev_id | 33 ++++++++++++++++++++------------- - 1 file changed, 20 insertions(+), 13 deletions(-) - -diff --git a/cmd/vdev_id/vdev_id b/cmd/vdev_id/vdev_id -index d278197..55af515 100755 ---- a/cmd/vdev_id/vdev_id -+++ b/cmd/vdev_id/vdev_id -@@ -1,4 +1,4 @@ --#!/bin/bash -+#!/bin/sh - # - # vdev_id: udev helper to generate user-friendly names for JBOD disks - # -@@ -80,7 +80,6 @@ SLOT_MAP= - CHANNEL_MAP= - MULTIPATH= - TOPOLOGY= --declare -i i j - - usage() { - cat << EOF -@@ -229,32 +228,39 @@ else - sys_path=`udevadm info -q path -p /sys/block/$DEV 2>/dev/null` - fi - --dirs=(`echo "$sys_path" | tr / ' '`) -+# Use positional parameters as an ad-hoc array -+set -- $(echo "$sys_path" | tr / ' ') -+num_dirs=$# - scsi_host_dir="/sys" - - # Get path up to /sys/.../hostX --for (( i=0; i<${#dirs[*]}; i++ )); do -- d=${dirs[$i]} -+i=1 -+while [ $i -le $num_dirs ] ; do -+ d=$(eval echo \$$i) - scsi_host_dir="$scsi_host_dir/$d" - echo $d | egrep -q -e '^host[0-9]+$' && break -+ i=$(($i + 1)) - done - --if [ $i = ${#dirs[*]} ] ; then -+if [ $i = $num_dirs ] ; then - exit 0 - fi - --PCI_ID=`echo ${dirs[$(( $i - 1 ))]} | awk -F: '{print $2":"$3}'` -+PCI_ID=$(eval echo \$$(($i -1)) | awk -F: '{print $2":"$3}') - --# In sas_switch mode, the directory three levels beneath /sys/.../hostX -+# In sas_switch mode, the directory four levels beneath /sys/.../hostX - # contains symlinks to phy devices that reveal the switch port number. In - # sas_direct mode, the phy links one directory down reveal the HBA port. - port_dir=$scsi_host_dir - case $TOPOLOGY in -- "sas_switch") j=$(($i+4)) ;; -+ "sas_switch") j=$(($i + 4)) ;; - "sas_direct") j=$(($i + 1)) ;; - esac --for (( i++; i<=$j; i++ )); do -- port_dir="$port_dir/${dirs[$i]}" -+ -+i=$(($i + 1)) -+while [ $i -le $j ] ; do -+ port_dir="$port_dir/$(eval echo \$$i)" -+ i=$(($i + 1)) - done - - PHY=`ls -d $port_dir/phy* 2>/dev/null | head -1 | awk -F: '{print $NF}'` -@@ -266,13 +272,14 @@ PORT=$(( $PHY / $PHYS_PER_PORT )) - # Look in /sys/.../sas_device/end_device-X for the bay_identifier - # attribute. - end_device_dir=$port_dir --for (( ; i<${#dirs[*]} ; i++ )); do -- d=${dirs[$i]} -+while [ $i -lt $num_dirs ] ; do -+ d=$(eval echo \$$i) - end_device_dir="$end_device_dir/$d" - if echo $d | egrep -q -e '^end_device' ; then - end_device_dir="$end_device_dir/sas_device/$d" - break - fi -+ i=$(($i + 1)) - done - - SLOT=`cat $end_device_dir/bay_identifier 2>/dev/null` --- -1.7.10 - |