netifd: rewrite packet steering script
authorFelix Fietkau <nbd@nbd.name>
Fri, 12 Apr 2024 19:51:50 +0000 (21:51 +0200)
committerFelix Fietkau <nbd@nbd.name>
Sun, 14 Apr 2024 14:24:37 +0000 (16:24 +0200)
commita205a5734eda4604a19b6cb0f65909ef69730699
tree39446d51255e400e299fb1d6f45932fb4db0bba6
parentc2f52e42b1e9f736edd6e4545ebe3435db6605ee
netifd: rewrite packet steering script

The new script uses a different strategy compared to the previous one.
Instead of trying to split flows by hash and spread them to all CPUs,
use RPS to redirect packets to a single core only.
Try to spread NAPI thread and RPS target CPUs across available CPUs
and try to ensure that the NAPI thread is on a different CPU than the
RPS target. This significantly reduces cycles wasted on the scheduler.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
package/network/config/netifd/Makefile
package/network/config/netifd/files/etc/init.d/packet_steering
package/network/config/netifd/files/usr/libexec/network/packet-steering.sh [deleted file]
package/network/config/netifd/files/usr/libexec/network/packet-steering.uc [new file with mode: 0755]