Modify

Opened 22 months ago

Last modified 22 months ago

#22200 new defect

mt7620: USB/rndis_host transmit queue timed out

Reported by: AndreiM Owned by: developers
Priority: high Milestone:
Component: kernel Version: Trunk
Keywords: Cc: blogic

Description

Since K4.4 (4.3 may have been similar, definitely after 3.18), RNDIS tethering is semi-broken on at least MiWiFi Mini. Everything is detected and setup properly, and it works for a few seconds, but then it stops with:

[ 5303.704524] usb 1-1: new high-speed USB device number 2 using ehci-platform
[ 5303.728092] usb 1-1: no of_node; not parsing pinctrl DT
[ 6602.807361] usb 1-1: USB disconnect, device number 2
[13523.667467] usb 1-1: new high-speed USB device number 3 using ehci-platform
[13523.690983] usb 1-1: no of_node; not parsing pinctrl DT
[14460.369382] usb 1-1: USB disconnect, device number 3
[18952.648359] usb 1-1: new high-speed USB device number 4 using ehci-platform
[18952.672408] usb 1-1: no of_node; not parsing pinctrl DT
[20681.257237] usb 1-1: USB disconnect, device number 4
[29877.619858] usb 1-1: new high-speed USB device number 5 using ehci-platform
[29877.643524] usb 1-1: no of_node; not parsing pinctrl DT
[31676.852100] usb 1-1: USB disconnect, device number 5
[39753.610272] usb 1-1: new high-speed USB device number 6 using ehci-platform
[39753.633907] usb 1-1: no of_node; not parsing pinctrl DT
[39755.615399] usb 1-1: USB disconnect, device number 6
[39755.759294] usb 1-1: new high-speed USB device number 7 using ehci-platform
[39755.782764] usb 1-1: no of_node; not parsing pinctrl DT
[39755.785029] rndis_host 1-1:1.0: no of_node; not parsing pinctrl DT
[39755.788346] rndis_host 1-1:1.0 usb0: register 'rndis_host' at usb-101c0000.ehci-1, RNDIS device, fe:e7:4d:c6:e7:3b
[39774.764935] ------------[ cut here ]------------
[39774.769698] WARNING: CPU: 0 PID: 0 at net/sched/sch_generic.c:303 dev_watchdog+0x1dc/0x260()
[39774.778323] NETDEV WATCHDOG: usb0 (rndis_host): transmit queue 0 timed out
[39774.785342] Modules linked in: iptable_nat rt2800usb rt2800soc rt2800pci rt2800mmio rt2800lib rndis_host nf_nat_ipv4 nf_conntrack_ipv6 nf_conntrack_ipv4 ipt_REJECT ipt_MASQUERADE cdc_ether 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_HL xt_DSCP xt_CT xt_CLASSIFY usbnet rt2x00usb rt2x00soc rt2x00pci rt2x00mmio rt2x00lib 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 iptable_raw iptable_mangle iptable_filter ipt_ECN ip_tables crc_itu_t crc_ccitt em_cmp sch_teql em_nbyte sch_htb sch_prio sch_tbf sch_pie sch_gred sch_dsmark cls_basic act_ipt sch_red sch_codel em_text em_meta sch_sfq act_police sch_fq act_skbedit act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw sch_hfsc sch_ingress mt7603e mt76x2e mt76 mac80211 cfg80211 compat 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_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_raw ip6table_mangle ip6table_filter ip6_tables x_tables ifb eeprom_93cx6 leds_gpio dwc2 ohci_pci ohci_platform ohci_hcd ehci_pci ehci_platform ehci_hcd gpio_button_hotplug usbcore nls_base usb_common mii
[39774.930468] CPU: 0 PID: 0 Comm: swapper Not tainted 4.4.6 #1
[39774.936253] Stack : 00000000 00000001 80390000 80344454 803890b0 80388d43 80325ecc 00000000
[39774.936253] 	  803d342c 803873dc 00000200 00100000 00000100 80049c80 80395400 80395404
[39774.936253] 	  8032b370 00000003 80329774 80383c5c 00000200 80047c38 00000100 80049c80
[39774.936253] 	  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[39774.936253] 	  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[39774.936253] 	  ...
[39774.972603] Call Trace:
[39774.975117] [<8001447c>] show_stack+0x50/0x84
[39774.979570] [<80024c60>] warn_slowpath_common+0xa0/0xd0
[39774.984902] [<80024cbc>] warn_slowpath_fmt+0x2c/0x38
[39774.989984] [<8021618c>] dev_watchdog+0x1dc/0x260
[39774.994792] [<80052d68>] call_timer_fn.isra.5+0x24/0x80
[39775.000144] [<80052fe4>] run_timer_softirq+0x1ac/0x1f4
[39775.005412] [<800270d0>] __do_softirq+0x164/0x290
[39775.010213] [<80004430>] ret_from_irq+0x0/0x4
[39775.014679] [<80011390>] r4k_wait_irqoff+0x18/0x20
[39775.019603] [<80044ef4>] cpu_startup_entry+0x9c/0xe8
[39775.024683] [<803a3ba4>] start_kernel+0x43c/0x45c
[39775.029488] 
[39775.031010] ---[ end trace bfb26ef884ec6447 ]---

Attachments (0)

Change History (1)

comment:1 Changed 22 months ago by AndreiM

I think I found the culprit; upstream fix is missing from current 4.4 patches. I applied it here, and things (RNDIS tested) are stable now.

Last edited 22 months ago by AndreiM (previous) (diff)

Add Comment

Modify Ticket

Action
as new .
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.