Go to file
Sven Eckelmann d6bbfc8b52 ipq40xx: essedma: Disable TCP segmentation offload for IPv6
It was noticed that the the whole MAC can hang when transferring data from
one ar40xx port (WAN ports) to the CPU and from the CPU back to another
ar40xx port (LAN ports). The CPU was doing only NATing in that process.

Usually, the problem first starts with a simple data corruption:

  $ wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.4.0-amd64-netinst.iso -O /dev/null
  ...
  Connecting to saimei.ftp.acc.umu.se (saimei.ftp.acc.umu.se)|2001:6b0:19::138|:443... connected.
  ...
  Read  error at byte 48807936/352321536 (Decryption has failed.). Retrying.

But after a short while, the whole MAC will stop to react. No traffic can
be transported anymore from the CPU port from/to the AR40xx PHY/switch and
the MAC has to be resetted.

The whole problem can be avoided by disabling the TSO for IPv6 for this
ethernet MAC driver.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
Acked-by: John Crispin <john@phrozen.org>
(backported from commit 6785695056,
with updated commit message)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2020-06-13 17:41:57 +02:00
.github build: Update README & github help 2018-08-08 15:32:55 +02:00
config config: introduce separate CONFIG_SIGNATURE_CHECK option 2019-08-07 07:54:27 +02:00
include build: prereq: tidy gcc version checks 2020-05-24 14:43:08 +02:00
package ca-certificates: update to version 20200601 2020-06-10 00:31:21 +02:00
scripts scripts/dowload.pl: add archive.apache.org to apache mirror list 2019-12-23 01:07:33 +01:00
target ipq40xx: essedma: Disable TCP segmentation offload for IPv6 2020-06-13 17:41:57 +02:00
toolchain musl: fix locking synchronization bug 2020-05-26 23:50:37 +02:00
tools squashfs: Fix compile with GCC 10 2020-05-24 14:43:25 +02:00
.gitattributes add .gitattributes to prevent the git autocrlf option from messing with CRLF/LF in files 2012-05-08 13:30:49 +00:00
.gitignore gitignore: ignore patches in OpenWrt root directory 2019-11-14 18:26:06 +01:00
BSDmakefile add missing copyright header 2007-02-26 01:05:09 +00:00
Config.in merge: base: update base-files and basic config 2017-12-08 19:41:18 +01:00
LICENSE finally move buildroot-ng to trunk 2016-03-20 17:29:15 +01:00
Makefile build: Unset CDPATH to avoid problems 2018-12-18 11:28:11 +01:00
README build: README punctuation pendantry 2018-08-08 15:33:03 +02:00
feeds.conf.default OpenWrt v18.06.8: revert to branch defaults 2020-02-27 22:32:58 +01:00
rules.mk rules.mk: add ESED command 2018-12-18 11:28:13 +01:00

README

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------

This is the buildsystem for the OpenWrt Linux distribution.

To build your own firmware you need a Linux, BSD or MacOSX system (case
sensitive filesystem required). Cygwin is unsupported because of the lack
of a case sensitive file system.

You need gcc, binutils, bzip2, flex, python, perl, make, find, grep, diff,
unzip, gawk, getopt, subversion, libz-dev and libc headers installed.

1. Run "./scripts/feeds update -a" to obtain all the latest package definitions
defined in feeds.conf / feeds.conf.default

2. Run "./scripts/feeds install -a" to install symlinks for all obtained
packages into package/feeds/

3. Run "make menuconfig" to select your preferred configuration for the
toolchain, target system & firmware packages.

4. Run "make" to build your firmware. This will download all sources, build
the cross-compile toolchain and then cross-compile the Linux kernel & all
chosen applications for your target system.

Sunshine!
	Your OpenWrt Community
	http://www.openwrt.org