Optimized build for the D-Link DIR-860L

And, it's up! Enjoy!
Testing wireless performance on r6150 with iperf3 running for 60 seconds yields the following results:

2.4 GHz band connecting at 144 Mbps:
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-60.00 sec 405 MBytes 56.7 Mbits/sec sender
[ 4] 0.00-60.00 sec 405 MBytes 56.7 Mbits/sec receiver

5 GHz band connecting at 866.7 Mbps:
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-60.00 sec 769 MBytes 107 Mbits/sec sender
[ 4] 0.00-60.00 sec 769 MBytes 107 Mbits/sec receiver

This is better then on r6009, which gave me 43.7 for 2.4 GHz band and 40.7 for 5 GHz band. Compared to r5442, which had 73.5 Mbits/sec for the 2.4GHz band and 57.4 Mbits/sec for the 5 GHz band, the 2.4 GHz band performance is a bit down but the 5 GHz band perfomance has doubled.

1 Like
> r6150:
> 5G 	(144 Mb/s ?)  69.7 Mbits/sec
> 144 Mb/s
> 2.4G	  (144 Mb/s )	64.9 Mbits/sec
> --------------------------------------------------------------
> r6022
> 5G              57.6 Mbits/sec
> 2.4G          51.4 Mbits/sec

r6150 is faster also on my side.
Some questions:
1)Bartvz do you have your iperf server on a PC connected through LAN to the router or do you have a iperf server installed directly on your router?
2) Why I have only 144 Mb/s for both 2.4G and 5G? I use my laptop in front of the router....I'll try more tests next week changing channels and settings in order to understand if it is a issue of my wan card/drivers or it is related to the router settings

Many thanks for these great releases!

  1. iperf3 is included in my builds. In a SSH terminal type" "iperf3 -s [options]"
  2. That's odd, could you post your wireless config (/etc/config/wireless)?

@Bartvz take a look at the very last comment in this thread: https://github.com/lede-project/source/pull/1269#issuecomment-367056477

Looks mighty interesting :slight_smile: Any chance we could see a build with offloading included? Really curious how it will affect WAN speeds :slight_smile:

1 Like

Actually, I believe these patches require the 4.14 kernel, which RAMIPS is not using yet at the moment. So it is a waiting game for now, I think.

The 4.14 kernel support is in the tree.
Building a k4.14 image for ramips is a one-line change.

Ok, the result image could be buggy, but that is why it called SNAPSHOT.

1 Like

Compiling a build with the 4.14 kernel and kmod-ipt-flow now, fingers crossed!

Edit: And it failed :confused: At the moment, I don't have time to figure out why but I'll see what I can do the rest of the week.

2 Likes

I had a successful build, but the router didn't survived the dirty sysupgrade.

No time for recover, yet.

Edit:
Built from be4781f5ee17a9facea6bb0cf1906269de788db8 with kmod-ipt-flow included (not as a module), the router boots, but it dies with orange power LED after failsafe.
Entering failsafe mode didn't helped me to access the router, need to flash squasfs-factory.bin through stock recovery.

Will try to build a k4.14 image from the branching point 9595a9e8d398476b1eaa5a541fb2c3bfece34587.

Wouldn't it be a good idea to first compile the master branch with kernel 4.14 just to check if ramips is properly working with the 4.14 kernel in the first place, without trying to include the offload stuff? This is the only 4.14 kernel commit for ramips: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=f4e5880d0f3496a3151fe24d87ca2d08d3403a83

And I am not entirely sure how well preliminary support is supposed to work. One step at a time :slight_smile:

Hahh! There is! :slight_smile:

Some k4.14 + MT7621 related commit just landed on master.

1 Like

Compiling again :slight_smile:

1 Like

Me too!
From current master + nbd's branch current head.

Successful boot:

