diff options
| author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-03-10 01:01:51 +0000 | 
|---|---|---|
| committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-03-10 01:01:51 +0000 | 
| commit | 05fcef1b467640a2698e8f9ca911f1931caa62e8 (patch) | |
| tree | 50967fa84c24ad7e1ec94b284839b6863944db01 | |
| parent | 35a6840651ab4f4e5b4332e599ad1dbdcf2bc83e (diff) | |
cns3xxx: disable CONFIG_PROC_STRIPPED and add an init script to set the ethernet cpu affinity (improves lan<->wlan bridging performance)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35915 3c298f89-4303-0410-b956-a3cf2f4a3e73
| -rwxr-xr-x | target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu | 21 | ||||
| -rw-r--r-- | target/linux/cns3xxx/config-3.8 | 1 | 
2 files changed, 22 insertions, 0 deletions
| diff --git a/target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu b/target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu new file mode 100755 index 000000000..3a2a57bc1 --- /dev/null +++ b/target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu @@ -0,0 +1,21 @@ +#!/bin/sh /etc/rc.common + +START=99 + +get_irq() { +	local name="$1" +	grep -m 1 "$name" /proc/interrupts | cut -d: -f1 | sed 's, *,,' +} + +set_irq_affinity() { +	local name="$1" +	local val="$2" +	local irq="$(get_irq "$name")" +	[ -n "$irq" ] || return +	echo "$val" > "/proc/irq/$irq/smp_affinity" +} + +start() { +	set_irq_affinity gig_switch 2 +	set_irq_affinity gig_stat 2 +} diff --git a/target/linux/cns3xxx/config-3.8 b/target/linux/cns3xxx/config-3.8 index c3f4fb164..f308db02e 100644 --- a/target/linux/cns3xxx/config-3.8 +++ b/target/linux/cns3xxx/config-3.8 @@ -166,6 +166,7 @@ CONFIG_PL310_ERRATA_769419=y  CONFIG_PPS=y  CONFIG_PPS_CLIENT_GPIO=y  # CONFIG_PREEMPT_RCU is not set +# CONFIG_PROC_STRIPPED is not set  CONFIG_RAID_ATTRS=y  CONFIG_RFS_ACCEL=y  CONFIG_RPS=y | 
