#!/bin/bash
set +x
source /opt/huawei/snas/script/inspect_mml/CheckItems
source /opt/inspect/inspect_map.sh
source /opt/node_type_recognize.sh > /dev/null 2>&1

function checkClockSourceRisk()
{
    local curInspectNum="136"
    local curInspectFun="$(GetInspectType $curInspectNum)"
    local resultFile="${G_TMP_INSPECT_PATH}tmpResult${curInspectFun}"
    local isPass=0
    local tmpClk="tsc"
    >${resultFile}

    local tempCurClkSrc=$(cat /sys/devices/system/clocksource/clocksource0/current_clocksource)
    if [ "X${tempCurClkSrc}" == "X" ];then 
        isPass=1
        echo "[ERR]INFO:Get current clocksource failed from command(cat /sys/devices/system/clocksource/clocksource0/current_clocksource)." >> ${resultFile} 2>&1
        LOG "[$LINENO]Get current clocksource failed."
        echo "${curInspectFun}_Pass $isPass" >>${resultFile}
        return
    fi
    
    #ARMʱԴarch_sys_counterĶtsc
    GetArcType
    if [ $? -eq 2 ];then
        tmpClk="arch_sys_counter"
    fi
    
    LOG "[$LINENO]CurrentClockSource:$tempCurClkSrc"
    if [ "${tempCurClkSrc}" != "${tmpClk}" ];then 
        isPass=$(check_pass $isPass 1)
        echo "[ERR]INFO:Current clock source is not ${tmpClk}." >> ${resultFile} 2>&1
    fi
    
    echo "CurrentClockSource:$tempCurClkSrc" >> ${resultFile} 2>&1
    echo "${curInspectFun}_Pass $isPass" >>${resultFile}
}

checkClockSourceRisk

