From: "Toke Høiland-Jørgensen" <toke@toke.dk>
To: Dave Taht <dave.taht@gmail.com>
Cc: Felix Fietkau <nbd@nbd.name>, make-wifi-fast@lists.bufferbloat.net
Subject: Re: [Make-wifi-fast] [PATCH v7] mac80211: Move reorder-sensitive TX handlers to after TXQ dequeue.
Date: Mon, 05 Sep 2016 22:45:24 +0200 [thread overview]
Message-ID: <87oa429iu3.fsf@toke.dk> (raw)
In-Reply-To: <CAA93jw57445K_Gz3sbB4vOexPjBhBo5SmCQEj-Nd1CZFdpMsVw@mail.gmail.com> (Dave Taht's message of "Mon, 5 Sep 2016 13:23:50 -0700")
Dave Taht <dave.taht@gmail.com> writes:
> Toke
>
> Alright, I got your build running on one of the new uap ac lites. Your
> patchset includes
> 348-mac80211-Use-more-standard-codel-and-fq_codel-defaul.patch which
> reverts the fq quantum to 1514, and the codel target to 5ms.
>
> (still not clear to me what the actual max packet size is in this layer)
>
> There's no kernel repo in what you put up, so the ath10k firmware and
> kernel modules are AWOL. So I tested mcs1, msc4, and minstrel. I had
> babel
> enabled (to blow up multicast), also.
>
> It basically survived many tests, with generally half the latency of
> what I got from lede mainline, under various loads (from 40ms median
> to below 20ms median) I did not test crypto, just pounded it flat from
> a mac. Bandwidth was slightly lower at the peak in ht20 mode vs lede
> mainine but my circumstances are not very repeatable yet - I hadn't
> had babel enabled on the previous test run, I tested a channel that is
> probably busy during the day vs not at night, I'd moved both the AP
> and the test station, and so on. I'll be getting towards repeatability
> soon, and
> I'm happy the new APs seem to be working great. At 65Mbit I'd see
> about 12% sirq.
Yay, sounds promising :)
> I'll put up some pics later, try to test powersave, try higher rates,
> and various forms of crypto - still yurtlab-building here!
>
> However - probably triggered by the rrul test, I did get 3 kernel
> panics. the symptoms were that the osx box would stay associated but
> no longer pass traffic.
>
> [ 3149.554217] ------------[ cut here ]------------
> [ 3149.559260] WARNING: CPU: 0 PID: 0 at
> compat-wireless-2016-06-20/net/mac80211/tx.c:1514
> ieee80211_tx_dequeue+0x17c/0x968 [mac80211]()
> [ 3149.571663] Modules linked in: ath9k ath9k_common iptable_nat
> ath9k_hw ath nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 mac80211
> ipt_REJECT ipt_MASQUERADE ebtable_nat ebtable_filter ebtable_broute
> cfg80211 xt_time xt_tcpudp xt_tcpmss xt_statistic xt_state xt_recent
> xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_id xt_hl
> xt_helper xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit
> xt_connbytes xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_IPMARK xt_HL
> xt_DSCP xt_CT xt_CLASSIFY nf_reject_ipv4 nf_nat_redirect
> nf_nat_masquerade_ipv4 nf_nat nf_log_ipv4 nf_defrag_ipv6
> nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack_netlink nf_conntrack
> iptable_raw iptable_mangle iptable_filter ipt_ECN ip_tables ebtables
> ebt_vlan ebt_stp ebt_snat ebt_redirect ebt_pkttype ebt_mark_m ebt_mark
> ebt_limit ebt_ip6 ebt_ip ebt_dnat ebt_arpreply ebt_arp ebt_among
> ebt_802_3 crc_ccitt compat_xtables compat br_netfilter arptable_filter
> arpt_mangle arp_tables sch_cake em_nbyte sch_htb sch_prio sch_dsmark
> sch_pie sch_gred em_meta sch_teql cls_basic act_ipt sch_red em_text
> sch_tbf act_police sch_codel sch_sfq em_cmp sch_fq act_skbedit
> act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw
> sch_hfsc sch_ingress leds_wndr3700_usb ledtrig_usbdev xt_set
> ip_set_list_set ip_set_hash_netiface ip_set_hash_netport
> ip_set_hash_netnet ip_set_hash_net ip_set_hash_netportnet
> ip_set_hash_mac ip_set_hash_ipportnet ip_set_hash_ipportip
> ip_set_hash_ipport ip_set_hash_ipmark ip_set_hash_ip
> ip_set_bitmap_port ip_set_bitmap_ipmac ip_set_bitmap_ip ip_set
> nfnetlink ip6t_rt ip6t_frag ip6t_hbh ip6t_eui64 ip6t_mh ip6t_ah
> ip6t_ipv6header ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common
> ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables ifb
> sit tunnel4 ip_tunnel tun ohci_platform ohci_hcd ehci_platform
> ehci_hcd gpio_button_hotplug usbcore nls_base usb_common
> [ 3149.740660] CPU: 0 PID: 0 Comm: swapper Tainted: G W 4.4.19 #0
> [ 3149.747856] Stack : 804205e4 00000000 00000001 80480000 8046f058
> 8046ece3 803f9bd0 00000000
> [ 3149.747856] 804f37e0 b75381f8 87011000 87011008 871c3bd0
> 800ada74 80400a84 80460000
> [ 3149.747856] 00000003 b75381f8 803fea6c 8046597c 871c3bd0
> 800ab9a0 00000002 00000000
> [ 3149.747856] 8046b1a0 80231300 00000000 00000000 00000000
> 00000000 00000000 00000000
> [ 3149.747856] 00000000 00000000 00000000 00000000 00000000
> 00000000 00000000 00000000
> [ 3149.747856] ...
> [ 3149.784879] Call Trace:
> [ 3149.787417] [<80072378>] show_stack+0x50/0x84
> [ 3149.791925] [<80084240>] warn_slowpath_common+0xa4/0xd4
> [ 3149.797333] [<800842f8>] warn_slowpath_null+0x18/0x24
> [ 3149.802826] [<8712cf2c>] ieee80211_tx_dequeue+0x17c/0x968 [mac80211]
> [ 3149.809726] [<870ea900>] ath_tid_dequeue+0x98/0x13c [ath9k]
> [ 3149.815532] [<870ea9f8>] ath_tx_get_tid_subframe+0x54/0x1ec [ath9k]
> [ 3149.822026] [<870eb354>] ath_txq_schedule+0x540/0x650 [ath9k]
> [ 3149.827993] [<870ec018>] ath_tx_process_buffer+0x9d0/0xa18 [ath9k]
> [ 3149.834413] [<870ecd6c>] ath_tx_edma_tasklet+0x2d0/0x324 [ath9k]
> [ 3149.840634] [<870e4fa0>] ath9k_tasklet+0x24c/0x2b0 [ath9k]
> [ 3149.846332] [<80087634>] tasklet_action+0x80/0xc8
> [ 3149.851189] [<80086f68>] __do_softirq+0x26c/0x32c
> [ 3149.856070] [<8006a908>] plat_irq_dispatch+0xd4/0x10c
> [ 3149.861287] [<80060830>] ret_from_irq+0x0/0x4
> [ 3149.865803] [<8006ec00>] r4k_wait_irqoff+0x18/0x20
> [ 3149.870757] [<800a87ac>] cpu_startup_entry+0xf8/0x184
> [ 3149.875994] [<8049cbec>] start_kernel+0x488/0x4a8
> [ 3149.880851]
> [ 3149.882392] ---[ end trace 103165cc10a64d96 ]---
Ah, no, those are not panics, those are warnings being triggered by the
fast_tx pointer going while the packet was queued. Now, the
xmit_fast_finish() function doesn't actually use that for anything other
than crypto key configuration, so it would probably be feasible to get
rid of that check in the dequeue path.
How many of those warnings do you see? And what do you have to do to get
traffic to flow again? The warning should just cause the packet to be
dropped; subsequent packets shouldn't be affected (ha!).
-Toke
next prev parent reply other threads:[~2016-09-05 20:45 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-17 12:58 [Make-wifi-fast] [PATCH] mac80211: Move crypto IV generation " Toke Høiland-Jørgensen
2016-08-17 13:08 ` Johannes Berg
2016-08-17 13:16 ` Toke Høiland-Jørgensen
2016-08-17 13:18 ` Johannes Berg
2016-08-17 13:23 ` Toke Høiland-Jørgensen
2016-08-17 14:45 ` [Make-wifi-fast] [PATCH v2] " Toke Høiland-Jørgensen
2016-08-17 15:47 ` Noah Causin
2016-08-17 22:33 ` Toke Høiland-Jørgensen
2016-08-19 3:06 ` Noah Causin
2016-08-22 14:24 ` Toke Høiland-Jørgensen
2016-08-23 17:06 ` Noah Causin
2016-08-23 17:51 ` Toke Høiland-Jørgensen
2016-08-17 19:49 ` Johannes Berg
2016-08-17 20:07 ` Dave Taht
2016-08-17 20:43 ` Johannes Berg
2016-08-22 14:47 ` Toke Høiland-Jørgensen
2016-08-26 8:38 ` Johannes Berg
2016-08-26 8:54 ` Toke Høiland-Jørgensen
2016-08-24 16:20 ` [Make-wifi-fast] [PATCH v3] mac80211: Move reorder-sensitive TX handlers " Toke Høiland-Jørgensen
2016-08-24 22:40 ` Noah Causin
2016-08-25 12:45 ` Toke Høiland-Jørgensen
2016-08-26 14:30 ` Toke Høiland-Jørgensen
2016-08-26 14:51 ` Dave Taht
2016-08-30 13:15 ` [Make-wifi-fast] [PATCH v4] " Toke Høiland-Jørgensen
2016-08-30 13:17 ` Toke Høiland-Jørgensen
2016-08-31 21:06 ` Johannes Berg
2016-09-01 8:23 ` Toke Høiland-Jørgensen
2016-09-01 8:34 ` Johannes Berg
2016-09-01 8:38 ` Toke Høiland-Jørgensen
2016-09-01 9:07 ` Johannes Berg
2016-09-01 9:20 ` Toke Høiland-Jørgensen
2016-09-01 9:27 ` Johannes Berg
2016-09-01 9:42 ` Toke Høiland-Jørgensen
2016-09-01 16:03 ` [Make-wifi-fast] [PATCH v5] " Toke Høiland-Jørgensen
2016-09-01 17:59 ` Johannes Berg
2016-09-01 18:30 ` Toke Høiland-Jørgensen
2016-09-01 18:35 ` Johannes Berg
2016-09-02 2:48 ` Jason Andryuk
2016-09-02 9:27 ` Toke Høiland-Jørgensen
2016-09-02 13:41 ` [Make-wifi-fast] [PATCH v6] " Toke Høiland-Jørgensen
2016-09-02 14:44 ` Toke Høiland-Jørgensen
2016-09-05 11:30 ` [Make-wifi-fast] [PATCH v7] " Toke Høiland-Jørgensen
2016-09-05 16:06 ` Toke Høiland-Jørgensen
2016-09-05 17:00 ` Dave Taht
2016-09-05 17:26 ` Toke Høiland-Jørgensen
2016-09-05 17:59 ` Dave Taht
2016-09-05 20:23 ` Dave Taht
2016-09-05 20:45 ` Toke Høiland-Jørgensen [this message]
2016-09-05 21:02 ` Dave Taht
2016-09-05 21:25 ` Toke Høiland-Jørgensen
2016-09-05 21:29 ` Dave Taht
2016-09-05 21:35 ` Toke Høiland-Jørgensen
2016-09-05 21:42 ` Dave Taht
2016-09-05 22:04 ` Dave Taht
2016-09-05 22:01 ` Toke Høiland-Jørgensen
2016-09-05 22:08 ` Dave Taht
2016-09-05 22:31 ` Dave Taht
2016-09-05 17:49 ` Felix Fietkau
2016-09-05 17:59 ` Toke Høiland-Jørgensen
2016-09-05 18:45 ` Felix Fietkau
2016-09-06 11:43 ` Toke Høiland-Jørgensen
2016-09-06 11:45 ` Toke Høiland-Jørgensen
2016-09-06 11:44 ` [Make-wifi-fast] [PATCH v8] " Toke Høiland-Jørgensen
2016-09-06 22:04 ` Felix Fietkau
2016-09-12 12:35 ` Johannes Berg
2016-09-12 13:08 ` Toke Høiland-Jørgensen
2016-09-12 13:19 ` Johannes Berg
2016-09-22 17:04 ` [Make-wifi-fast] [PATCH v9 0/2] mac80211: TXQ dequeue path rework Toke Høiland-Jørgensen
2016-09-22 17:04 ` [Make-wifi-fast] [PATCH v9 1/2] mac80211: Move ieee802111_tx_dequeue() to later in tx.c Toke Høiland-Jørgensen
2016-09-30 11:13 ` Johannes Berg
2016-09-22 17:04 ` [Make-wifi-fast] [PATCH v9 2/2] mac80211: Move reorder-sensitive TX handlers to after TXQ dequeue Toke Høiland-Jørgensen
2016-09-30 10:27 ` Johannes Berg
2016-09-30 12:39 ` Toke Høiland-Jørgensen
2016-09-30 12:43 ` Johannes Berg
2016-09-30 12:45 ` Toke Høiland-Jørgensen
2016-09-30 12:49 ` Johannes Berg
2016-09-30 14:01 ` Toke Høiland-Jørgensen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://lists.bufferbloat.net/postorius/lists/make-wifi-fast.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87oa429iu3.fsf@toke.dk \
--to=toke@toke.dk \
--cc=dave.taht@gmail.com \
--cc=make-wifi-fast@lists.bufferbloat.net \
--cc=nbd@nbd.name \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox