Hi,
I tried to test with performance of wl18xx and i got that result ( I think its really bad)
1) I connected to an access point.
root@OpenWrt:/# wpa_supplicant -Dnl80211 -iwlan0 -c wpa.conf & root@OpenWrt:/# Successfully initialized wpa_supplicant [ 68.162776] wlcore: PHY firmware version: Rev 8.2.0.0.163 [ 68.260049] wlcore: firmware booted (Rev 8.5.0.0.55) [ 68.275122] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready wlan0: CTRL-EVENT-SCAN-STARTED wlan0: SME: Trying to authenticate with b4:75:0e[ 72.098464] wlan0: authenticate with b4:75:0e:55:d6:eb :55:d6:eb (SSID='VEriK' freq=2462 MHz) [ 72.111860] wlan0: send auth to b4:75:0e:55:d6:eb (try 1/3) [ 72.161386] wlan0: authenticated wlan0: Trying to associate with b4:75:0e:55:d6:eb (SSID='VEriK' [ 72.167032] wlan0: associate with b4:75:0e:55:d6:eb (try 1/3) freq=2462 MHz) [ 72.290322] wlan0: RX AssocResp from b4:75:0e:55:d6:eb (capab=0x411 status=0 aid=27) [ 72.305016] wlan0: associated wlan0: Associated with b4:75:0e:55:d6:eb[ 72.308930] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready wlan0: WPA: Key negotiation completed with b4:75[ 72.358732] wlcore: Association completed. :0e:55:d6:eb [PTK=CCMP GTK=TKIP] wlan0: CTRL-EVENT-CONNECTED - Connection to b4:75:0e:55:d6:eb completed [id=0 id_str=] root@OpenWrt:/# iudhcop root@OpenWrt:/# udhcpc -i wlan0 udhcpc (v1.22.1) started Sending discover... Sending select for 10.0.0.168... Lease of 10.0.0.168 obtained, lease time 86400 udhcpc: ifconfig wlan0 10.0.0.168 netmask 255.255.255.0 broadcast 10.0.0.255 udhcpc: setting default routers: 10.0.0.1 root@OpenWrt:/# root@OpenWrt:/# oipwererl root@OpenWrt:/# iperf -s -i1 ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local 10.0.0.168 port 5001 connected with 10.0.0.165 port 48513 [ ID] Interval Transfer Bandwidth [ 4] 0.0- 1.0 sec 163 KBytes 1.34 Mbits/sec [ 4] 1.0- 2.0 sec 161 KBytes 1.32 Mbits/sec [ 4] 2.0- 3.0 sec 198 KBytes 1.62 Mbits/sec [ 4] 3.0- 4.0 sec 142 KBytes 1.16 Mbits/sec [ 4] 4.0- 5.0 sec 183 KBytes 1.50 Mbits/sec [ 4] 5.0- 6.0 sec 73.5 KBytes 602 Kbits/sec [ 4] 6.0- 7.0 sec 60.8 KBytes 498 Kbits/sec [ 4] 7.0- 8.0 sec 56.6 KBytes 463 Kbits/sec [ 4] 8.0- 9.0 sec 70.7 KBytes 579 Kbits/sec [ 4] 9.0-10.0 sec 106 KBytes 869 Kbits/sec [ 4] 10.0-11.0 sec 170 KBytes 1.39 Mbits/sec [ 4] 11.0-12.0 sec 171 KBytes 1.40 Mbits/sec [ 4] 12.0-13.0 sec 198 KBytes 1.62 Mbits/sec [ 4] 13.0-14.0 sec 180 KBytes 1.47 Mbits/sec [ 4] 14.0-15.0 sec 201 KBytes 1.65 Mbits/sec [ 4] 15.0-16.0 sec 137 KBytes 1.12 Mbits/sec [ 4] 16.0-17.0 sec 166 KBytes 1.36 Mbits/sec [ 4] 17.0-18.0 sec 148 KBytes 1.21 Mbits/sec [ 4] 18.0-19.0 sec 175 KBytes 1.44 Mbits/sec [ 4] 19.0-20.0 sec 119 KBytes 973 Kbits/sec [ 4] 20.0-21.0 sec 136 KBytes 1.11 Mbits/sec [ 4] 21.0-22.0 sec 188 KBytes 1.54 Mbits/sec [ 4] 22.0-23.0 sec 191 KBytes 1.56 Mbits/sec [ 4] 23.0-24.0 sec 154 KBytes 1.26 Mbits/sec [ 4] 24.0-25.0 sec 143 KBytes 1.17 Mbits/sec [ 4] 25.0-26.0 sec 55.2 KBytes 452 Kbits/sec [ 4] 26.0-27.0 sec 43.8 KBytes 359 Kbits/sec [ 4] 27.0-28.0 sec 73.5 KBytes 602 Kbits/sec [ 4] 28.0-29.0 sec 53.7 KBytes 440 Kbits/sec [ 4] 29.0-30.0 sec 102 KBytes 834 Kbits/sec [ 4] 30.0-31.0 sec 129 KBytes 1.05 Mbits/sec [ 4] 0.0-31.7 sec 4.13 MBytes 1.09 Mbits/sec
2) I created a SoftAP with hostapd.conf got in this link : http://processors.wiki.ti.com/index.php/WiLink8_WLAN_Demo:_Linux#AP_.28create_AP_with_no_security.29
root@OpenWrt:/# iw phy0 interface add wlan1 type managed root@OpenWrt:/# [ 30.232188] wlcore: PHY firmware version: Rev 8.2.0.0.163 [ 30.329720] wlcore: firmware booted (Rev 8.5.0.0.55) [ 30.344841] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready root@OpenWrt:/# ifconfig eth0 Link encap:Ethernet HWaddr 78:A5:04:DD:0B:E8 inet addr:192.168.1.187 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fd43:5ef4:899a::1/60 Scope:Global inet6 addr: fe80::7aa5:4ff:fedd:be8/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:53 errors:0 dropped:0 overruns:0 frame:0 TX packets:52 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:7622 (7.4 KiB) TX bytes:6160 (6.0 KiB) Interrupt:56 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:64 errors:0 dropped:0 overruns:0 frame:0 TX packets:64 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:6878 (6.7 KiB) TX bytes:6878 (6.7 KiB) wlan1 Link encap:Ethernet HWaddr 84:DD:20:66:9F:3E inet addr:10.22.22.1 Bcast:10.22.22.255 Mask:255.255.255.0 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) root@OpenWrt:/# hostapd hostapd.conf & root@OpenWrt:/# Configuration file: hostapd.conf [ 38.962784] wlcore: down wlan1: interface state UNINITIALIZED->COUNTRY_UPDATE Using interface wlan1 with hwaddr 84:dd:20:66:9f:3e and ssid "Mu[ 44.019781] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready ltirole_Demo" wlan1: interface state COUNTRY_UPDATE->ENABLED wlan1: AP-ENABLED wlan1: STA 54:35:30:bd:6a:c7 IEEE 802.11: authenticated wlan1: STA 54:35:30:bd:6a:c7 IEEE 802.11: associated (aid 1) wlan1: AP-STA-CONNECTED 54:35:30:bd:6a:c7 wlan1: STA 54:35:30:bd:6a:c7 RADIUS: starting accounting session 5476C3A7-00000000 root@OpenWrt:/# ipe root@OpenWrt:/# iperf -s -i1 ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local 10.22.22.1 port 5001 connected with 10.22.22.17 port 57534 [ ID] Interval Transfer Bandwidth [ 4] 0.0- 1.0 sec 2.80 MBytes 23.5 Mbits/sec [ 4] 1.0- 2.0 sec 3.23 MBytes 27.1 Mbits/sec [ 4] 2.0- 3.0 sec 3.87 MBytes 32.4 Mbits/sec [ 4] 3.0- 4.0 sec 4.38 MBytes 36.8 Mbits/sec [ 4] 4.0- 5.0 sec 4.82 MBytes 40.4 Mbits/sec [ 4] 5.0- 6.0 sec 4.53 MBytes 38.0 Mbits/sec [ 4] 6.0- 7.0 sec 3.66 MBytes 30.7 Mbits/sec [ 4] 7.0- 8.0 sec 4.40 MBytes 36.9 Mbits/sec
In my PC
iperf -c 10.22.22.1 -i 1 -t 30 ------------------------------------------------------------ Client connecting to 10.22.22.1, TCP port 5001 TCP window size: 22.9 KByte (default) ------------------------------------------------------------ [ 3] local 10.22.22.17 port 57534 connected with 10.22.22.1 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0- 1.0 sec 2.88 MBytes 24.1 Mbits/sec [ 3] 1.0- 2.0 sec 3.25 MBytes 27.3 Mbits/sec [ 3] 2.0- 3.0 sec 4.00 MBytes 33.6 Mbits/sec [ 3] 3.0- 4.0 sec 4.25 MBytes 35.7 Mbits/sec [ 3] 4.0- 5.0 sec 5.00 MBytes 41.9 Mbits/sec [ 3] 5.0- 6.0 sec 4.38 MBytes 36.7 Mbits/sec [ 3] 6.0- 7.0 sec 3.75 MBytes 31.5 Mbits/sec [ 3] 7.0- 8.0 sec 4.25 MBytes 35.7 Mbits/sec
I dont know why it just run 8 times, and i couldn't ping host
ping 10.22.22.1 PING 10.22.22.1 (10.22.22.1) 56(84) bytes of data. From 10.22.22.17 icmp_seq=1 Destination Host Unreachable From 10.22.22.17 icmp_seq=2 Destination Host Unreachable From 10.22.22.17 icmp_seq=3 Destination Host Unreachable From 10.22.22.17 icmp_seq=4 Destination Host Unreachable
But in device I did not see packet lost
wlan1 Link encap:Ethernet HWaddr 84:DD:20:66:9F:3E inet addr:10.22.22.1 Bcast:10.22.22.255 Mask:255.255.255.0 inet6 addr: fe80::86dd:20ff:fe66:9f3e/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:24910 errors:0 dropped:0 overruns:0 frame:0 TX packets:12621 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:37574021 (35.8 MiB) TX bytes:1086199 (1.0 MiB)
and when i tried to kill hostapd and run it again i got that dump:
^CWaiting for server threads to complete. Interrupt again to force quit. ^Croot@OpenWrt:/# root@OpenWrt:/# root@OpenWrt:/# hostapd hostapd.conf & root@OpenWrt:/# Configuration file: hostapd.conf nl80211: Could not configure driver mode [ 129.306532] wlcore: WARNING Unable to flush all TX buffers, timed out (timeout 500 ms [ 129.816531] wlcore: WARNING Unable to flush all TX buffers, timed out (timeout 500 ms [ 130.326544] wlcore: WARNING Unable to flush all TX buffers, timed out (timeout 500 ms nl80211 driver initialization failed. hostapd_free_hapd_data: Interface wlan1 wasn't started [ 133.776527] wlcore: ERROR Tx stuck (in FW) for 5000 ms. Starting recovery [ 133.783677] ------------[ cut here ]------------ [ 133.788633] WARNING: CPU: 0 PID: 6 at drivers/net/wireless/ti/wlcore/main.c:813 wl12xx_queue_recovery_work+0x2c/0x6c [wlcore]() [ 133.800751] Modules linked in: btwilink bluetooth pppoe ppp_async iptable_nat wl18xx pppox ppp_generic nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 krng ipt_MASQUERADE chainiv xt_time xt_tcpudp xt_state xt_nat xt_multiport xt_mark xt_mac xt_limit xt_id xt_conntrack xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_CT wlcore_sdio wlcore slhc rng nf_nat_irc nf_nat_ftp nf_nat nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_irc nf_conntrack_ftp nf_conntrack mac80211 iptable_raw iptable_mangle iptable_filter ipt_REJECT ip_tables ctr crypto_wq crc_itu_t crc_ccitt cfg80211 ccm aead ip6t_REJECT ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables ipv6 arc4 crypto_blkcipher usbcore usb_common [ 133.865164] CPU: 0 PID: 6 Comm: kworker/u2:0 Not tainted 3.13.7 #2 [ 133.871677] Workqueue: phy0 wl12xx_tx_watchdog_work [wlcore] [ 133.877628] Backtrace: [ 133.880218] [<c001bd88>] (dump_backtrace+0x0/0x118) from [<c001c06c>] (show_stack+0x18/0x1c) [ 133.889086] r6:bf18f108 r5:00000000 r4:c05275a8 r3:60000013 [ 133.895049] [<c001c054>] (show_stack+0x0/0x1c) from [<c01a564c>] (dump_stack+0x88/0x98) [ 133.903467] [<c01a55c4>] (dump_stack+0x0/0x98) from [<c0040154>] (warn_slowpath_common+0x78/0x94) [ 133.912787] r5:00000009 r4:00000000 [ 133.916562] [<c00400dc>] (warn_slowpath_common+0x0/0x94) from [<c0040214>] (warn_slowpath_null+0x24/0x2c) [ 133.926614] r8:00000000 r7:df444ce0 r6:df444ce8 r5:df444d18 r4:df444ce0 [ 133.933683] [<c00401f0>] (warn_slowpath_null+0x0/0x2c) from [<bf18f108>] (wl12xx_queue_recovery_work+0x2c/0x6c [wlcore]) [ 133.945122] [<bf18f0dc>] (wl12xx_queue_recovery_work+0x0/0x6c [wlcore]) from [<bf18f254>] (wl12xx_tx_watchdog_work+0x10c/0x118 [wlcore]) [ 133.957997] r4:df445948 r3:60000013 [ 133.961770] [<bf18f148>] (wl12xx_tx_watchdog_work+0x0/0x118 [wlcore]) from [<c00555c8>] (process_one_work+0x234/0x37c) [ 133.973005] r7:df04e300 r6:df014000 r5:df445948 r4:df041400 [ 133.978976] [<c0055394>] (process_one_work+0x0/0x37c) from [<c0056334>] (worker_thread+0x27c/0x41c) [ 133.988490] [<c00560b8>] (worker_thread+0x0/0x41c) from [<c005bbac>] (kthread+0xf0/0xf4) [ 133.997000] [<c005babc>] (kthread+0x0/0xf4) from [<c0008dd8>] (ret_from_fork+0x14/0x3c) [ 134.005394] r7:00000000 r6:00000000 r5:c005babc r4:df01a6c0 [ 134.011363] ---[ end trace c95d69b8cc34e61c ]--- [ 134.016511] wlcore: Hardware recovery in progress. FW ver: Rev 8.5.0.0.55 [ 134.024078] wlcore: pc: 0x0, hint_sts: 0x00000044 count: 1 [ 134.030886] wlcore: down [ 134.034723] ieee80211 phy0: Hardware restart was requested [ 134.457832] wlcore: PHY firmware version: Rev 8.2.0.0.163 [ 134.549721] wlcore: firmware booted (Rev 8.5.0.0.55)
How to debug that?
Thanks
Tuan Nguyen