#!/bin/bash

DEFAULT_TIMEOUT=30
MPATH_TIMEOUT=10

# Check for QLogic Ports
if [ -e "/sys/class/fc_remote_ports" ]; then
    for i in `ls /sys/class/fc_remote_ports`; do
	if [ $1 == "enable" ]; then
	    echo ${MPATH_TIMEOUT} > /sys/class/fc_remote_ports/${i}/dev_loss_tmo
	else
	    echo ${DEFAULT_TIMEOUT} > /sys/class/fc_remote_ports/${i}/dev_loss_tmo
	fi
	echo "Adjusted Qlogic port ${i} dev_loss_tmo"
    done
fi

# Now check for Emulex
for i in `ls /sys/class/scsi_host`; do
    if [ -e "/sys/class/scsi_host/${i}/lpfc_fcp_class" ]; then
	if [ $1 == "enable" ]; then
	    echo ${MPATH_TIMEOUT} > /sys/class/scsi_host/${i}/lpfc_nodev_tmo
	else
	    echo ${DEFAULT_TIMEOUT} > /sys/class/scsi_host/${i}/lpfc_nodev_tmo
	fi
	echo "Adjusted Emulex port ${i} lpfc_nodev_tmo"
    fi
done

