Commit Graph

210 Commits

Author SHA1 Message Date
Hauke Mehrtens
459a8afff1 kernel: remove igb: Fix Null-pointer dereference patch
This patch is already included in the Linux mainline kernel since
v3.15, remove it from LEDE, see the lines directly before this patch.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2016-06-26 18:47:29 +02:00
Hauke Mehrtens
bf32177a1d kernel: remove full cache flush in fuse_copy_do() for MIPS
This patch was introduced in commit r16412 for the brcm47xx target only
and then moved to generic in commit r32395. It was initially added
because of ticket #5186 and should fix some problems with fuse file
systems and MIPS caches. The commit comment in r32395 says that this a
generic problem in MIPS CPUs, but does not name any specifics about
that. There was a fix added to kernel 2.6.21 in commit commit
7575a49f20 "[MIPS] Implement flush_anon_page()." that should fix this
problem, but that was already available before both commits were done
to OpenWrt.

I just tested fuse with ntfs.3g without this patch on a BCM4704
(BMIPS3300 V0.6) SoC and haven't seen any problems. Someone reported
that removing this patch improves some fuse operations by 5 times on
some modern MIPS cores.
My test was only a simple "dd if=/dev/zero of=/mnt/zero bs=5000" to an
USB stick.

This patch removes the patch to OpenWrt, because I assume that it is
not needed any more and Felix, the orginal author, also thinks so.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2016-06-26 18:22:23 +02:00
Hauke Mehrtens
f97ad870e1 squashfs4: use upstream xz compression header format
In the upstream kernel and the upstream squashfs4 tools the xz
compression header looks the following:
struct disk_comp_opts {
        __le32 dictionary_size;
        __le32 flags;
};

We added some other members and also moved some existing members. Place
the members which are already in upstream header at the same position
as in that kernel and add our own at the end. The kernel should not
have a problem when there are some additional members and just ignore
them.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2016-06-22 19:32:06 +02:00
Rafał Miłecki
cf6d9d97fb kernel: rename B53 symbols to avoid upstream kernel conflict
In kernel 4.7 there is upstreamed b53 driver using (mostly?) the same
symbols as our b53 does. Change our symbols so both drivers can coexist
in kernel tree.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Acked-by: Jonas Gorski <jonas.gorski@gmail.com>
2016-06-20 08:00:14 +02:00
Jo-Philipp Wich
24a7ccb056 treewide: replace jow@openwrt.org with jo@mein.io
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-06-07 11:42:52 +02:00
Felix Fietkau
7eeb254cc4 treewide: replace nbd@openwrt.org with nbd@nbd.name
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-06-07 08:58:42 +02:00
Ash Benz
35c0328119 kernel/mtd: Add support for Macronix mx25u25635f, used in Archer C2600 v1.1
Signed-off-by: Ash Benz <ash.benz@bk.ru>
2016-06-05 23:23:57 +02:00
Felix Fietkau
98010ab489 kernel: remove ocf support, cryptodev-linux should be used instead
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-05-12 19:35:32 +02:00
Kevin Darbyshire-Bryant
e288e1bd32 kernel: fq_codel match flows_cnt to limit sizing
OpenWRT changed the default fq_codel sch->limit from 10240 to 1024,
without also adjusting q->flows_cnt.  Eric Dumazet explains below that
you must also adjust the buckets (q->flows_cnt) for this not to break.

Eric explains: Limit of 1024 packets and 1024 flows is not wise I think.
(If all buckets are in use, each bucket has a virtual queue of 1 packet,
which is almost the same than having no queue at all)

I suggest to have at least 8 packets per bucket, to let Codel have a
chance to trigger.  So you could either reduce number of buckets to 128
(if memory is tight), or increase limit to 8192.

flows_cnt is now set to 1024/8=128

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2016-05-12 03:29:36 +02:00
Rafał Miłecki
490861a3f5 kernel: use upstream fixes for bgmac and BCM4709(4)
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 49167
2016-04-15 10:11:31 +00:00
Rafał Miłecki
53a74644b0 kernel: update kernel 3.18 to version 3.18.29
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 49096
2016-03-30 16:41:26 +00:00
Rafał Miłecki
0e2f0196a2 kernel: backport bcma 4.6 changes for flashes
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 48960
2016-03-07 23:09:26 +00:00
Hauke Mehrtens
21cf64b4ad kernel: fix section mismatch in crashlog
The function memblock_insert_region() is in the section
__init_memblock, also put crashlog_init_memblock there.

