#!/bin/bash

SDK_BACKUP_DIR=/var/log/sdk_issu_backup
SDK_ISSU_GLOB="/var/issu* /var/port_map*"

function rebootOptions()
{
    if [ "$1" = "--fast" ]
    then
        echo "Fast boot" >> /var/tmp/boot_trace
        echo Backing up SDK ISSU files for later diagnositics
        mkdir -p $SDK_BACKUP_DIR
        rm -f $SDK_BACKUP_DIR/*
        for i in $SDK_ISSU_GLOB; do
            cp $i $SDK_BACKUP_DIR/
        done
        echo "Rebooting with kexec-tools for fastboot."
        echo "options sx_core fast_boot=1" > /etc/modprobe.d/sx.modprobe.conf
        ifdown mgmt
        /usr/lib/cumulus/kboot
    elif [ "$1" = "--help-fastboot" ]
    then
        echo "Fast boot help" >> /var/tmp/boot_trace
        echo "Use --fast option for fastboot with kexec"
    else
        echo "No Fast boot" >> /var/tmp/boot_trace
        rm -f $SDK_ISSU_GLOB
        echo "options sx_core fast_boot=0" > /etc/modprobe.d/sx.modprobe.conf
        /usr/sbin/reboot.real "$@"
    fi
}

# script #
sleep 2
rebootOptions $@
