#13072: ag71xx WNDR3700 slow vlan routing
-----------------------+--------------------------------------------
  Reporter:  severn@…  |      Owner:  developers
      Type:  defect    |     Status:  reopened
  Priority:  normal    |  Milestone:  Barrier Breaker 14.07
 Component:  kernel    |    Version:  Attitude Adjustment 12.09 Beta
Resolution:            |   Keywords:
-----------------------+--------------------------------------------

Comment (by severn):

 I'm at a loss as to why it apparently works for nbd and me all the time,
 only somewhat works for robnitro, and doesn't work for anon...

 I've tested with r42328 and my original patch - same behaviour:
 - VLAN routing (in eth0.x out eth0.y), (in eth1.x out eth1.y)
 - "normal" routing in eth0.x out eth1, in eth1 out eth0.x
 - with DHCP, over PPPoE, PPPoE over VLAN (on eth0.x or eth1)
 - saturating the CPU with iperf TCP mode or UDP mode, simultaneous
 bidirectional or just normal 1 direction upload
 - speed test sites, regular browsing, etc.

 ...for the last few hours and I can't seem to reproduce the issues you
 guys see.

 In all cases, I had bridges on the eth0.x with a wifi, no bridges on the
 eth1.x side, and I'm routing between interfaces (not bridging).


 I have a laptop with gige on one port, and a managed switch on the other
 port (either WAN/eth1 port or another vlan on a switch port) - tried
 setting one or both to auto-negotiate 100meg full, or auto-negotiate gig
 full, doesn't seem to make a difference.

 1. Can you guys post full 'dmesg' with or without patch?

 2. Post 'ifconfig' before and after the tx timeout error?

 3. Can you tell me anything about your network setup (speed, what's on
 each port, if you're auto-negotiating or forced speeds, etc.) and what
 kind of traffic you're passing that's causes the error to show up?

 4. Can you guys try using r42328 but change ag71xx.h AG71XX_TX_RING_SPLIT
 to some other numbers, e.g. 128, 512, 1024?

 5. Can you try commenting out lines 707 and 708 from r42328 and see if it
 makes a difference?

 This is my dmesg for comparison -
 {{{
 [    0.000000] MyLoader: sysp=aaaa5554, boardp=aaaa5554, parts=aaaa5554
 [    0.000000] bootconsole [early0] enabled
 [    0.000000] CPU revision is: 00019374 (MIPS 24Kc)
 [    0.000000] SoC: Atheros AR7161 rev 2
 [    0.000000] Clocks: CPU:680.000MHz, DDR:340.000MHz, AHB:170.000MHz,
 Ref:40.000MHz
 [    0.000000] Determined physical RAM map:
 [    0.000000]  memory: 04000000 @ 00000000 (usable)
 [    0.000000] Initrd not found or empty - disabling initrd
 [    0.000000] Zone ranges:
 [    0.000000]   Normal   [mem 0x00000000-0x03ffffff]
 [    0.000000] Movable zone start for each node
 [    0.000000] Early memory node ranges
 [    0.000000]   node   0: [mem 0x00000000-0x03ffffff]
 [    0.000000] On node 0 totalpages: 16384
 [    0.000000] free_area_init_node: node 0, pgdat 803109b0, node_mem_map
 81000000
 [    0.000000]   Normal zone: 128 pages used for memmap
 [    0.000000]   Normal zone: 0 pages reserved
 [    0.000000]   Normal zone: 16384 pages, LIFO batch:3
 [    0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32
 bytes.
 [    0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases,
 linesize 32 bytes
 [    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
 [    0.000000] pcpu-alloc: [0] 0
 [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.
 Total pages: 16256
 [    0.000000] Kernel command line:  board=WNDR3700 console=ttyS0,115200
 mtdparts=spi0.0:320k(u-boot)ro,128k(u-boot-
 env)ro,15872k(firmware),64k(art)ro rootfstype=squashfs,jffs2 noinitrd
 [    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
 [    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768
 bytes)
 [    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384
 bytes)
 [    0.000000] Writing ErrCtl register=00000000
 [    0.000000] Readback ErrCtl register=00000000
 [    0.000000] Memory: 60888k/65536k available (2239k kernel code, 4648k
 reserved, 603k data, 228k init, 0k highmem)
 [    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
 [    0.000000] NR_IRQS:51
 [    0.060000] Calibrating delay loop... 452.19 BogoMIPS (lpj=2260992)
 [    0.060000] pid_max: default: 32768 minimum: 301
 [    0.060000] Mount-cache hash table entries: 512
 [    0.070000] NET: Registered protocol family 16
 [    0.070000] MIPS: machine is NETGEAR WNDR3700/WNDR3800/WNDRMAC
 [    2.680000] registering PCI controller with io_map_base unset
 [    2.690000] bio: create slab <bio-0> at 0
 [    2.690000] PCI host bridge to bus 0000:00
 [    2.700000] pci_bus 0000:00: root bus resource [mem
 0x10000000-0x16ffffff]
 [    2.700000] pci_bus 0000:00: root bus resource [io  0x0000]
 [    2.710000] pci_bus 0000:00: No busn resource found for root bus, will
 use [bus 00-ff]
 [    2.710000] pci 0000:00:11.0: [168c:ff1d] type 00 class 0x020000
 [    2.710000] pci 0000:00:11.0: fixup device configuration
 [    2.720000] pci 0000:00:11.0: reg 10: [mem 0x00000000-0x0000ffff]
 [    2.720000] pci 0000:00:11.0: PME# supported from D0 D3hot
 [    2.720000] pci 0000:00:12.0: [168c:ff1d] type 00 class 0x020000
 [    2.720000] pci 0000:00:12.0: fixup device configuration
 [    2.720000] pci 0000:00:12.0: reg 10: [mem 0x00000000-0x0000ffff]
 [    2.720000] pci 0000:00:12.0: PME# supported from D0 D3hot
 [    2.720000] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00
 [    2.720000] pci 0000:00:11.0: BAR 0: assigned [mem
 0x10000000-0x1000ffff]
 [    2.730000] pci 0000:00:12.0: BAR 0: assigned [mem
 0x10010000-0x1001ffff]
 [    2.730000] pci 0000:00:11.0: using irq 40 for pin 1
 [    2.740000] pci 0000:00:12.0: using irq 41 for pin 1
 [    2.740000] Switching to clocksource MIPS
 [    2.750000] NET: Registered protocol family 2
 [    2.750000] TCP established hash table entries: 512 (order: 0, 4096
 bytes)
 [    2.750000] TCP bind hash table entries: 512 (order: -1, 2048 bytes)
 [    2.760000] TCP: Hash tables configured (established 512 bind 512)
 [    2.760000] TCP: reno registered
 [    2.760000] UDP hash table entries: 256 (order: 0, 4096 bytes)
 [    2.770000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
 [    2.780000] NET: Registered protocol family 1
 [    2.780000] PCI: CLS 0 bytes, default 32
 [    2.790000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
 [    2.800000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME)
 (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
 [    2.810000] msgmni has been set to 118
 [    2.810000] io scheduler noop registered
 [    2.820000] io scheduler deadline registered (default)
 [    2.820000] Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
 [    2.850000] serial8250.0: ttyS0 at MMIO 0x18020000 (irq = 11) is a
 16550A
 [    2.860000] console [ttyS0] enabled, bootconsole disabled
 [    2.870000] ath79-spi ath79-spi: master is unqueued, this is deprecated
 [    2.880000] m25p80 spi0.0: found mx25l12805d, expected m25p80
 [    2.880000] m25p80 spi0.0: mx25l12805d (16384 Kbytes)
 [    2.890000] 4 cmdlinepart partitions found on MTD device spi0.0
 [    2.890000] Creating 4 MTD partitions on "spi0.0":
 [    2.900000] 0x000000000000-0x000000050000 : "u-boot"
 [    2.910000] 0x000000050000-0x000000070000 : "u-boot-env"
 [    2.910000] 0x000000070000-0x000000ff0000 : "firmware"
 [    2.920000] 2 netgear-fw partitions found on MTD device firmware
 [    2.920000] 0x000000070000-0x000000175440 : "kernel"
 [    2.930000] mtd: partition "kernel" must either start or end on erase
 block boundary or be smaller than an erase block -- forcing read-only
 [    2.940000] 0x000000175440-0x000000ff0000 : "rootfs"
 [    2.950000] mtd: partition "rootfs" must either start or end on erase
 block boundary or be smaller than an erase block -- forcing read-only
 [    2.960000] mtd: device 4 (rootfs) set to be root filesystem
 [    2.970000] 1 squashfs-split partitions found on MTD device rootfs
 [    2.970000] 0x0000003a0000-0x000000ff0000 : "rootfs_data"
 [    2.980000] 0x000000ff0000-0x000001000000 : "art"
 [    2.990000] Realtek RTL8366S ethernet switch driver version 0.2.2
 [    2.990000] rtl8366s rtl8366s: using GPIO pins 5 (SDA) and 7 (SCK)
 [    3.000000] rtl8366s rtl8366s: RTL8366 ver. 1 chip found
 [    3.040000] libphy: rtl8366s: probed
 [    3.350000] eth0: Atheros AG71xx at 0xb9000000, irq 4, mode:RGMII
 [    3.650000] ag71xx ag71xx.1: connected to PHY at rtl8366s:04
 [uid=001cc960, driver=Generic PHY]
 [    3.660000] eth1: Atheros AG71xx at 0xba000000, irq 5, mode:RGMII
 [    3.670000] TCP: cubic registered
 [    3.670000] NET: Registered protocol family 17
 [    3.680000] 8021q: 802.1Q VLAN Support v1.8
 [    3.690000] VFS: Mounted root (squashfs filesystem) readonly on device
 31:4.
 [    3.700000] Freeing unused kernel memory: 228K (80327000 - 80360000)
 [    5.690000] usbcore: registered new interface driver usbfs
 [    5.690000] usbcore: registered new interface driver hub
 [    5.700000] usbcore: registered new device driver usb
 [    5.710000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
 [    5.710000] ehci-platform: EHCI generic platform driver
 [    5.720000] ehci-platform ehci-platform: EHCI Host Controller
 [    5.720000] ehci-platform ehci-platform: new USB bus registered,
 assigned bus number 1
 [    5.730000] ehci-platform ehci-platform: irq 3, io mem 0x1b000000
 [    5.760000] ehci-platform ehci-platform: USB 2.0 started, EHCI 1.00
 [    5.760000] hub 1-0:1.0: USB hub found
 [    5.770000] hub 1-0:1.0: 2 ports detected
 [    5.770000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
 [    5.780000] ohci-platform ohci-platform: Generic Platform OHCI
 Controller
 [    5.780000] ohci-platform ohci-platform: new USB bus registered,
 assigned bus number 2
 [    5.790000] ohci-platform ohci-platform: irq 14, io mem 0x1c000000
 [    5.860000] hub 2-0:1.0: USB hub found
 [    5.860000] hub 2-0:1.0: 2 ports detected
 [    6.210000] ar71xx: pll_reg 0xb8050010: 0x11110000
 [    6.210000] eth0: link up (1000Mbps/Full duplex)
 [    9.460000] jffs2: notice: (327) jffs2_build_xattr_subsystem: complete
 building xattr subsystem, 20 of xdatum (1 unchecked, 19 orphan) and 33 of
 xref (0 dead, 19 orphan) found.
 [    9.500000] eth0: link down
 [   10.680000] NET: Registered protocol family 10
 [   10.690000] nf_conntrack version 0.5.0 (954 buckets, 3816 max)
 [   10.700000] ip6_tables: (C) 2000-2006 Netfilter Core Team
 [   10.710000] Loading modules backported from Linux version
 master-2014-05-22-0-gf2032ea
 [   10.720000] Backport generated by backports.git
 backports-20140320-37-g5c33da0
 [   10.730000] ip_tables: (C) 2000-2006 Netfilter Core Team
 [   10.770000] xt_time: kernel timezone is -0000
 [   10.790000] cfg80211: Calling CRDA to update world regulatory domain
 [   10.790000] cfg80211: World regulatory domain updated:
 [   10.800000] cfg80211:  DFS Master region: unset
 [   10.800000] cfg80211:   (start_freq - end_freq @ bandwidth),
 (max_antenna_gain, max_eirp), (dfs_cac_time)
 [   10.810000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A,
 2000 mBm), (N/A)
 [   10.820000] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A,
 2000 mBm), (N/A)
 [   10.830000] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A,
 2000 mBm), (N/A)
 [   10.840000] cfg80211:   (5170000 KHz - 5250000 KHz @ 160000 KHz), (N/A,
 2000 mBm), (N/A)
 [   10.840000] cfg80211:   (5250000 KHz - 5330000 KHz @ 160000 KHz), (N/A,
 2000 mBm), (0 s)
 [   10.850000] cfg80211:   (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A,
 2000 mBm), (0 s)
 [   10.860000] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A,
 2000 mBm), (N/A)
 [   10.870000] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz),
 (N/A, 0 mBm), (N/A)
 [   10.900000] PPP generic driver version 2.4.2
 [   10.930000] NET: Registered protocol family 24
 [   10.960000] PCI: Enabling device 0000:00:11.0 (0000 -> 0002)
 [   10.970000] ath: EEPROM regdomain: 0x0
 [   10.970000] ath: EEPROM indicates default country code should be used
 [   10.970000] ath: doing EEPROM country->regdmn map search
 [   10.970000] ath: country maps to regdmn code: 0x3a
 [   10.970000] ath: Country alpha2 being used: US
 [   10.970000] ath: Regpair used: 0x3a
 [   10.990000] ieee80211 phy0: Selected rate control algorithm
 'minstrel_ht'
 [   11.000000] ieee80211 phy0: Atheros AR9280 Rev:2 mem=0xb0000000, irq=40
 [   11.010000] cfg80211: Calling CRDA for country: US
 [   11.010000] cfg80211: Regulatory domain changed to country: US
 [   11.020000] cfg80211:  DFS Master region: FCC
 [   11.020000] cfg80211:   (start_freq - end_freq @ bandwidth),
 (max_antenna_gain, max_eirp), (dfs_cac_time)
 [   11.030000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A,
 3000 mBm), (N/A)
 [   11.040000] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz), (N/A,
 1700 mBm), (N/A)
 [   11.050000] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz), (N/A,
 2300 mBm), (0 s)
 [   11.050000] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A,
 3000 mBm), (N/A)
 [   11.060000] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz),
 (N/A, 4000 mBm), (N/A)
 [   11.070000] PCI: Enabling device 0000:00:12.0 (0000 -> 0002)
 [   11.080000] ath: EEPROM regdomain: 0x0
 [   11.080000] ath: EEPROM indicates default country code should be used
 [   11.080000] ath: doing EEPROM country->regdmn map search
 [   11.080000] ath: country maps to regdmn code: 0x3a
 [   11.080000] ath: Country alpha2 being used: US
 [   11.080000] ath: Regpair used: 0x3a
 [   11.120000] ieee80211 phy1: Selected rate control algorithm
 'minstrel_ht'
 [   11.120000] ieee80211 phy1: Atheros AR9280 Rev:2 mem=0xb0010000, irq=41
 [   17.420000] ar71xx: pll_reg 0xb8050010: 0x11110000
 [   17.420000] eth0: link up (1000Mbps/Full duplex)
 [   17.420000] device eth0.1 entered promiscuous mode
 [   17.430000] device eth0 entered promiscuous mode
 [   17.440000] br-lan: port 1(eth0.1) entered forwarding state
 [   17.440000] br-lan: port 1(eth0.1) entered forwarding state
 [   17.460000] device eth0.2 entered promiscuous mode
 [   17.480000] br-lan2: port 1(eth0.2) entered forwarding state
 [   17.480000] br-lan2: port 1(eth0.2) entered forwarding state
 [   17.520000] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
 [   18.370000] cfg80211: Calling CRDA for country: CA
 [   18.370000] cfg80211: Regulatory domain changed to country: CA
 [   18.380000] cfg80211:  DFS Master region: FCC
 [   18.380000] cfg80211:   (start_freq - end_freq @ bandwidth),
 (max_antenna_gain, max_eirp), (dfs_cac_time)
 [   18.390000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A,
 3000 mBm), (N/A)
 [   18.400000] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz), (N/A,
 1700 mBm), (N/A)
 [   18.410000] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz), (N/A,
 2400 mBm), (0 s)
 [   18.410000] cfg80211:   (5490000 KHz - 5730000 KHz @ 80000 KHz), (N/A,
 2400 mBm), (0 s)
 [   18.420000] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A,
 3000 mBm), (N/A)
 [   19.130000] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
 [   19.160000] device wlan1 entered promiscuous mode
 [   19.160000] br-lan: port 2(wlan1) entered forwarding state
 [   19.170000] br-lan: port 2(wlan1) entered forwarding state
 }}}

--
Ticket URL: <https://dev.openwrt.org/ticket/13072#comment:43>
OpenWrt <http://openwrt.org>
Opensource Wireless Router Technology
_______________________________________________
openwrt-tickets mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-tickets

Reply via email to