Hi there,

I've got a Linksys WRT54GS loaded with OpenWrt's Kamikaze branch,
revision r12987.

I have configured the wlan0 interface to use WPA2 but I am finding that
traffic going through the wlan0 interface is killing the CPU on this
router with soft interrupts.  Here's what the top of top says while I'm
bulk transferring through the router:

CPU:   0% usr   0% sys   0% nice   0% idle   0% io   0% irq  99% softirq
Load average: 2.36 0.78 0.29
  PID  PPID USER     STAT   VSZ %MEM %CPU COMMAND
    3     2 root     RW<      0   0%  57% [ksoftirqd/0]
  715     1 root     R     3932  13%  19% hostapd -B /var/run/hostapd-wlan0.con
  501     1 root     S     1968   7%  10% udhcpc -t 0 -i eth0.1 -b -p /var/run/

Effective throughput is only 1.4MB/s even though the client says it's
connected at 54Mbp/s.

Here's the dmesg output from my router:

b43-phy0: Broadcom 4712 WLAN found
b43-phy0 debug: Found PHY: Analog 2, Type 2, Revision 2
b43-phy0 debug: Found Radio: Manuf 0x17F, Version 0x2050, Revision 2
b43-phy0 debug: DebugFS (CONFIG_DEBUG_FS) not enabled in kernel config
phy0: Selected rate control algorithm 'pid'
Broadcom 43xx driver loaded [ Features: NLR, Firmware-ID: FW13 ]
PPP generic driver version 2.4.2
ip_tables: (C) 2000-2006 Netfilter Core Team
nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
input: b43-phy0 as /devices/virtual/input/input0
b43-phy0: Loading firmware version 410.2160 (2007-05-26 15:32:10)
b43-phy0 debug: Chip initialized
b43-phy0 debug: 30-bit DMA initialized
Registered led device: b43-phy0::radio
b43-phy0 debug: Wireless interface started
b43-phy0 debug: Adding Interface type 2
device wlan0 entered promiscuous mode
b43-phy0 debug: Removing Interface type 2
b43-phy0 debug: Wireless interface stopped
b43-phy0 debug: DMA-30 rx_ring: Used slots 1/64, Failed frames 0/0 = 0.0%, 
Average tries 0.00
b43-phy0 debug: DMA-30 tx_ring_AC_BK: Used slots 0/128, Failed frames 0/0 = 
0.0%, Average tries 0.00
b43-phy0 debug: DMA-30 tx_ring_AC_BE: Used slots 0/128, Failed frames 0/0 = 
0.0%, Average tries 0.00
b43-phy0 debug: DMA-30 tx_ring_AC_VI: Used slots 0/128, Failed frames 0/0 = 
0.0%, Average tries 0.00
b43-phy0 debug: DMA-30 tx_ring_AC_VO: Used slots 2/128, Failed frames 0/6 = 
0.0%, Average tries 1.00
b43-phy0 debug: DMA-30 tx_ring_mcast: Used slots 0/128, Failed frames 0/0 = 
0.0%, Average tries 0.00
br-lan: port 2(wlan0) entering disabled state
input: b43-phy0 as /devices/virtual/input/input1
b43-phy0: Loading firmware version 410.2160 (2007-05-26 15:32:10)
b43-phy0 debug: Chip initialized
b43-phy0 debug: 30-bit DMA initialized
Registered led device: b43-phy0::radio
b43-phy0 debug: Wireless interface started
b43-phy0 debug: Adding Interface type 1
br-lan: port 2(wlan0) entering learning state
br-lan: topology change detected, propagating
br-lan: port 2(wlan0) entering forwarding state
b43-phy0 debug: Set beacon interval to 100
b43-phy0 debug: Set beacon interval to 100
b43-phy0 debug: Updated beacon template at 0x68
b43-phy0 debug: Updated beacon template at 0x468
b43-phy0 debug: Updated beacon template at 0x468
b43-phy0 debug: Set beacon interval to 100
b43-phy0 debug: Using hardware based encryption for keyidx: 1, mac: 
00:00:00:00:00:00
b43-phy0 debug: Updated beacon template at 0x468
b43-phy0 debug: Using hardware based encryption for keyidx: 0, mac: 
00:1d:e0:4f:1b:6d

I am noticing that last message and that is the MAC of the client doing
the bulk transfer.  I would have thought that that would be causing the
crypto to be getting done in hardware rather than software, although
that's a complete amateur's observation.

Any ideas why the softirq is so damn high?

b.

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to