diff --git a/ansible/roles/tsg-os-HAL/files/conf/tsg-os-HAL.conf b/ansible/roles/tsg-os-HAL/files/conf/tsg-os-HAL.conf index 2e5ff8be..d93d37ce 100644 --- a/ansible/roles/tsg-os-HAL/files/conf/tsg-os-HAL.conf +++ b/ansible/roles/tsg-os-HAL/files/conf/tsg-os-HAL.conf @@ -7,3 +7,5 @@ # MRZCPD_DIRECT_PKTMBUF= # MRZCPD_INDIRECT_PKTMBUF= + +# GRUB_CMDLINE= \ No newline at end of file diff --git a/ansible/roles/tsg-os-HAL/files/script/tsg-os-HAL.sh b/ansible/roles/tsg-os-HAL/files/script/tsg-os-HAL.sh index 336796e0..9c835a33 100644 --- a/ansible/roles/tsg-os-HAL/files/script/tsg-os-HAL.sh +++ b/ansible/roles/tsg-os-HAL/files/script/tsg-os-HAL.sh @@ -14,6 +14,7 @@ cpu_core_num=$(lscpu | grep "CPU(s):" | head -n 1 | sed -r 's/CPU\(s\):\s{1,}// mem_num=$(free -m | grep Mem | awk '{print $2}') HUGEPAGES= +GRUB_CMDLINE= NUMA_NODE_CNT= MRZCPD_IOCORE= CLIXON_IOCORE= @@ -66,7 +67,7 @@ set_os_hugepages() { [ -f ${mrzcpd_cfg_file} ] && sed -i "s/HUGEPAGE_NUM_1G=\w*/HUGEPAGE_NUM_1G=${HUGEPAGES}/g" ${mrzcpd_cfg_file} - sysctl -w vm.nr_hugepages=${HUGEPAGES} + # sysctl -w vm.nr_hugepages=${HUGEPAGES} return 0 } @@ -132,12 +133,49 @@ set_bridge() ip link set br_dign_s up } +set_grub_cmdline_file() +{ + local result=0 + local grub_cmdline_key="$1" + local grub_cmdline_value="$2" + + if ! grep -q " ${grub_cmdline_key}=" "$grub_cfg_file"; then + sed -i "/ linux / s/$/ ${grub_cmdline_key}=${grub_cmdline_value}/" $grub_cfg_file + result=1 + elif ! grep -q " ${grub_cmdline_key}=${grub_cmdline_value}" "$grub_cfg_file"; then + sed -i "s/ ${grub_cmdline_key}=\w\+/ ${grub_cmdline_key}=${grub_cmdline_value}/g" $grub_cfg_file + result=1 + fi + return $result +} + +set_grub_cmdline() +{ + local set_grub_flag=0 + + grub_cmdline_key=("hugepagesz" "hugepages") + grub_cmdline_value=("1G" ${HUGEPAGES}) + + for index in "${!grub_cmdline_key[@]}" + do + set_grub_cmdline_file ${grub_cmdline_key[$index]} ${grub_cmdline_value[$index]} + if [ "$?" == "1" ]; then + set_grub_flag=1 + fi + done + + if [ "$set_grub_flag" == "1" ]; then + reboot + fi +} + load_tsg_os_HAL_config +set_hugepages +set_grub_cmdline /opt/tsg/mrzcpd/bin/mrmarch --auto set_cpu_list -set_hugepages set_mrzcpd_indirect_pktmbuf set_mrzcpd_direct_pktmbuf diff --git a/ansible/roles/tsg-os-HAL/files/service/tsg-os-HAL.service.TSGXP0906 b/ansible/roles/tsg-os-HAL/files/service/tsg-os-HAL.service.TSGXP0906 index 1e7c34cf..cc47ba57 100644 --- a/ansible/roles/tsg-os-HAL/files/service/tsg-os-HAL.service.TSGXP0906 +++ b/ansible/roles/tsg-os-HAL/files/service/tsg-os-HAL.service.TSGXP0906 @@ -1,5 +1,5 @@ [Unit] -Description=Tsg os HAL +Description=TSG-OS HAL Before=tsg-clixon-backend.service [Service]