summaryrefslogtreecommitdiffstats
path: root/functions.sh
diff options
context:
space:
mode:
Diffstat (limited to 'functions.sh')
-rw-r--r--functions.sh54
1 files changed, 54 insertions, 0 deletions
diff --git a/functions.sh b/functions.sh
new file mode 100644
index 0000000..32bd30e
--- /dev/null
+++ b/functions.sh
@@ -0,0 +1,54 @@
+function mlxreload {
+ rmmod mlx4_ib &> /dev/null
+ rmmod mlx4_en &> /dev/null
+ rmmod mlx4_core
+ rmmod ib_ucm &> /dev/null
+ rmmod rdma_ucm &> /dev/null
+ rmmod ib_uverbs
+ modprobe ib_uverbs disable_raw_qp_enforcement=1
+# modprobe ib_ucm
+ modprobe rdma_ucm
+ modprobe mlx4_core fast_drop=1 log_num_mgm_entry_size=-1
+ modprobe mlx4_en
+}
+
+function mlxload {
+ reload=0
+
+ param=$(cat /sys/module/mlx4_core/parameters/log_num_mgm_entry_size)
+ [ $param -ne -1 ] && reload=1
+
+ [ $reload -eq 1 ] && mlxreload
+}
+
+function portset {
+ pci=$1
+ mode=$2
+ ./connectx_port_config -d "$pci" -c "$mode,$mode" &> /dev/null
+}
+
+function mlxconf {
+ mode=$1
+
+ mlxload
+
+ pci=$(./connectx_port_config -s | grep PCI | grep -Po "[\da-f]{4}:[\da-f]{2}:[\da-f]{2}\.[\da-f]")
+ for dev in $pci; do
+ echo "Configuring: $dev"
+ portset $dev $mode
+ done
+}
+
+function ipset {
+ int="$1"
+ ip="$2"
+
+ if [ -n "$ip" ]; then
+ ip link set "$int" up
+ ip addr flush "$int"
+ ip addr show dev "$int" | grep "$ip" || ip addr add "$ip/24" dev "$int"
+ else
+ ip addr flush "$int"
+ ip link set "$int" down
+ fi
+}