[DellEMC] S6100 - Adding logger to fetch SSD FW Upgrade status (#14247)
Adding logger to fetch SSD FW Upgrade status
This commit is contained in:
parent
8fc8578c4d
commit
c4435e833b
@ -23,25 +23,32 @@ SMART_CMD=`smartctl -a /dev/sda`
|
|||||||
SSD_FW_VERSION=$(echo "$iSMART_CMD" | grep "FW Version" | awk '{print $NF}')
|
SSD_FW_VERSION=$(echo "$iSMART_CMD" | grep "FW Version" | awk '{print $NF}')
|
||||||
SSD_FW_VERSION=${SSD_FW_VERSION,,}
|
SSD_FW_VERSION=${SSD_FW_VERSION,,}
|
||||||
SSD_MODEL=$(echo "$iSMART_CMD" | grep "Model" | awk '{print $NF}')
|
SSD_MODEL=$(echo "$iSMART_CMD" | grep "Model" | awk '{print $NF}')
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "SSD Model = $SSD_MODEL ; FWVERSION = $SSD_FW_VERSION"
|
||||||
|
|
||||||
if [ -e $SSD_FW_UPGRADE/GPIO7_pending_upgrade ]; then
|
if [ -e $SSD_FW_UPGRADE/GPIO7_pending_upgrade ]; then
|
||||||
if [ $SSD_MODEL == "3IE" ] && [ $SSD_FW_VERSION == "s141002c" ]; then
|
if [ $SSD_MODEL == "3IE" ] && [ $SSD_FW_VERSION == "s141002c" ]; then
|
||||||
# If SSD Firmware is not upgraded
|
# If SSD Firmware is not upgraded
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "The SSD on this unit is running older firmware. Do not power-cycle/reboot this unit."
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "soft-/fast-/warm-reboot is allowed."
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
if [ $SSD_FW_VERSION == "s16425c1" ] || [ $SSD_FW_VERSION == "s16425cq" ]; then
|
if [ $SSD_FW_VERSION == "s16425c1" ] || [ $SSD_FW_VERSION == "s16425cq" ]; then
|
||||||
# If SSD Firmware is not upgraded
|
# If SSD Firmware is not upgraded
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "The SSD on this unit is running older firmware. Do not power-cycle/reboot this unit."
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "soft-/fast-/warm-reboot is allowed."
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "$0 `date` SSD FW upgrade logs post reboot." >> $SSD_UPGRADE_LOG
|
echo "$0 `date` SSD FW upgrade logs post reboot." >> $SSD_UPGRADE_LOG
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "SSD FW upgrade logs post reboot."
|
||||||
|
|
||||||
SSD_UPGRADE_STATUS1=`io_rd_wr.py --set --val 06 --offset 210; io_rd_wr.py --set --val 09 --offset 211; io_rd_wr.py --get --offset 212`
|
SSD_UPGRADE_STATUS1=`io_rd_wr.py --set --val 06 --offset 210; io_rd_wr.py --set --val 09 --offset 211; io_rd_wr.py --get --offset 212`
|
||||||
SSD_UPGRADE_STATUS1=$(echo "$SSD_UPGRADE_STATUS1" | awk '{print $NF}')
|
SSD_UPGRADE_STATUS1=$(echo "$SSD_UPGRADE_STATUS1" | awk '{print $NF}')
|
||||||
|
|
||||||
SSD_UPGRADE_STATUS2=`io_rd_wr.py --set --val 06 --offset 210; io_rd_wr.py --set --val 0A --offset 211; io_rd_wr.py --get --offset 212`
|
SSD_UPGRADE_STATUS2=`io_rd_wr.py --set --val 06 --offset 210; io_rd_wr.py --set --val 0A --offset 211; io_rd_wr.py --get --offset 212`
|
||||||
SSD_UPGRADE_STATUS2=$(echo "$SSD_UPGRADE_STATUS2" | awk '{print $NF}')
|
SSD_UPGRADE_STATUS2=$(echo "$SSD_UPGRADE_STATUS2" | awk '{print $NF}')
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "SSD Status REG1 = $SSD_UPGRADE_STATUS1 ; REG2 = $SSD_UPGRADE_STATUS2"
|
||||||
|
|
||||||
if [ $SSD_UPGRADE_STATUS1 == "2" ]; then
|
if [ $SSD_UPGRADE_STATUS1 == "2" ]; then
|
||||||
rm -rf $SSD_FW_UPGRADE/GPIO7_*
|
rm -rf $SSD_FW_UPGRADE/GPIO7_*
|
||||||
@ -71,11 +78,14 @@ elif [ $SSD_FW_VERSION == "s210506g" ] || [ $SSD_FW_VERSION == "s16425cg" ]; the
|
|||||||
rm -rf $SSD_FW_UPGRADE/GPIO7_*
|
rm -rf $SSD_FW_UPGRADE/GPIO7_*
|
||||||
touch $SSD_FW_UPGRADE/GPIO7_high
|
touch $SSD_FW_UPGRADE/GPIO7_high
|
||||||
systemctl start --no-block s6100-ssd-monitor.timer
|
systemctl start --no-block s6100-ssd-monitor.timer
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "SSD FW upgraded already."
|
||||||
if [ $SSD_UPGRADE_STATUS1 == "0" ]; then
|
if [ $SSD_UPGRADE_STATUS1 == "0" ]; then
|
||||||
if [ $SSD_MODEL == "3IE" ];then
|
if [ $SSD_MODEL == "3IE" ];then
|
||||||
echo "$0 `date` SSD FW upgraded from S141002C to S210506G in first mp_64." >> $SSD_UPGRADE_LOG
|
echo "$0 `date` SSD FW upgraded from S141002C to S210506G in first mp_64." >> $SSD_UPGRADE_LOG
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "SSD FW upgraded from S141002C to S210506G"
|
||||||
else
|
else
|
||||||
echo "$0 `date` SSD FW upgraded from S16425c1 to S16425cG in first mp_64." >> $SSD_UPGRADE_LOG
|
echo "$0 `date` SSD FW upgraded from S16425c1 to S16425cG in first mp_64." >> $SSD_UPGRADE_LOG
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "SSD FW upgraded from S16425c1 to S16425cG"
|
||||||
fi
|
fi
|
||||||
elif [ $SSD_MODEL == "3IE3" ] && [ $SSD_UPGRADE_STATUS2 == "1" ]; then
|
elif [ $SSD_MODEL == "3IE3" ] && [ $SSD_UPGRADE_STATUS2 == "1" ]; then
|
||||||
rm -rf $SSD_FW_UPGRADE/GPIO7_*
|
rm -rf $SSD_FW_UPGRADE/GPIO7_*
|
||||||
@ -93,6 +103,7 @@ else
|
|||||||
touch $SSD_FW_UPGRADE/GPIO7_pending_upgrade
|
touch $SSD_FW_UPGRADE/GPIO7_pending_upgrade
|
||||||
|
|
||||||
echo "$0 `date` SSD upgrade didn’t happen." >> $SSD_UPGRADE_LOG
|
echo "$0 `date` SSD upgrade didn’t happen." >> $SSD_UPGRADE_LOG
|
||||||
|
logger -p user.crit -t DELL_S6100_SSD_MON "No SSD upgrade attempted."
|
||||||
|
|
||||||
elif [ $SSD_UPGRADE_STATUS1 == "1" ]; then
|
elif [ $SSD_UPGRADE_STATUS1 == "1" ]; then
|
||||||
rm -rf $SSD_FW_UPGRADE/GPIO7_*
|
rm -rf $SSD_FW_UPGRADE/GPIO7_*
|
||||||
|
Reference in New Issue
Block a user