[LEDE-DEV] HFSC bug?

Mirko Langisch pud at nerdpunx.net
Tue May 24 01:22:20 PDT 2016


Hey, i wanted to ask if someone can reproduce this, and
if there could be some openwrt/lede-specific patches involved maybe,
before i report this upstream:

i'm using sqm-scripts with a HFSC qdisc, and if i receive lots of UDP
packets (i first saw this when someone was trying an DNS amplification
attack, port wasn't open) - i get lots of warnings (see below),
after a few seconds the load rises, sometimes the router locks up completely,
it forwards only some packets with lots of delay, sometimes it reboots,
it also doesn't recover after the flood
(i can trigger it with hping3 --udp --flood -p xxxxx for example)

this also happens if i drop the packets completely (although it
seems worse, if they get rejected), and it doesn't happen if i use a
HTB qdisc, of course

tia, Mirko



warnings in dmesg (almost every process seems to trigger them):

[  700.515870] CPU: 0 PID: 97 Comm: kworker/0:1 Tainted: G        W       4.4.11 #1
[  700.523303] Workqueue: events_power_efficient 0x876e4770
[  700.528642] Stack : 87619e6c 86a79f90 86a79c68 0000000a 00000101 800a8700 80384de8 00000061
[  700.528642]    804235b4 86a79f90 803ab47c 87d2db14 80384de8 800a66cc 803e8bbc 803e8bc0
[  700.528642]    8038a240 00000003 87d2db14 87cccd00 80384de8 80097260 00000101 87d2db20
[  700.528642]    00000000 801dc51c 00000000 00000000 00000000 00000000 00000000 00000000
[  700.528642]    6576656e 74735f70 6f776572 5f656666 69636965 6e740000 87c2f000 81102700
[  700.528642]    ...
[  700.564670] Call Trace:
[  700.567134] [<80070f70>] show_stack+0x50/0x84
[  700.571518] [<800842c8>] warn_slowpath_common+0xa0/0xd0
[  700.576779] [<8008437c>] warn_slowpath_null+0x18/0x24
[  700.581881] [<87619e6c>] 0x87619e6c
[  700.585381] 
[  700.586888] ---[ end trace 2c7aeb1b474fece6 ]---
[  700.693734] ------------[ cut here ]------------
[  700.698424] WARNING: CPU: 0 PID: 6637 at net/sched/sch_hfsc.c:1426 0x87619e6c()
[  700.705775] Modules linked in: iptable_nat ip6table_nat nf_nat_ipv6 nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 ipt_REJECT ipt_MASQUERADE xt_time xt_tcpudp xt_tcpmss xt_string xt_statistic xt_state xt_recent xt_policy xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_id xt_hl xt_helper xt_hashlimit xt_esp xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_HL xt_DSCP xt_CT xt_CLASSIFY xt_ACCOUNT ts_kmp ts_fsm ts_bm nfnetlink_queue nf_reject_ipv4 nf_nat_redirect nf_nat_masquerade_ipv4 nf_nat_ftp nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack_netlink nf_conntrack_ftp macvlan iptable_raw iptable_mangle iptable_filter ipt_ah ipt_ECN ip_tables compat_xtables sch_fq em_cmp sch_teql em_nbyte cls_basic sch_prio sch_dsmark sch_pie sch_gred em_meta sch_htb act_ipt sch_tbf em_text sch_codel sch_sfq act_police sch_red act_connmark act_skbedit act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw sch_hfsc sch_ingress cryptodev 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_NPT ip6t_MASQUERADE nf_nat_masquerade_ipv6 nf_nat nf_conntrack ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables ifb sit ipcomp6 xfrm6_tunnel xfrm6_mode_tunnel xfrm6_mode_transport xfrm6_mode_beet esp6 ah6 ipcomp xfrm4_tunnel xfrm4_mode_tunnel xfrm4_mode_transport xfrm4_mode_beet esp4 ah4 tunnel6 tunnel4 ip_tunnel veth tun af_key xfrm_user xfrm_ipcomp xfrm_algo algif_skcipher algif_hash af_alg sha256_generic sha1_generic seqiv jitterentropy_rng drbg md5 hmac echainiv des_generic deflate zlib_inflate zlib_deflate ctr cbc authenc usb_storage ehci_platform ehci_hcd sd_mod scsi_mod ext4 jbd2 mbcache usbcore nls_base usb_common crc16 aead crypto_null crypto_hash
[  700.889378] CPU: 0 PID: 6637 Comm: dmesg Tainted: G        W       4.4.11 #1
[  700.896460] Stack : 00000000 00000001 803e0000 803a3098 86b43478 803e2e43 80384de8 000019ed
[  700.896460]    804235b4 86a79f90 86a79c68 87fced80 00000100 800a8700 803e8bbc 803e8bc0
[  700.896460]    8038a240 00000003 80388640 8684bd4c 86a79c68 800a66cc 00000100 800a8700
[  700.896460]    803e1f50 801dc51c 00000000 00000000 00000000 00000000 00000000 00000000
[  700.896460]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  700.896460]    ...
[  700.932489] Call Trace:
[  700.934965] [<80070f70>] show_stack+0x50/0x84
[  700.939357] [<800842c8>] warn_slowpath_common+0xa0/0xd0
[  700.944616] [<8008437c>] warn_slowpath_null+0x18/0x24
[  700.949722] [<87619e6c>] 0x87619e6c
[  700.953225] 
[  700.954732] ---[ end trace 2c7aeb1b474fece7 ]---
[  700.959520] ------------[ cut here ]------------
[  700.964203] WARNING: CPU: 0 PID: 6642 at net/sched/sch_hfsc.c:1426 0x87619e6c()
[  700.971543] Modules linked in: iptable_nat ip6table_nat nf_nat_ipv6 nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 ipt_REJECT ipt_MASQUERADE xt_time xt_tcpudp xt_tcpmss xt_string xt_statistic xt_state xt_recent xt_policy xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_id xt_hl xt_helper xt_hashlimit xt_esp xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_HL xt_DSCP xt_CT xt_CLASSIFY xt_ACCOUNT ts_kmp ts_fsm ts_bm nfnetlink_queue nf_reject_ipv4 nf_nat_redirect nf_nat_masquerade_ipv4 nf_nat_ftp nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack_netlink nf_conntrack_ftp macvlan iptable_raw iptable_mangle iptable_filter ipt_ah ipt_ECN ip_tables compat_xtables sch_fq em_cmp sch_teql em_nbyte cls_basic sch_prio sch_dsmark sch_pie sch_gred em_meta sch_htb act_ipt sch_tbf em_text sch_codel sch_sfq act_police sch_red act_connmark act_skbedit act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw sch_hfsc sch_ingress cryptodev 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_NPT ip6t_MASQUERADE nf_nat_masquerade_ipv6 nf_nat nf_conntrack ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables ifb sit ipcomp6 xfrm6_tunnel xfrm6_mode_tunnel xfrm6_mode_transport xfrm6_mode_beet esp6 ah6 ipcomp xfrm4_tunnel xfrm4_mode_tunnel xfrm4_mode_transport xfrm4_mode_beet esp4 ah4 tunnel6 tunnel4 ip_tunnel veth tun af_key xfrm_user xfrm_ipcomp xfrm_algo algif_skcipher algif_hash af_alg sha256_generic sha1_generic seqiv jitterentropy_rng drbg md5 hmac echainiv des_generic deflate zlib_inflate zlib_deflate ctr cbc authenc usb_storage ehci_platform ehci_hcd sd_mod scsi_mod ext4 jbd2 mbcache usbcore nls_base usb_common crc16 aead crypto_null crypto_hash
[  701.155170] CPU: 0 PID: 6642 Comm: pidof Tainted: G        W       4.4.11 #1
[  701.162244] Stack : 00000000 00000001 803e0000 803a3098 86ae7478 803e2e43 80384de8 000019f2
[  701.162244]    804235b4 86a79f90 86a79c68 0000000a 00000100 800a8700 803e8bbc 803e8bc0
[  701.162244]    8038a240 00000003 80388640 84581c4c 86a79c68 800a66cc 00000100 800a8700
[  701.162244]    803e1f50 801dc51c 00000000 00000000 00000000 00000000 00000000 00000000
[  701.162244]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  701.162244]    ...
[  701.198256] Call Trace:
[  701.200722] [<80070f70>] show_stack+0x50/0x84
[  701.205115] [<800842c8>] warn_slowpath_common+0xa0/0xd0
[  701.210375] [<8008437c>] warn_slowpath_null+0x18/0x24
[  701.215477] [<87619e6c>] 0x87619e6c
[  701.218993] 
[  701.220489] ---[ end trace 2c7aeb1b474fece8 ]---
[  701.254243] ------------[ cut here ]------------
[  701.258950] WARNING: CPU: 0 PID: 4039 at net/sched/sch_hfsc.c:1426 0x87619e6c()
[  701.266300] Modules linked in: iptable_nat ip6table_nat nf_nat_ipv6 nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 ipt_REJECT ipt_MASQUERADE xt_time xt_tcpudp xt_tcpmss xt_string xt_statistic xt_state xt_recent xt_policy xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_id xt_hl xt_helper xt_hashlimit xt_esp xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_HL xt_DSCP xt_CT xt_CLASSIFY xt_ACCOUNT ts_kmp ts_fsm ts_bm nfnetlink_queue nf_reject_ipv4 nf_nat_redirect nf_nat_masquerade_ipv4 nf_nat_ftp nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack_netlink nf_conntrack_ftp macvlan iptable_raw iptable_mangle iptable_filter ipt_ah ipt_ECN ip_tables compat_xtables sch_fq em_cmp sch_teql em_nbyte cls_basic sch_prio sch_dsmark sch_pie sch_gred em_meta sch_htb act_ipt sch_tbf em_text sch_codel sch_sfq act_police sch_red act_connmark act_skbedit act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw sch_hfsc sch_ingress cryptodev 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_NPT ip6t_MASQUERADE nf_nat_masquerade_ipv6 nf_nat nf_conntrack ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables ifb sit ipcomp6 xfrm6_tunnel xfrm6_mode_tunnel xfrm6_mode_transport xfrm6_mode_beet esp6 ah6 ipcomp xfrm4_tunnel xfrm4_mode_tunnel xfrm4_mode_transport xfrm4_mode_beet esp4 ah4 tunnel6 tunnel4 ip_tunnel veth tun af_key xfrm_user xfrm_ipcomp xfrm_algo algif_skcipher algif_hash af_alg sha256_generic sha1_generic seqiv jitterentropy_rng drbg md5 hmac echainiv des_generic deflate zlib_inflate zlib_deflate ctr cbc authenc usb_storage ehci_platform ehci_hcd sd_mod scsi_mod ext4 jbd2 mbcache usbcore nls_base usb_common crc16 aead crypto_null crypto_hash
[  701.449929] CPU: 0 PID: 4039 Comm: miniupnpd Tainted: G        W       4.4.11 #1
[  701.457360] Stack : 00000000 00000001 803e0000 803a3098 86b42078 803e2e43 80384de8 00000fc7
[  701.457360]    804235b4 86a79f90 86a79c68 0000000a 00000101 800a8700 803e8bbc 803e8bc0
[  701.457360]    8038a240 00000003 80388640 8588f864 86a79c68 800a66cc 00000101 800a8700
[  701.457360]    803e1f50 801dc51c 00000000 00000000 00000000 00000000 00000000 00000000
[  701.457360]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  701.457360]    ...
[  701.493371] Call Trace:
[  701.495846] [<80070f70>] show_stack+0x50/0x84
[  701.500239] [<800842c8>] warn_slowpath_common+0xa0/0xd0
[  701.505498] [<8008437c>] warn_slowpath_null+0x18/0x24
[  701.510602] [<87619e6c>] 0x87619e6c
[  701.514120] 
[  701.515613] ---[ end trace 2c7aeb1b474fece9 ]---
[  701.894587] ------------[ cut here ]------------
[  701.899298] WARNING: CPU: 0 PID: 3 at net/sched/sch_hfsc.c:1426 0x87619e6c()
[  701.906387] Modules linked in: iptable_nat ip6table_nat nf_nat_ipv6 nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 ipt_REJECT ipt_MASQUERADE xt_time xt_tcpudp xt_tcpmss xt_string xt_statistic xt_state xt_recent xt_policy xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_id xt_hl xt_helper xt_hashlimit xt_esp xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_HL xt_DSCP xt_CT xt_CLASSIFY xt_ACCOUNT ts_kmp ts_fsm ts_bm nfnetlink_queue nf_reject_ipv4 nf_nat_redirect nf_nat_masquerade_ipv4 nf_nat_ftp nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack_netlink nf_conntrack_ftp macvlan iptable_raw iptable_mangle iptable_filter ipt_ah ipt_ECN ip_tables compat_xtables sch_fq em_cmp sch_teql em_nbyte cls_basic sch_prio sch_dsmark sch_pie sch_gred em_meta sch_htb act_ipt sch_tbf em_text sch_codel sch_sfq act_police sch_red act_connmark act_skbedit act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw sch_hfsc sch_ingress cryptodev 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_NPT ip6t_MASQUERADE nf_nat_masquerade_ipv6 nf_nat nf_conntrack ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables ifb sit ipcomp6 xfrm6_tunnel xfrm6_mode_tunnel xfrm6_mode_transport xfrm6_mode_beet esp6 ah6 ipcomp xfrm4_tunnel xfrm4_mode_tunnel xfrm4_mode_transport xfrm4_mode_beet esp4 ah4 tunnel6 tunnel4 ip_tunnel veth tun af_key xfrm_user xfrm_ipcomp xfrm_algo algif_skcipher algif_hash af_alg sha256_generic sha1_generic seqiv jitterentropy_rng drbg md5 hmac echainiv des_generic deflate zlib_inflate zlib_deflate ctr cbc authenc usb_storage ehci_platform ehci_hcd sd_mod scsi_mod ext4 jbd2 mbcache usbcore nls_base usb_common crc16 aead crypto_null crypto_hash
[  702.089987] CPU: 0 PID: 3 Comm: ksoftirqd/0 Tainted: G        W       4.4.11 #1
[  702.097329] Stack : 00000000 00000001 803e0000 803a3098 87c28c78 803e2e43 80384de8 00000003
[  702.097329]    804235b4 86a79f90 86a79c68 858189c0 00000100 800a8700 803e8bbc 803e8bc0
[  702.097329]    8038a240 00000003 80388640 87c41cec 86a79c68 800a66cc 00000100 800a8700
[  702.097329]    803e1f50 801dc51c 00000000 00000000 00000000 00000000 00000000 00000000
[  702.097329]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  702.097329]    ...
[  702.133359] Call Trace:
[  702.135835] [<80070f70>] show_stack+0x50/0x84
[  702.140227] [<800842c8>] warn_slowpath_common+0xa0/0xd0
[  702.145486] [<8008437c>] warn_slowpath_null+0x18/0x24
[  702.150588] [<87619e6c>] 0x87619e6c
[  702.154107] 
[  702.155601] ---[ end trace 2c7aeb1b474fecea ]---
[  703.832477] ------------[ cut here ]------------
[  703.837198] WARNING: CPU: 0 PID: 2150 at net/sched/sch_hfsc.c:1426 0x87619e6c()
[  703.844544] Modules linked in: iptable_nat ip6table_nat nf_nat_ipv6 nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 ipt_REJECT ipt_MASQUERADE xt_time xt_tcpudp xt_tcpmss xt_string xt_statistic xt_state xt_recent xt_policy xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_id xt_hl xt_helper xt_hashlimit xt_esp xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_HL xt_DSCP xt_CT xt_CLASSIFY xt_ACCOUNT ts_kmp ts_fsm ts_bm nfnetlink_queue nf_reject_ipv4 nf_nat_redirect nf_nat_masquerade_ipv4 nf_nat_ftp nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack_netlink nf_conntrack_ftp macvlan iptable_raw iptable_mangle iptable_filter ipt_ah ipt_ECN ip_tables compat_xtables sch_fq em_cmp sch_teql em_nbyte cls_basic sch_prio sch_dsmark sch_pie sch_gred em_meta sch_htb act_ipt sch_tbf em_text sch_codel sch_sfq act_police sch_red act_connmark act_skbedit act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw sch_hfsc sch_ingress cryptodev 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_NPT ip6t_MASQUERADE nf_nat_masquerade_ipv6 nf_nat nf_conntrack ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables ifb sit ipcomp6 xfrm6_tunnel xfrm6_mode_tunnel xfrm6_mode_transport xfrm6_mode_beet esp6 ah6 ipcomp xfrm4_tunnel xfrm4_mode_tunnel xfrm4_mode_transport xfrm4_mode_beet esp4 ah4 tunnel6 tunnel4 ip_tunnel veth tun af_key xfrm_user xfrm_ipcomp xfrm_algo algif_skcipher algif_hash af_alg sha256_generic sha1_generic seqiv jitterentropy_rng drbg md5 hmac echainiv des_generic deflate zlib_inflate zlib_deflate ctr cbc authenc usb_storage ehci_platform ehci_hcd sd_mod scsi_mod ext4 jbd2 mbcache usbcore nls_base usb_common crc16 aead crypto_null crypto_hash
[  704.028182] CPU: 0 PID: 2150 Comm: dnsmasq Tainted: G        W       4.4.11 #1
[  704.035439] Stack : 00000000 00000001 803e0000 803a3098 86ae6578 803e2e43 80384de8 00000866
[  704.035439]    804235b4 86a79f90 86a79c68 877916c0 00000101 800a8700 803e8bbc 803e8bc0
[  704.035439]    8038a240 00000003 80388640 8697d8fc 86a79c68 800a66cc 00000101 800a8700
[  704.035439]    803e1f50 801dc51c 00000000 00000000 00000000 00000000 00000000 00000000
[  704.035439]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  704.035439]    ...
[  704.071460] Call Trace:
[  704.073934] [<80070f70>] show_stack+0x50/0x84
[  704.078327] [<800842c8>] warn_slowpath_common+0xa0/0xd0
[  704.083585] [<8008437c>] warn_slowpath_null+0x18/0x24
[  704.088690] [<87619e6c>] 0x87619e6c
[  704.092209] 
[  704.093717] ---[ end trace 2c7aeb1b474feceb ]---
[  704.099358] ------------[ cut here ]------------



More information about the Lede-dev mailing list