#!/bin/bash


function PATCH_START()
{
    # 修改ipv6链接数，由NAS+SAN业务规格确定
    echo 65536 > /proc/sys/net/ipv6/neigh/default/gc_thresh3
    echo 32768 > /proc/sys/net/ipv6/neigh/default/gc_thresh2
    echo 16384 > /proc/sys/net/ipv6/neigh/default/gc_thresh1
    # 配套gc_thresh大小，满足业务前提下 防止发生OOM
    echo 16384 > /proc/sys/net/ipv6/route/gc_thresh
    return 0
}
function PATCH_ROLLSTART()
{
    echo 1024 > /proc/sys/net/ipv6/neigh/default/gc_thresh3
    echo 512 > /proc/sys/net/ipv6/neigh/default/gc_thresh2
    echo 128 > /proc/sys/net/ipv6/neigh/default/gc_thresh1
    echo 1024 > /proc/sys/net/ipv6/route/gc_thresh
    return 0
}

#start：打补丁前需要执行的操作，脚本的执行时间点在替换文件前
#rollstart：回滚补丁时需要执行的操作，脚本的执行时间点在文件被恢复之前。
L_CMD=$1
case $L_CMD in
        "start") 
                PATCH_START
                ;;
        "rollstart") 
                PATCH_ROLLSTART
                ;;
        *)
               #log "unsupported option."
esac

exit 0
