#! /bin/sh

### BEGIN INIT INFO
# Provides:          nic card settings
# Required-Stop:
# X-Start-Before:    suricata
# Default-Start:     2 3 4 5
# Default-Stop:
### END INIT INFO

rmmod mlx5_core && modprobe mlx5_core
ifconfig enp94s0f0 down
ifconfig enp94s0f1 down
/sbin/ethtool -L enp94s0f0 combined 40
/sbin/ethtool -L enp94s0f1 combined 40
/sbin/ethtool -K enp94s0f0 rxhash on
/sbin/ethtool -K enp94s0f1 rxhash on
/sbin/ethtool -K enp94s0f0 ntuple on
/sbin/ethtool -K enp94s0f1 ntuple on
ifconfig enp94s0f0 up
ifconfig enp94s0f1 up

/usr/sbin/set_irq_affinity_bynode.sh 0 enp94s0f0 enp94s0f1
/sbin/ethtool -X enp94s0f0 hkey 6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A equal 40
/sbin/ethtool -X enp94s0f1 hkey 6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A equal 40
/sbin/ethtool -A enp94s0f0 rx off tx off
/sbin/ethtool -A enp94s0f1 rx off tx off
/sbin/ethtool -C enp94s0f0 adaptive-rx off adaptive-tx off rx-usecs 125
/sbin/ethtool -C enp94s0f1 adaptive-rx off adaptive-tx off rx-usecs 125
/sbin/ethtool -G enp94s0f0 rx 8192
/sbin/ethtool -G enp94s0f0 tx 8192
/sbin/ethtool -G enp94s0f1 rx 8192
/sbin/ethtool -G enp94s0f1 tx 8192

for i in rx tx tso ufo gso gro lro tx sg txvlan rxvlan; do
       echo " /sbin/ethtool -K enp94s0f0 $i off 2>&1 > /dev/null; " 
       /sbin/ethtool -K enp94s0f0 $i off 2>&1 > /dev/null;
done

for i in rx tx tso ufo gso gro lro tx sg txvlan rxvlan; do
       echo " /sbin/ethtool -K enp94s0f1 $i off 2>&1 > /dev/null; " 
       /sbin/ethtool -K enp94s0f1 $i off 2>&1 > /dev/null;
done