This fixes this section mismatch warning:
The function memblock_insert_region.isra.1() references
the function __meminit crashlog_init_memblock().
This is often because memblock_insert_region.isra.1 lacks a __meminit
annotation or the annotation of crashlog_init_memblock is wrong.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 48931
2016-03-05 16:23:50 +00:00
Hauke Mehrtens
7768735873 kernel: update kernel 3.18 to version 3.18.27
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 48874
2016-03-01 23:16:17 +00:00
Rafał Miłecki
e9479e62b0 kernel: backport more 4.6 bcma stuff needed for new chipsets
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 48516
2016-01-28 07:00:44 +00:00
Hauke Mehrtens
85e523e126 kernel: update kernel 3.18 to 3.18.26
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 48496
2016-01-25 21:43:26 +00:00
Rafał Miłecki
529d527e2c kernel: backport bcma stuff sent for 4.6
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 48449
2016-01-22 09:22:37 +00:00
Felix Fietkau
f85594f56f kernel: fix module load issue in the dma-buf debloat patch
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48409
2016-01-20 20:09:43 +00:00
Felix Fietkau
e62802752e kernel: fix keyring reference leak (CVE-2016-0728)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48372
2016-01-19 21:09:17 +00:00
Felix Fietkau
20ba5a01cf kernel: modularize dma shared buffer code to eliminate kernel bloat
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48371
2016-01-19 21:09:11 +00:00
Hauke Mehrtens
de18003b6e kernel/3.18: update to version 3.18.25
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 48225
2016-01-12 20:53:04 +00:00
Felix Fietkau
e14d2aee0a kernel: add at803x fix for sgmii mode
Some (possibly broken) bootloaders incorreclty initialize at8033
phy. This patch enables sgmii autonegotiation mode.

Signed-off-by: Roman Yeryomin <roman@advem.lv>

SVN-Revision: 48109
2016-01-03 23:13:16 +00:00
Felix Fietkau
54b4265873 kernel: move at803x phy patch to generic
Signed-off-by: Roman Yeryomin <roman@advem.lv>