root@OpenWrt:~# dmesg
[    0.000000] Linux version 4.14.20 (xabolcs@wsl-ubuntu) (gcc version 5.5.0 (OpenWrt GCC 5.5.0 r6010+10-32f120b)) #0 SMP Wed Feb 21 14:43:50 2018
[    0.000000] SoC Type: MediaTek MT7621 ver:1 eco:3
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001992f (MIPS 1004Kc)
[    0.000000] MIPS: machine is D-Link DIR-860L B1
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 08000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] VPE topology {2,2} total 4
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.000000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x0000000007ffffff]
[    0.000000]   HighMem  empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x0000000007ffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000007ffffff]
[    0.000000] On node 0 totalpages: 32768
[    0.000000] free_area_init_node: node 0, pgdat 80535a40, node_mem_map 81003000
[    0.000000]   Normal zone: 256 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 32768 pages, LIFO batch:7
[    0.000000] random: get_random_bytes called from start_kernel+0x90/0x4ac with crng_init=0
[    0.000000] percpu: Embedded 14 pages/cpu @8110f000 s26192 r8192 d22960 u57344
[    0.000000] pcpu-alloc: s26192 r8192 d22960 u57344 alloc=14*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 32512
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[    0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Writing ErrCtl register=0001b6e0
[    0.000000] Readback ErrCtl register=0001b6e0
[    0.000000] Memory: 123780K/131072K available (4151K kernel code, 233K rwdata, 952K rodata, 220K init, 268K bss, 7292K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] NR_IRQS: 256
[    0.000000] clocksource: GIC: mask: 0xffffffffffffffff max_cycles: 0xcaf478abb4, max_idle_ns: 440795247997 ns
[    0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 4343773742 ns
[    0.000009] sched_clock: 32 bits at 440MHz, resolution 2ns, wraps every 4880645118ns
[    0.015482] Calibrating delay loop... 586.13 BogoMIPS (lpj=2930688)
[    0.087812] pid_max: default: 32768 minimum: 301
[    0.097128] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.110145] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.125743] Hierarchical SRCU implementation.
[    0.135105] smp: Bringing up secondary CPUs ...
[    6.173504] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    6.173513] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    6.173524] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    6.173652] CPU1 revision is: 0001992f (MIPS 1004Kc)
[    0.204543] Synchronize counters for CPU 1: done.
[    6.301553] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    6.301561] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    6.301568] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    6.301635] CPU2 revision is: 0001992f (MIPS 1004Kc)
[    0.324962] Synchronize counters for CPU 2: done.
[    6.413964] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    6.413972] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    6.413978] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    6.414046] CPU3 revision is: 0001992f (MIPS 1004Kc)
[    0.444531] Synchronize counters for CPU 3: done.
[    0.504125] smp: Brought up 1 node, 4 CPUs
[    0.515547] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.535006] futex hash table entries: 1024 (order: 3, 32768 bytes)
[    0.547434] pinctrl core: initialized pinctrl subsystem
[    0.558233] NET: Registered protocol family 16
[    0.567257] random: fast init done
[    0.577076] FPU Affinity set after 11720 emulations
[    0.577687] pull PCIe RST: RALINK_RSTCTRL = 0
[    0.886584] release PCIe RST: RALINK_RSTCTRL = 7000000
[    0.896651] ***** Xtal 40MHz *****
[    0.903380] release PCIe RST: RALINK_RSTCTRL = 7000000
[    0.913583] Port 0 N_FTS = 1b105000
[    0.920485] Port 1 N_FTS = 1b105000
[    0.927409] Port 2 N_FTS = 1b102800
[    2.085892] PCIE2 no card, disable it(RST&CLK)
[    2.094577]  -> 21007f2
[    2.099400] PCIE0 enabled
[    2.104600] PCIE1 enabled
[    2.109779] PCI host bridge /pcie@1e140000 ranges:
[    2.119301]  MEM 0x0000000060000000..0x000000006fffffff
[    2.129666]   IO 0x000000001e160000..0x000000001e16ffff
[    2.140031] PCI coherence region base: 0x87c2dce8, mask/settings: 0x60000000
[    2.161106] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    2.172359] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    2.183539] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    2.195761] PCI host bridge to bus 0000:00
[    2.203771] pci_bus 0000:00: root bus resource [mem 0x60000000-0x6fffffff]
[    2.217444] pci_bus 0000:00: root bus resource [io  0xffffffff]
[    2.229175] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0]
[    2.242672] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[    2.258422] pci 0000:00:00.0: [0e8d:0801] type 01 class 0x060400
[    2.258461] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x7fffffff]
[    2.258474] pci 0000:00:00.0: reg 0x14: [mem 0x60400000-0x6040ffff]
[    2.258537] pci 0000:00:00.0: supports D1
[    2.258547] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[    2.258774] pci 0000:00:01.0: [0e8d:0801] type 01 class 0x060400
[    2.258803] pci 0000:00:01.0: reg 0x10: [mem 0x00000000-0x7fffffff]
[    2.258816] pci 0000:00:01.0: reg 0x14: [mem 0x60410000-0x6041ffff]
[    2.258870] pci 0000:00:01.0: supports D1
[    2.258879] pci 0000:00:01.0: PME# supported from D0 D1 D3hot
[    2.259279] pci 0000:01:00.0: [14c3:7662] type 00 class 0x028000
[    2.259331] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit]
[    2.259375] pci 0000:01:00.0: reg 0x30: [mem 0x00000000-0x0000ffff pref]
[    2.259467] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
[    2.259648] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    2.259819] pci 0000:02:00.0: [14c3:7662] type 00 class 0x028000
[    2.259870] pci 0000:02:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit]
[    2.259915] pci 0000:02:00.0: reg 0x30: [mem 0x00000000-0x0000ffff pref]
[    2.260007] pci 0000:02:00.0: PME# supported from D0 D3hot D3cold
[    2.260184] pci_bus 0000:02: busn_res: [bus 02-ff] end is updated to 02
[    2.260201] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 02
[    2.260257] pci 0000:00:00.0: BAR 0: no space for [mem size 0x80000000]
[    2.273306] pci 0000:00:00.0: BAR 0: failed to assign [mem size 0x80000000]
[    2.287104] pci 0000:00:01.0: BAR 0: no space for [mem size 0x80000000]
[    2.300226] pci 0000:00:01.0: BAR 0: failed to assign [mem size 0x80000000]
[    2.314062] pci 0000:00:00.0: BAR 8: assigned [mem 0x60000000-0x600fffff]
[    2.327534] pci 0000:00:00.0: BAR 9: assigned [mem 0x60100000-0x601fffff pref]
[    2.341874] pci 0000:00:01.0: BAR 8: assigned [mem 0x60200000-0x602fffff]
[    2.355358] pci 0000:00:01.0: BAR 9: assigned [mem 0x60300000-0x603fffff pref]
[    2.369695] pci 0000:00:00.0: BAR 1: assigned [mem 0x60400000-0x6040ffff]
[    2.383187] pci 0000:00:01.0: BAR 1: assigned [mem 0x60410000-0x6041ffff]
[    2.396662] pci 0000:01:00.0: BAR 0: assigned [mem 0x60000000-0x600fffff 64bit]
[    2.411178] pci 0000:01:00.0: BAR 6: assigned [mem 0x60100000-0x6010ffff pref]
[    2.425517] pci 0000:00:00.0: PCI bridge to [bus 01]
[    2.435343] pci 0000:00:00.0:   bridge window [mem 0x60000000-0x600fffff]
[    2.448839] pci 0000:00:00.0:   bridge window [mem 0x60100000-0x601fffff pref]
[    2.463186] pci 0000:02:00.0: BAR 0: assigned [mem 0x60200000-0x602fffff 64bit]
[    2.477711] pci 0000:02:00.0: BAR 6: assigned [mem 0x60300000-0x6030ffff pref]
[    2.492035] pci 0000:00:01.0: PCI bridge to [bus 02]
[    2.501874] pci 0000:00:01.0:   bridge window [mem 0x60200000-0x602fffff]
[    2.515365] pci 0000:00:01.0:   bridge window [mem 0x60300000-0x603fffff pref]
[    2.530839] clocksource: Switched to clocksource GIC
[    2.542050] NET: Registered protocol family 2
[    2.551291] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    2.565023] TCP bind hash table entries: 1024 (order: 1, 8192 bytes)
[    2.577635] TCP: Hash tables configured (established 1024 bind 1024)
[    2.590360] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    2.601883] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    2.614509] NET: Registered protocol family 1
[    2.623092] PCI: CLS 80 bytes, default 32
[    2.860788] 4 CPUs re-calibrate udelay(lpj = 2924544)
[    2.871867] Crashlog allocated RAM at address 0x3f00000
[    2.882317] workingset: timestamp_bits=30 max_order=15 bucket_order=0
[    2.900458] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    2.911937] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    2.934384] io scheduler noop registered
[    2.942072] io scheduler deadline registered (default)
[    2.953165] Serial: 8250/16550 driver, 3 ports, IRQ sharing disabled
[    2.966901] console [ttyS0] disabled
[    2.973936] 1e000c00.uartlite: ttyS0 at MMIO 0x1e000c00 (irq = 18, base_baud = 3125000) is a 16550A
[    2.991883] console [ttyS0] enabled
[    3.005672] bootconsole [early0] disabled
[    3.022134] cacheinfo: Failed to find cpu0 device node
[    3.032385] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    3.045084] MediaTek Nand driver init, version v2.1 Fix AHB virt2phys error
[    3.059292] spi-mt7621 1e000b00.spi: sys_freq: 50000000
[    3.070506] m25p80 spi0.0: using chunked io (size=32)
[    3.080609] m25p80 spi0.0: mx25l12805d (16384 Kbytes)
[    3.090747] 6 ofpart partitions found on MTD device spi0.0
[    3.101668] Creating 6 MTD partitions on "spi0.0":
[    3.111214] 0x000000000000-0x000000030000 : "u-boot"
[    3.122003] 0x000000030000-0x000000034000 : "u-boot-env"
[    3.133423] 0x000000034000-0x000000038000 : "radio"
[    3.143974] 0x000000038000-0x000000040000 : "factory"
[    3.154884] 0x000000040000-0x000000050000 : "defaults"
[    3.165964] 0x000000050000-0x000001000000 : "firmware"
[    3.238177] 2 seama-fw partitions found on MTD device firmware
[    3.249809] 0x000000050040-0x000000200000 : "kernel"
[    3.260556] 0x000000200000-0x000001000000 : "rootfs"
[    3.271277] mtd: device 7 (rootfs) set to be root filesystem
[    3.282688] 1 squashfs-split partitions found on MTD device rootfs
[    3.295011] 0x0000004c0000-0x000001000000 : "rootfs_data"
[    3.307074] libphy: Fixed MDIO Bus: probed
[    3.382611] mtk_soc_eth 1e100000.ethernet: generated random MAC address ae:f4:da:a8:f7:39
[    3.399032] libphy: mdio: probed
[    4.804926] mtk_soc_eth 1e100000.ethernet: loaded mt7530 driver
[    4.817320] mtk_soc_eth 1e100000.ethernet eth0: mediatek frame engine at 0xbe100000, irq 20
[    4.835905] NET: Registered protocol family 10
[    4.846278] Segment Routing with IPv6
[    4.853732] NET: Registered protocol family 17
[    4.862648] 8021q: 802.1Q VLAN Support v1.8
[    4.873100] hctosys: unable to open rtc device (rtc0)
[    4.890246] VFS: Mounted root (squashfs filesystem) readonly on device 31:7.
[    4.904843] Freeing unused kernel memory: 220K
[    4.913713] This architecture does not have kernel memory protection.
[    5.225759] random: crng init done
[    5.591808] init: Console is alive
[    5.598810] init: - watchdog -
[    6.086932] mtk_soc_eth 1e100000.ethernet eth0: port 0 link up
[    6.450750] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    6.592498] usbcore: registered new interface driver usbfs
[    6.603535] usbcore: registered new interface driver hub
[    6.614249] usbcore: registered new device driver usb
[    6.627973] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    6.641978] ehci-platform: EHCI generic platform driver
[    6.654572] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    6.681117] init: - preinit -
[   10.869355] jffs2_scan_eraseblock(): End of filesystem marker found at 0x10000
[   10.883784] jffs2_build_filesystem(): unlocking the mtd device...
[   10.883790] done.
[   10.899894] jffs2_build_filesystem(): erasing all blocks after the end marker...
[   61.170317] done.
[   61.189058] jffs2: notice: (431) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found.
[   61.221275] mount_root: overlay filesystem has not been fully initialized yet
[   61.236790] mount_root: switching to jffs2 overlay
[   61.265068] overlayfs: upper fs does not support tmpfile.
[   61.644386] urandom-seed: Seed file not found (/etc/urandom.seed)
[   61.684819] procd: - early -
[   61.690641] procd: - watchdog -
[   62.330979] procd: - watchdog -
[   62.337524] procd: - ubus -
[   62.424300] procd: - init -
[   62.767824] kmodloader: loading kernel modules from /etc/modules.d/*
[   62.785079] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   63.136755] Loading modules backported from Linux version wt-2017-11-01-0-gfe248fc2c180
[   63.152722] Backport generated by backports.git v4.14-rc2-1-31-g86cf0e5d
[   63.168298] ip_tables: (C) 2000-2006 Netfilter Core Team
[   63.505050] nf_conntrack version 0.5.0 (2048 buckets, 8192 max)
[   63.718304] Netfilter messages via NETLINK v0.30.
[   63.738561] xt_time: kernel timezone is -0000
[   63.967059] bus=0x1, slot = 0x0, irq=0xff
[   63.975228] mt76x2e 0000:01:00.0: ASIC revision: 76120044
[   64.010864] mt76x2e 0000:01:00.0: ROM patch already applied
[   64.023024] mt76x2e 0000:01:00.0: Firmware Version: 0.0.00
[   64.033967] mt76x2e 0000:01:00.0: Build: 1
[   64.042114] mt76x2e 0000:01:00.0: Build Time: 201507311614____
[   64.080859] mt76x2e 0000:01:00.0: Firmware running!
[   64.091907] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   64.096061] bus=0x2, slot = 0x1, irq=0xff
[   64.104278] mt76x2e 0000:02:00.0: ASIC revision: 76020044
[   64.140918] mt76x2e 0000:02:00.0: ROM patch already applied
[   64.152978] mt76x2e 0000:02:00.0: Firmware Version: 0.0.00
[   64.163969] mt76x2e 0000:02:00.0: Build: 1
[   64.172159] mt76x2e 0000:02:00.0: Build Time: 201507311614____
[   64.210922] mt76x2e 0000:02:00.0: Firmware running!
[   64.222061] ieee80211 phy1: Selected rate control algorithm 'minstrel_ht'
[   64.234013] nf_tables: (c) 2007-2009 Patrick McHardy <kaber@trash.net>
[   64.264748] PPP generic driver version 2.4.2
[   64.274895] NET: Registered protocol family 24
[   64.306848] kmodloader: done loading kernel modules from /etc/modules.d/*
[   72.744066] device eth0 entered promiscuous mode
[   72.755164] br-lan: port 1(eth0.1) entered blocking state
[   72.766229] br-lan: port 1(eth0.1) entered disabled state
[   72.777443] device eth0.1 entered promiscuous mode
[   72.793729] br-lan: port 1(eth0.1) entered blocking state
[   72.804513] br-lan: port 1(eth0.1) entered forwarding state
[   72.816063] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[   73.741163] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
[   75.933387] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   76.277371] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[   76.290605] br-lan: port 2(wlan0) entered blocking state
[   76.301220] br-lan: port 2(wlan0) entered disabled state
[   76.312304] device wlan0 entered promiscuous mode
[   76.322275] br-lan: port 3(wlan1) entered blocking state
[   76.332947] br-lan: port 3(wlan1) entered disabled state
[   76.343974] device wlan1 entered promiscuous mode
[   77.333237] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   77.346248] br-lan: port 2(wlan0) entered blocking state
[   77.356854] br-lan: port 2(wlan0) entered forwarding state
[   78.425837] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
[   78.438805] br-lan: port 3(wlan1) entered blocking state
[   78.449412] br-lan: port 3(wlan1) entered forwarding state

lsmod:

root@OpenWrt:~# lsmod
cfg80211              215476  5 rt2x00lib,mt76x2e,mt7603e,mt76,mac80211
compat                   699  3 rt2800pci,mac80211,cfg80211
crc_ccitt               1067  2 rt2800lib,ppp_async
crc_itu_t               1067  0
eeprom_93cx6            2314  1 rt2800pci
ehci_hcd               33271  1 ehci_platform
ehci_platform           4592  0
gpio_button_hotplug     6288  0
ip_tables              10253  3 iptable_nat,iptable_mangle,iptable_filter
ip6_tables              9953  2 ip6table_mangle,ip6table_filter
ip6t_REJECT             1008  2
ip6table_filter          720  1
ip6table_mangle         1168  1
ipt_MASQUERADE           752  1
ipt_REJECT               976  2
iptable_filter           720  1
iptable_mangle           944  1
iptable_nat              784  1
leds_gpio               2864  0
mac80211              418687  6 rt2800lib,rt2x00pci,rt2x00lib,mt76x2e,mt7603e,mt76
mt76                   19299  2 mt76x2e,mt7603e
mt7603e                30025  0
mt76x2e                43699  0
nf_conntrack           59624 14 nft_redir,nft_ct,nf_conntrack_ipv6,ipt_MASQUERADE,xt_state,xt_nat,xt_conntrack,xt_REDIRECT,nf_nat_masquerade_ipv4,nf_conntrack_ipv4,nf_nat_ipv4,nf_nat,nf_flow_table,nf_conntrack_rtcache
nf_conntrack_ipv4       4208 11
nf_conntrack_ipv6       4288  5
nf_conntrack_rtcache    2640  0
nf_defrag_ipv4          1078  1 nf_conntrack_ipv4
nf_defrag_ipv6         13134  1 nf_conntrack_ipv6
nf_flow_table          12504  2 xt_FLOWOFFLOAD,nf_flow_table_hw
nf_flow_table_hw        1728  0
nf_log_common           2767  2 nf_log_ipv4,nf_log_ipv6
nf_log_ipv4             3376  0
nf_log_ipv6             3504  0
nf_nat                 13003  4 xt_nat,nf_nat_redirect,nf_nat_masquerade_ipv4,nf_nat_ipv4
nf_nat_ipv4             3473  1 iptable_nat
nf_nat_masquerade_ipv4    1660  1 ipt_MASQUERADE
nf_nat_redirect         1275  1 xt_REDIRECT
nf_reject_ipv4          2179  3 nft_reject_ipv4,nft_reject_inet,ipt_REJECT
nf_reject_ipv6          2536  3 nft_reject_ipv6,nft_reject_inet,ip6t_REJECT
nf_tables              66507 20 nft_set_rbtree,nft_set_hash,nft_reject_ipv6,nft_reject_ipv4,nft_reject_inet,nft_reject,nft_redir,nft_quota,nft_numgen,nft_meta,nft_log,nft_limit,nft_exthdr,nft_ct,nft_counter,nft_chain_route_ipv6,nft_chain_route_ipv4,nf_tables_ipv6,nf_tables_ipv4,nf_tables_inet
nf_tables_inet           784  0
nf_tables_ipv4           656  0
nf_tables_ipv6           688  0
nfnetlink               4343  1 nf_tables
nft_chain_route_ipv4     848  0
nft_chain_route_ipv6     976  0
nft_counter             2128  0
nft_ct                  4240  0
nft_exthdr              3248  0
nft_limit               3344  0
nft_log                 1648  0
nft_meta                3863  0
nft_numgen              1728  0
nft_quota               1840  0
nft_redir               1106  0
nft_reject              1121  3 nft_reject_ipv6,nft_reject_ipv4,nft_reject_inet
nft_reject_inet         1168  0
nft_reject_ipv4          688  0
nft_reject_ipv6          688  0
nft_set_hash           13488  0
nft_set_rbtree          2480  0
nls_base                5360  1 usbcore
ppp_async               6656  0
ppp_generic            22146  3 pppoe,ppp_async,pppox
pppoe                   8368  0
pppox                   1418  1 pppoe
rt2800lib              88559  2 rt2800pci,rt2800mmio
rt2800mmio              6409  1 rt2800pci
rt2800pci               3616  0
rt2x00lib              35360  5 rt2800pci,rt2800mmio,rt2800lib,rt2x00pci,rt2x00mmio
rt2x00mmio              2448  2 rt2800pci,rt2800mmio
rt2x00pci               1746  1 rt2800pci
slhc                    4539  1 ppp_generic
usb_common              2583  1 usbcore
usbcore               126221  2 ehci_platform,ehci_hcd
x_tables               13674 23 ipt_REJECT,ipt_MASQUERADE,xt_time,xt_tcpudp,xt_state,xt_nat,xt_multiport,xt_mark,xt_mac,xt_limit,xt_conntrack,xt_comment,xt_TCPMSS,xt_REDIRECT,xt_LOG,xt_FLOWOFFLOAD,iptable_mangle,iptable_filter,ip_tables,ip6t_REJECT,ip6table_mangle,ip6table_filter,ip6_tables
xt_FLOWOFFLOAD          2400  0
xt_LOG                   848  0
xt_REDIRECT              784  0
xt_TCPMSS               2800  2
xt_comment               560125
xt_conntrack            2288 14
xt_limit                1104 20
xt_mac                   688  0
xt_mark                  752  0
xt_multiport            1328  0
xt_nat                  1648  0
xt_state                 752  0
xt_tcpudp               1872 10
xt_time                 1680  0

I didn't tested the flow module now. I'm just happy that the router boots and the module is loaded. :smiley:

Very cool! Please let me know once you get the offloading working :slight_smile:

The patches have hit the master branch now :slight_smile:

Yup + this commit. My last attempt failed (again) but I have time to look into it tomorrow. Hopefully I'll get it to build and hopefully flow offload will play nice with SQM.

How do I change it to kernel 4.14? Would like to try and compile it myself as well :slight_smile:

sed -i 's/=4.9/=4.14/' target/linux/ramips/Makefile

What are the kernel modules that need to be included? @nbd mentioned kmod-ipt-flow, but in menuconfig I am only able to find kmod-ipt-offload, kmod-nf-flow and kmod-nft-offload.

To my knowledge you will only need kmod-nf-flow for Flow Offload

I renamed the package. You need kmod-ipt-offload, which selects kmod-nf-flow

1 Like