Files
x1pro/immortalwrt-patches/files/etc/rc.local
T

27 lines
1.5 KiB
Bash

#!/bin/sh
# RPS/RFS tuning for single-RX-queue devices (mtk_soc_eth)
# Distributes softirq across all CPUs; without this, all eth RX runs on CPU0 only.
# Pairs with sysctl tuning in /etc/sysctl.conf (BBR + buffer sizes).
[ -d /sys/class/net/eth1/queues ] && echo 3 > /sys/class/net/eth1/queues/rx-0/rps_cpus
[ -d /sys/class/net/eth0/queues ] && echo 3 > /sys/class/net/eth0/queues/rx-0/rps_cpus
[ -d /sys/class/net/br-lan/queues ] && echo 3 > /sys/class/net/br-lan/queues/rx-0/rps_cpus
[ -d /sys/class/net/ra0/queues ] && echo 3 > /sys/class/net/ra0/queues/rx-0/rps_cpus
[ -d /sys/class/net/rax0/queues ] && echo 3 > /sys/class/net/rax0/queues/rx-0/rps_cpus
echo 32768 > /proc/sys/net/core/rps_sock_flow_entries 2>/dev/null
[ -f /sys/class/net/eth1/queues/rx-0/rps_flow_cnt ] && echo 32768 > /sys/class/net/eth1/queues/rx-0/rps_flow_cnt
[ -f /sys/class/net/br-lan/queues/rx-0/rps_flow_cnt ] && echo 32768 > /sys/class/net/br-lan/queues/rx-0/rps_flow_cnt
# === VXLAN boot fallback (keng #12 part 2) ===
# Hotplug 20-vxlan sometimes misses wg0 ifup at boot (no 10.99 route, no log entry).
# If we got here without vxlan0, manually re-trigger the same script.
[ -e /sys/class/net/vxlan0 ] || ACTION=ifup INTERFACE=wg0 /etc/hotplug.d/net/20-vxlan
# === WiFi band label verifier (v28, log-only) ===
# Aligns UCI wifi labels with physical broadcast once driver is stable.
# Log-only (no uci mutation); see /etc/wifi-band-verify.sh for rationale.
( /etc/wifi-band-verify.sh >/dev/null 2>&1 & )
exit 0