SVN-Revision: 48108
2016-01-03 23:13:11 +00:00
Rafał Miłecki
7bede46e58 kernel: make bcm47xxpart work with TRX flashed at bad block(s)
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 48061
2016-01-02 00:33:48 +00:00
Rafał Miłecki
224984ca01 kernel: drop bcm47xxpart patch for Xiaomi
It was never tested, most likely not working (because of le32_to_cpu)
and not upstreamed.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 48060
2016-01-02 00:33:31 +00:00
Felix Fietkau
10afb1bd8c kernel: add remaining kernel patch accidentally left out of r47963
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47966
2015-12-23 11:40:53 +00:00
Felix Fietkau
720afadc7a kernel: backport all current pppoe kernel fixes to 3.18
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47963
2015-12-23 11:15:02 +00:00
Rafał Miłecki
8996164e56 ledtrig-netdev: update base driver instead of patching it for every kernel
All supported kernels require patching ledtrig-netdev in the same way,
so it's safe to just move these changes to the base version of this
driver. We needed these patches for some old kernels 2.6.36 and 3.11.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 47962
2015-12-23 10:17:09 +00:00
Felix Fietkau
1369876a92 kernel: revert fq_codel quantum override to prevent it from causing too much cpu load with higher speed (#21326)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47811
2015-12-08 00:14:41 +00:00
Rafał Miłecki
3333f75caf kernel: add bcm47xxpart patches sent for 4.5 merge window
This replaces old bcm53xx patch for scanning whole flash and makes
bcm47xxpart compatible with NAND.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 47800
2015-12-07 09:31:52 +00:00
Jonas Gorski
f961a3826e kernel: drop bridge hack for removing ipv6 dependency
Now that IPV6 isn't build as a module anymore, we don't need to decouple
bridge from ipv6 anymore.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 47751
2015-12-04 10:06:03 +00:00
Jonas Gorski
813227d992 kernel: mvswitch: merge 3.10+ compile fix into the code
The lowest we support is 3.18, so no need to keep it as a separate
patch.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 47749
2015-12-04 09:45:07 +00:00
Felix Fietkau
2a68bea073 kernel: backport support for m25p80 compatible="jedec,spi-nor" in DT
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47716
2015-12-03 14:47:37 +00:00
Felix Fietkau
3a0266b471 kernel: mtd: Backport GD25Q128B support to 3.18
Support is present in 3.19 and above as kernel commit:
fcc87a95195236b0935183361a72e4a98bf577d8

Changes to other existing patches are a result of "make target/linux/refresh".

Signed-off-by: Srdjan Rosic <srdjan.rosic@gmail.com>
Signed-off-by: Srdjan Rosic <rosic@google.com>

SVN-Revision: 47588
2015-11-22 19:05:53 +00:00
John Crispin
058275197b kernel/generic: 3.18, 4.y: Add support for Quectel EC20 Mini PCIe module
* both patches (qcserial/qmi_wwan) were submitted upstream[1,2]
* build tested on 3.18 and 4.1
* run tested on imx6 platform with 4.1

1. http://article.gmane.org/gmane.linux.usb.general/132998
2. http://article.gmane.org/gmane.linux.usb.general/133113

Signed-off-by: Petr Štetiar <ynezz@true.cz>

SVN-Revision: 47567
2015-11-21 21:25:54 +00:00
Hauke Mehrtens
cb0c8da7c2 kernel: take bcm47xx_nvram.h from kernel and not backports
compat-wireless/backports now contains a bcm47xx_nvram.h file to
backport some of the functions in it which are used by the bcmfmac
driver. This file just checks for the kernel versions and provide an
empty implementations on older kernel versions. This is OK on most
systems, but on bcm47xx / bcm53xx systems we want to call the real
functions here. This commit removes the file from backports in our
build process like we do it with the bcma and ssb header files. Instead
we add a recent version into our kernel so all code uses only one
header file. On bcm47xx / bcm53xx the real implementations of this code
will be used.

Reported-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 47467
2015-11-13 23:51:31 +00:00
Hauke Mehrtens
55a912f43e kernel: update kernel 3.18 to version 3.18.23
Changelog:
 * https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.22
 * https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.23

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 47334
2015-11-01 13:45:57 +00:00
Luka Perkov
013a114691 generic: 3.18: refresh patches
Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 47329
2015-11-01 00:04:21 +00:00
Felix Fietkau
93efeef9b3 generic: fix unrecognized opcode wsbh when building for MIPS16.
The issue was found and reported by hynman [1] when compiling reaver for ar71xx
(Big Endian MIPS).

    {standard input}: Assembler messages:
    {standard input}:79: Error: unrecognized opcode `wsbh $2,$2'
    {standard input}:90: Error: unrecognized opcode `wsbh $3,$17'
    {standard input}:208: Error: unrecognized opcode `wsbh $2,$2'
    make[3]: *** [builder.o] Error 1

The patch was already in upstream since kernel release 4.3-rc5.

 [1] 1e29676a8a (commitcomment-12901931)

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>

SVN-Revision: 47322
2015-10-31 09:29:57 +00:00
Felix Fietkau
65558ba722 kernel: backport some bcma header file definitions from wireless-testing
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47284
2015-10-30 15:17:41 +00:00
John Crispin
024083a556 generic: add 8139cp fixes, enable hardware csum/tso on 4.0+
This contains two sets of fixes for the 8139cp driver.

For all kernel versions older than 4.3, we can apply the fixes from the
4.3-rc4 kernel. In particular, these fix the TX timeout recovery which
is causing my Geos to lock up until the hardware watchdog kicks in.

For 4.0 and later kernels, we can also apply the additional improvements
which are going into 4.4 to fix and enable hardware checksum/TSO
offload. Backporting those to older kernels is non-trivial.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

SVN-Revision: 47220
2015-10-19 10:09:54 +00:00
Felix Fietkau
941505c94b kernel: backport some SPI layer improvements from 4.1 to 3.18, significantly improves flash speed on ramips
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47045
2015-09-24 16:07:10 +00:00
Felix Fietkau
b0f48b6ebc kernel: add a patch to fix crashes on pppoe disconnect/reconnect
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47026
2015-09-22 11:28:28 +00:00
Felix Fietkau
708c58c1a7 kernel: fix dependencies of the sock_diag debloat patch (#20544)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46997
2015-09-18 09:05:01 +00:00
Felix Fietkau
6c018c2f5e kernel: solos-pci: Increase headroom on received packets
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46993
2015-09-17 15:38:58 +00:00
Felix Fietkau
312908ff4b kernel: ipv6: ip6_fragment: fix headroom tests and skb leak
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46992
2015-09-17 15:38:46 +00:00
Felix Fietkau
45b52d4581 kernel: remove lantiq specific ATM API hacks and their kernel space users (fixes #20523)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46984
2015-09-17 09:45:34 +00:00
John Crispin
e11479771d kernel: properly guard the lantiq atm abi hack with an ifdef
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 46981
2015-09-16 12:08:05 +00:00
John Crispin
f461ffbaad kernel: unbreak the atm abi
the lantiq dsl hack to struct atm_trafprm broke the ABI fix this by moving
the variables to the end of the struct

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 46964
2015-09-16 08:32:01 +00:00
Felix Fietkau
5fcafa319d generic: Fix per interface nf_call_iptables setting
commit r30917 ("kernel: bypass all netfilter hooks if the sysctls for that
functionality have been disabled - eliminates the overhead of enabling
CONFIG_BRIDGE_NETFILTER in the kernel config") introduced an optimization
which should reduce/eliminate the overhead for traffic send over bridges on
kernels compiled with CONFIG_BRIDGE_NETFILTER=y. But this optimization
breaks the nf_call_iptables per bridge setting which is more fine grained
than the global sysctl net.bridge.bridge-nf-call-iptables setting.

A test reflecting a real world setup was created to identify if this really
eliminates the overhead and if per-bridge nf_call_iptables could be used in
some setups to increase the throughput. A Qualcomm Atheros QCA9558 based
system with one ethernet and an ath9k wifi 3x3 in HT40 mode was used.
Cables from the AP to the wifi station were used to reduce interference
problems during the tests.

The wlan interface was put in one bridge interface called br-wlan. This
bridge usually contains some more wlan interfaces. The eth0 was put in a
second bridge called br-lan. This usually contains some other privileged
wlan or mesh interfaces. Routing was added between br-lan and br-wlan.

Three kernels were tested:

 * (default) OpenWrt kernel for this device
 * (brfilter-global) OpenWrt kernel with CONFIG_BRIDGE_NETFILTER=y
 * (brfilter-local)  OpenWrt kernel with CONFIG_BRIDGE_NETFILTER=y and
    without 644-bridge_optimize_netfilter_hooks.patch

The changes to the the netfilter settings of the bridge were done via:

 * (brfilter-global) /sbin/sysctl -w net.bridge.bridge-nf-call-iptables=1
 * (brfilter-lobal) echo 1 > /sys/class/net/br-lan/bridge/nf_call_iptables
   and/or echo 1 > /sys/class/net/br-wan/bridge/nf_call_iptables

A station connected to the wlan0 (AP) interface was used to send traffic to
a PC connected via ethernet. iperf with 3 concurrent transmissions was used
to generate the traffic.

| kernel          | br-nf-* global | nf-call* iface | download | upload   |
|-----------------|----------------|----------------|----------|----------|
| default         | 0              | -              |      209 |      268 |
| brfilter-global | 0              | -              |      185 |      243 |
| brfilter-local  | 0              | -              |      187 |      243 |
| brfilter-local  | 0              | br-lan         |      157 |      226 |
| brfilter-local  | 0              | br-lan br-wlan |      139 |      161 |
| brfilter-global | 1              | -              |      136 |      162 |

Download/upload results in Mibit/s

It can be seen that the patch doesn't eliminate the overhead. It can also
be seen that the throughput of brfilter-global and brfilter-local with
disabled filtering is the roughly the same. Also the throughput for
brfilter-global and brfilter-local for enabled filtering on all bridges is
roughly the same.

But also the brfilter-local throughput is higher when only br-lan requires
the filtering. This setting would not be possible with
644-bridge_optimize_netfilter_hooks.patch applied and thus can only be
compared with brfilter-global and filtering enabled for all interfaces.

Signed-off-by: Sven Eckelmann <sven@open-mesh.com>

SVN-Revision: 46835
2015-09-09 18:40:15 +00:00