openwrt/openwrt.git
5 years agokernel: bump 4.9 to 4.9.171
Koen Vandeputte [Mon, 29 Apr 2019 10:11:16 +0000 (12:11 +0200)]
kernel: bump 4.9 to 4.9.171

Refreshed all patches.

Altered patches:
- 150-bridge_allow_receiption_on_disabled_port.patch
- 201-extra_optimization.patch

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoRevert "uhttpd: disable concurrent requests by default"
Jo-Philipp Wich [Tue, 23 Apr 2019 06:12:49 +0000 (08:12 +0200)]
Revert "uhttpd: disable concurrent requests by default"

This reverts commit c6aa9ff38870a30dbe6da17e4edad6039fe10ddf.

Further testing has revealed that we will need to allow concurrent
requests after all, especially for situations where CGI processes
initiate further HTTP requests to the local host.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit f00a4ae6e0b1f7b3d84e11e8dc4dd562088584e0)

5 years agotools/pkg-config: Handle variable substitution of 'bindir' to redirect to STAGING_DIR/bin
Ted Hess [Tue, 13 Nov 2018 20:40:30 +0000 (15:40 -0500)]
tools/pkg-config: Handle variable substitution of 'bindir' to redirect to STAGING_DIR/bin

Signed-off-by: Ted Hess <thess@kitschensync.net>
(cherry picked from commit 042d68a19593ac796098845366a235f5465816da)

5 years agotools/pkg-config: pass arguments at the end
Arthur Skowronek [Mon, 15 Oct 2018 12:55:57 +0000 (14:55 +0200)]
tools/pkg-config: pass arguments at the end

Go for openwrt passes pkg-config arguments in the format of

        pkg-config --cflags -- pkg-name

which in turn will be passed down to the real pkg-config as something
like

        pkg-config.real --cflags -- pkg-name --define...

and causes the real pkg-config implementation to missinterpret the given
argument list.

This also helps to fix https://github.com/golang/go/issues/27940

Signed-off-by: Arthur Skowronek <arthur.skowronek@tuta.io>
(cherry picked from commit 5f2cb6d7dc9de24bec7b1139f8d785f0e7588eed)

5 years agokernel: bump 4.14 to 4.14.113
Koen Vandeputte [Mon, 22 Apr 2019 19:54:59 +0000 (21:54 +0200)]
kernel: bump 4.14 to 4.14.113

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.170
Koen Vandeputte [Mon, 22 Apr 2019 19:54:26 +0000 (21:54 +0200)]
kernel: bump 4.9 to 4.9.170

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.112
Koen Vandeputte [Thu, 18 Apr 2019 13:11:42 +0000 (15:11 +0200)]
kernel: bump 4.14 to 4.14.112

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.169
Koen Vandeputte [Thu, 18 Apr 2019 13:10:21 +0000 (15:10 +0200)]
kernel: bump 4.9 to 4.9.169

Refreshed all patches.

New symbols:
- CONFIG_PPC_BARRIER_NOSPEC
- CONFIG_LDISC_AUTOLOAD

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoar71xx: GL.iNet AR300M family: correct LED definitions
Andreas Ziegler [Mon, 25 Feb 2019 00:19:59 +0000 (01:19 +0100)]
ar71xx: GL.iNet AR300M family: correct LED definitions

remove USB as this is no LED but power control
rename WiFi LED with correct color red (like in stock firmware)
set middle LED to be used for LAN link/activity

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
(cherry picked from commit 53c46b504c630e4c9c5a00bf644a69919bfc0c03)

5 years agoca-certificates: update to version 20190110
Josef Schlehofer [Wed, 13 Mar 2019 23:53:41 +0000 (00:53 +0100)]
ca-certificates: update to version 20190110

- Tested on Turris MOX, OpenWrt master
- Removed PKG_BUILD_DIR
In build_dir there were two folders
ca-certificates and ca-certificates-20190110 and it failed as files
were in ca-certificates-20190110

Signed-off-by: Josef Schlehofer <josef.schlehofer@nic.cz>
(cherry picked from commit f22c33b40cc7b542b3b31fa0d873d28d3a3482b5)

5 years agomac80211: brcmfmac: really add early fw crash recovery
Rafał Miłecki [Thu, 18 Apr 2019 10:37:10 +0000 (12:37 +0200)]
mac80211: brcmfmac: really add early fw crash recovery

Previous commit backported USB fixes instead of firmware crash recovery
patches.

Fixes: 02aed76968d6 ("mac80211: brcmfmac: early work on FullMAC firmware crash recovery")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agomac80211: brcmfmac: early work on FullMAC firmware crash recovery
Rafał Miłecki [Thu, 18 Apr 2019 09:47:43 +0000 (11:47 +0200)]
mac80211: brcmfmac: early work on FullMAC firmware crash recovery

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agolantiq: tdw89x0: Fix WLAN LED on TP-Link W8970 v1.2 (FS#2232)
Petr Štetiar [Wed, 10 Apr 2019 08:10:33 +0000 (10:10 +0200)]
lantiq: tdw89x0: Fix WLAN LED on TP-Link W8970 v1.2 (FS#2232)

This patch fixes disfunctional WLAN LED on TP-Link W8970. The LED was
reported working in the CC release[1], but doesn't work anymore in 18.06.2.

1. https://github.com/openwrt/chaos_calmer/commit/420cb24d41fcd650795f09d2b26e0e1d2cf21165

Tested-by: Damian Janarek <dzanar18@o2.pl>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoar71xx: Fix IMAGE_SIZE for TP-Link Archer C7 v5
Adrian Schmutzler [Mon, 8 Apr 2019 12:59:48 +0000 (14:59 +0200)]
ar71xx: Fix IMAGE_SIZE for TP-Link Archer C7 v5

IMAGE_SIZE for C7v5 is wrong in openwrt-18.06, looks like it
was just copied from C7v4. In master, this got fixed with the
introduction of dynamic partitioning in
https://github.com/openwrt/openwrt/commit/7c78be1b747eb0c8d64da67deb3a8aec75bd7b9c

However, this is not connected to the changes introduced there,
but also applies to the static partitioning in openwrt-18.06.
It appears to be simply wrong at the moment ...

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoar71xx: Correct MAC address for WAN interface of Archer C7 v5
Adrian Schmutzler [Wed, 3 Apr 2019 17:05:19 +0000 (19:05 +0200)]
ar71xx: Correct MAC address for WAN interface of Archer C7 v5

This device shares the network config with v4, thus the WAN MAC
also needs to be fixed the same way. However, the partition
where the MAC address resides has been changed.

Backport of commit 93d23aced24c2e620461e1b0448d35be21f7e501

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoar71xx: Add "info" partition for TP-Link Archer C7 v5
Adrian Schmutzler [Thu, 4 Apr 2019 12:16:19 +0000 (14:16 +0200)]
ar71xx: Add "info" partition for TP-Link Archer C7 v5

This adds the "info" MTD partition, as it is specified in the
ath79 DTS:
https://github.com/openwrt/openwrt/blob/master/target/linux/ath79/dts/qca9563_tplink_archer-c7-v5.dts#L35

This is required to set the WAN MAC address, as it is build based
on the LAN MAC address, which in turn has to be read from the
"info" partition:
https://github.com/openwrt/openwrt/blob/master/target/linux/ath79/dts/qca9563_tplink_archer-x7-v5.dtsi#L184

Backport of commit 9aa8f87d277bf2f666fa5bf90c5efd59dd044d54

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoar71xx: Remove ath10k packages from archer-c7-v1 (fixes FS#1743)
Aubrey McIntosh, PhD [Tue, 4 Sep 2018 06:40:10 +0000 (01:40 -0500)]
ar71xx: Remove ath10k packages from archer-c7-v1 (fixes FS#1743)

ath10k_pci driver crashes once loaded and causes boot loops on this
device as 5GHz radio QCA9880-AR1A shipped with this router is broken.
It's not possible to fix this problem in software, miniPCIe radio has to
be replaced.

We could've probably fixed crashing of the ath10k driver by reverting
following upstream commit:

 commit 1a7fecb766c83dace747f42b25bbb544b00a0163
 Author: Michal Kazior <michal.kazior@tieto.com>
 Date:   Sat Jan 24 12:14:48 2015 +0200

    ath10k: reset chip before reading chip_id in probe

but it's not worth the effort as it wouldn't make that 5GHz radio usable
anyway. So it seems more convenient to just remove the crashing driver
and provide bootable images, as I believe, that a router that is working
but degraded is better than a router that will not work.

For details please see discussions in PR[1] and in FS#1743[2].

1. https://github.com/openwrt/openwrt/pull/1349
2. https://bugs.openwrt.org/index.php?do=details&task_id=1743

Reviewed-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Signed-off-by: Aubrey McIntosh, PhD <aubrey.mcintosh@utexas.edu>
[subject and commit message tweaks]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agokernel: bump 4.14 to 4.14.111
Koen Vandeputte [Mon, 8 Apr 2019 11:52:02 +0000 (13:52 +0200)]
kernel: bump 4.14 to 4.14.111

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.168
Koen Vandeputte [Mon, 8 Apr 2019 11:50:17 +0000 (13:50 +0200)]
kernel: bump 4.9 to 4.9.168

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.110
Koen Vandeputte [Fri, 5 Apr 2019 10:13:50 +0000 (12:13 +0200)]
kernel: bump 4.14 to 4.14.110

Refreshed all patches.

Compile-tested on: cns3xxx, imx6, x86_64
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.167
Koen Vandeputte [Fri, 5 Apr 2019 10:07:38 +0000 (12:07 +0200)]
kernel: bump 4.9 to 4.9.167

Refreshed all patches.

Compile-test on: ar71xx
Runtime-test on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoopenssl: update to 1.0.2r
Stijn Segers [Sat, 6 Apr 2019 21:16:31 +0000 (23:16 +0200)]
openssl: update to 1.0.2r

This bump contains bug and security fixes.

Compile-tested on ar71xx, ramips/mt7621 and x86/64.
Run-tested on ramips/mt7621.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_HASH fixup]
5 years agokernel: bump 4.14 to 4.14.109
Koen Vandeputte [Fri, 29 Mar 2019 13:22:50 +0000 (14:22 +0100)]
kernel: bump 4.14 to 4.14.109

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.166
Koen Vandeputte [Fri, 29 Mar 2019 13:04:00 +0000 (14:04 +0100)]
kernel: bump 4.9 to 4.9.166

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.108
Koen Vandeputte [Mon, 25 Mar 2019 10:57:36 +0000 (11:57 +0100)]
kernel: bump 4.14 to 4.14.108

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.165
Koen Vandeputte [Mon, 25 Mar 2019 10:56:10 +0000 (11:56 +0100)]
kernel: bump 4.9 to 4.9.165

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.107
Koen Vandeputte [Wed, 20 Mar 2019 12:30:20 +0000 (13:30 +0100)]
kernel: bump 4.14 to 4.14.107

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.164
Koen Vandeputte [Wed, 20 Mar 2019 11:22:42 +0000 (12:22 +0100)]
kernel: bump 4.9 to 4.9.164

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoramips: allow packets with ttl=0
Felix Fietkau [Sun, 24 Mar 2019 11:05:56 +0000 (12:05 +0100)]
ramips: allow packets with ttl=0

Some broken ISPs (e.g. Comcast) send DHCPv6 packets with hop limit=0.
This trips up the TTL=0 check in the PPE if enabled.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agomt76: update to latest openwrt-18.06 branch
Felix Fietkau [Sat, 23 Mar 2019 17:46:08 +0000 (18:46 +0100)]
mt76: update to latest openwrt-18.06 branch

9e3ef1f mt7603: fix sequence number assignment
a5f5605 mt7603: send BAR after powersave wakeup

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agokernel: bump 4.14 to 4.14.106
Koen Vandeputte [Thu, 14 Mar 2019 13:25:00 +0000 (14:25 +0100)]
kernel: bump 4.14 to 4.14.106

Refreshed all targets.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.163
Koen Vandeputte [Thu, 14 Mar 2019 13:23:25 +0000 (14:23 +0100)]
kernel: bump 4.9 to 4.9.163

Refreshed all targets.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoipq40xx: copy Fritz4040 UBoot to STAGING_DIR_IMAGE
David Bauer [Fri, 4 Jan 2019 20:17:20 +0000 (21:17 +0100)]
ipq40xx: copy Fritz4040 UBoot to STAGING_DIR_IMAGE

Copy U-Boot to STAGING_DIR_IMAGE (and append it to the EVA-image from
there) to fix image generation using the image-builder.

Also remove the bootloader from DEVICE_PACKAGES and instead use the
BUILD_DEVICES directive from within the U-Boot makefile.

This fixes eva-image generation using the OpenWRT image-builder.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 634c733065256979835ca3d7218ae8203a693683)

5 years agotools/libelf: Add mirrors as main site is dead
Daniel Engberg [Thu, 14 Mar 2019 07:25:49 +0000 (08:25 +0100)]
tools/libelf: Add mirrors as main site is dead

Main site hasn't resolved for days so just add a few mirrors instead

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit a56c21f582810a28e9493dcfae584132d7ea9451)

5 years agomt76: update to latest openwrt-18.06 branch
Felix Fietkau [Sat, 16 Mar 2019 20:21:10 +0000 (21:21 +0100)]
mt76: update to latest openwrt-18.06 branch

00ac79d mt7603: fix initialization of max rx length
320af65 mt76: mt7603: use the correct hweight8() function
bdee924 mt76: fix schedule while atomic in mt76x02_reset_state
abcb544 mt76x02: do not enable RTS/CTS by default

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agobusybox: add missing install dir
Hans Dedecker [Fri, 1 Mar 2019 17:59:31 +0000 (18:59 +0100)]
busybox: add missing install dir

Add missing /usr/sbin install dir fixing :

install: cannot create regular file 'build_dir/target-x86_64_musl/busybox-1.30.1/.pkgdir/busybox/usr/sbin/ntpd-hotplug': No such file or directory

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 2cd28c9a0836b82c591cccc3d9e01228b7990869)

5 years agokernel: bump 4.14 to 4.14.105
Koen Vandeputte [Wed, 6 Mar 2019 15:59:52 +0000 (16:59 +0100)]
kernel: bump 4.14 to 4.14.105

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.162
Koen Vandeputte [Wed, 6 Mar 2019 15:58:26 +0000 (16:58 +0100)]
kernel: bump 4.9 to 4.9.162

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agomt76: update to the latest version
Felix Fietkau [Thu, 7 Mar 2019 19:36:51 +0000 (20:36 +0100)]
mt76: update to the latest version

28d81ff mt76x0: eeprom: fix VHT mcs{8,9} rate power offset
6e33ce6 mt76: move mt76_mcu_msg_alloc in mt76-core
4637f95 mt76: move mt76_mcu_get_response in mt76-core
1763cb0 mt76: move mt76_mcu_rx_event in mt76-core
4db9d75 mt76x0: mcu: remove useless commented configuration
91d0455 mt76: move mt76_dma_tx_queue_skb_raw in mt76-core module
0e8e53f mt76: remove add_buf pointer in mt76_queue_ops
db47920 mt7603: rely on mt76_mcu_msg_alloc routine
471c447 mt7603: rely on mt76_mcu_get_response routine
cacc986 mt7603: rely on mt76_mcu_rx_event routine
11ab620 mt7603: rely on mt76_tx_queue_skb_raw common routine
82fa312 mt7603: move alloc_dev common code in mt76_alloc_device
47d5922 mt76: move alloc_device common code in mt76_alloc_device
c50c993 mt76x2u: remove mt76x2u_alloc_device routine
6ed5b7a mt76x0: remove mt76x0u_alloc_device routine
e32e249 mt76x2: remove mt76x2_alloc_device routine
6aacd1e mt76: change the return type of mt76_dma_attach()
a10e9e5 mt76x02u: use usb_bulk_msg to upload firmware
a774ff6 mt76: usb: fix possible NULL pointer dereference in mt76u_mcu_deinit
c2877bc mt76: usb: fix possible memory leak in mt76u_buf_free
a5cfe96 mt76: usb: do not run mt76u_queues_deinit twice
1e4db14 mt76: usb: move mt76u_check_sg in usb.c
302406b mt76: usb: do not use sg buffers for mcu messages
8ab5267 mt76: usb: use a linear buffer for tx/rx datapath if sg is not supported
a0a3505 mt76: usb: introduce disable_usb_sg parameter
0cee180 mt76: usb: use dev_err_ratelimited instead of dev_err in mt76u_complete_rx
1bb97c4 mt76x02u: remove bogus check and comment padding
2cbc2d4 mt76: Use the correct hweight8() function
f18e03a mt76x0u: fix suspend/resume
6231336 mt76: mt76x02: fix TSF sync mode
783da04 mt76: mt76x02: fix beacon timer drift adjustment
43d2507 mt76: mt76x02: fix beacon timer issue
59a6587 mt76: mt76x02: only reset beacon drift counter when enabling beacons
8c8eb98 mt76: mt76x02: issue watchdog reset on MCU request timeout
52161d2 mt76: mt76x02: fix ED/CCA enabling/disabling
5e7ecce mt76: mt76x2: unify mt76x2[u]_mac_resume
18af219 mt76: mt76x02: set MT_TXOP_HLDR_TX40M_BLK_EN for mt76x2
e5747b2 mt76usb: allow mt76u_bulk_msg be used for reads
2437a9a mt76usb: use synchronous msg for mcu command responses
e4250c9 mt76usb: remove usb_mcu.c
8b1110e mt76: usb: fix warning in mt76u_buf_free
89215f6 mt76: usb: introduce mt76u_fill_bulk_urb routine
523e374 mt76: usb: simplify rx buffer allocation
ffe1292 mt76: usb: simplify mt76u_tx_build_sg routine
e2a9d40 mt7603: fix ba window size selection
b040ef7 mt76: remove no longer used routine declarations
645ef43 mt76: usb: check urb->num_sgs limit in mt76u_process_rx_entry
fd315bd mt7603: disable dynamic sensitivity adjustment by default
3c6df9b mt76: rewrite dma descriptor base and ring size on queue reset
30e757e mt76: mt76x02: when setting a key, use PN from mac80211
fa83406 mt76: mt76x2: implement full device restart on watchdog reset
ead881b mt76: mt76x02: do not sync PN for keys with sw_iv set
ba1d989 mt76: mmio: move mt76x02_set_irq_mask in mt76 module
283ebbe mt76: dma: move mt76x02_init_{tx,rx}_queue in mt76 module
b216d3c mt76: introduce q->stopped parameter
8b437d2 mt76x02: clear sta and vif driver data structures on add
2c62d03 mt76x02: clear running flag when resetting state on restart
6b10cfc mt76: mt76x02: only update the base mac address if necessary
669bc49 mt76: mt76x02: reduce false positives in ED/CCA tx blocking
2ed9382 mt76: mt7603: fix tx status HT rate validation
d2c6823 mt76: mt76x2: fix external LNA gain settings
8ee2259 mt76: mt76x2: fix 2.4 GHz channel gain settings
8bfe6d4 mt76: mt7603: clear ps filtering mode before releasing buffered frames
d13b065 mt76: mt7603: fix up hardware queue index for PS filtered packets
eb1ecc4 mt76: mt7603: notify mac80211 about buffered frames in ps queue
3687eec mt76: mt7603: clear the service period on releasing PS filtered packets
42ab27e mt76: when releasing PS frames, end the service period if no frame was found
461f3b0 mt76: mt76x02: disable ED/CCA by default
1d7760d mt76: mt7603: set moredata flag when queueing ps-filtered packets
0b927b2 mt76: fix return value check in mt76_wmac_probe()
e72376d mt76x02: fix hdr pointer in write txwi for USB

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agomac80211: add a fix to prevent unsafe queue wake calls during restart
Felix Fietkau [Fri, 1 Mar 2019 13:54:31 +0000 (14:54 +0100)]
mac80211: add a fix to prevent unsafe queue wake calls during restart

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agomac80211: backport tx queue start/stop fix
Felix Fietkau [Fri, 1 Mar 2019 12:10:53 +0000 (13:10 +0100)]
mac80211: backport tx queue start/stop fix

Among other things, it fixes a race condition on calling ieee80211_restart_hw

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agokernel: bump 4.14 to 4.14.104
Koen Vandeputte [Wed, 27 Feb 2019 15:59:49 +0000 (16:59 +0100)]
kernel: bump 4.14 to 4.14.104

Refreshed all patches.

Altered patches:
- 332-arc-add-OWRTDTB-section.patch

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.161
Koen Vandeputte [Wed, 27 Feb 2019 15:57:22 +0000 (16:57 +0100)]
kernel: bump 4.9 to 4.9.161

Refreshed all patches.

Altered patches:
- 332-arc-add-OWRTDTB-section.patch

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: fix refcnt leak in LED netdev trigger on interface rename
Rafał Miłecki [Wed, 6 Mar 2019 05:00:00 +0000 (06:00 +0100)]
kernel: fix refcnt leak in LED netdev trigger on interface rename

Renaming a netdev-trigger-tracked interface was resulting in an
unbalanced dev_hold().

Example:
> iw phy phy0 interface add foo type __ap
> echo netdev > trigger
> echo foo > device_name
> ip link set foo name bar
> iw dev bar del
[  237.355366] unregister_netdevice: waiting for bar to become free. Usage count = 1
[  247.435362] unregister_netdevice: waiting for bar to become free. Usage count = 1
[  257.545366] unregister_netdevice: waiting for bar to become free. Usage count = 1

Above problem was caused by trigger checking a dev->name which obviously
changes after renaming an interface. It meant missing all further events
including the NETDEV_UNREGISTER which is required for calling dev_put().

This change fixes that by:
1) Comparing device struct *address* for notification-filtering purposes
2) Dropping unneeded NETDEV_CHANGENAME code (no behavior change)

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agooxnas: add SoC restart driver for reboot
Daniel Golle [Sun, 3 Mar 2019 01:30:21 +0000 (02:30 +0100)]
oxnas: add SoC restart driver for reboot

Refresh oxnas kernel config while at it.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(commit c1a8054114 "oxnas: add SoC restart driver for reboot" on master)

5 years agooxnas: cheery-pick DTS improvements from master
Daniel Golle [Sun, 3 Mar 2019 17:13:25 +0000 (18:13 +0100)]
oxnas: cheery-pick DTS improvements from master

 4a954e8620 oxnas: dts: Unify naming of gpio-keys nodes
 9292822023 oxnas: dts: Unify naming of gpio-led nodes
 994428f395 oxnas: add missing NAND partitions
 858aebc0ef oxnas: unify MTD partition names
 e2fea41ad6 oxnas: fix forgotten MTD partition name
 42f2e07ba0 oxnas: cloudengines,pogoplug*: enable USB ports

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
5 years agokernel: bump 4.14 to 4.14.103
Koen Vandeputte [Mon, 25 Feb 2019 10:24:37 +0000 (11:24 +0100)]
kernel: bump 4.14 to 4.14.103

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.160
Koen Vandeputte [Mon, 25 Feb 2019 10:24:12 +0000 (11:24 +0100)]
kernel: bump 4.9 to 4.9.160

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.102
Koen Vandeputte [Wed, 20 Feb 2019 14:44:46 +0000 (15:44 +0100)]
kernel: bump 4.14 to 4.14.102

Refreshed all patches.

Remove upstreamed:
- 272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch

Remove upstreamed hunks:
- 105-pinctrl-msm-fix-gpio-hog-related-boot-issues.patch

Fixes:
- CVE-2018-1000026

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.159
Koen Vandeputte [Wed, 20 Feb 2019 14:42:17 +0000 (15:42 +0100)]
kernel: bump 4.9 to 4.9.159

Refreshed all patches.

Remove upstreamed:
- 023-1-smsc95xx-Use-skb_cow_head-to-deal-with-cloned-skbs.patch
- 023-6-ch9200-use-skb_cow_head-to-deal-with-cloned-skbs.patch
- 023-7-kaweth-use-skb_cow_head-to-deal-with-cloned-skbs.patch
- 050-usb-dwc2-Remove-unnecessary-kfree.patch
- 092-netfilter-nf_tables-fix-mismatch-in-big-endian-syste.patch
- 272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch

Fixes:
- CVE-2018-1000026

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agomac80211: brcmfmac: backport 5.0 & 5.1 important changes/fixes
Rafał Miłecki [Mon, 25 Feb 2019 09:15:35 +0000 (10:15 +0100)]
mac80211: brcmfmac: backport 5.0 & 5.1 important changes/fixes

This backports the most important brcmfmac commits that:
1) Fix some bugs
2) Help debugging bugs

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agodnsmasq: prefer localuse over resolvfile guesswork
Yousong Zhou [Wed, 20 Feb 2019 06:58:51 +0000 (06:58 +0000)]
dnsmasq: prefer localuse over resolvfile guesswork

This makes it clear that localuse when explicitly specified in the
config will have its final say on whether or not the initscript should
touch /etc/resolv.conf, no matter whatever the result of previous
guesswork would be

(cherry picked from c17a68cc61a0f8a28e19c7f60b24beaf1a1a402d)
Tested-by: Paul Oranje <por@oranjevos.nl>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
Acked-by: Paul Oranje <por@oranjevos.nl>
5 years agodnsmasq: allow using dnsmasq as the sole resolver
Yousong Zhou [Mon, 18 Feb 2019 14:11:19 +0000 (14:11 +0000)]
dnsmasq: allow using dnsmasq as the sole resolver

Currently it seems impossible to configure /etc/config/dhcp to achieve
the following use case

 - run dnsmasq with no-resolv
 - re-generate /etc/resolv.conf with "nameserver 127.0.0.1"

Before this change, we have to set resolvfile to /tmp/resolv.conf.auto
to achive the 2nd effect above, but setting resolvfile requires noresolv
being false.

A new boolean option "localuse" is added to indicate that we intend to
use dnsmasq as the local dns resolver.  It's false by default and to
align with old behaviour it will be true automatically if resolvfile is
set to /tmp/resolv.conf.auto

(cherry picked from 2aea1ada65f050d74a064e74466bbe4e8d)
Tested-by: Paul Oranje <por@oranjevos.nl>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
Acked-by: Paul Oranje <por@oranjevos.nl>
5 years agobuild: Accept BIN_DIR parameter for legacy-images
Sven Eckelmann [Mon, 11 Feb 2019 15:26:42 +0000 (16:26 +0100)]
build: Accept BIN_DIR parameter for legacy-images

BIN_DIR can be set to overwrite the output path for new images. This is an
advertised feature for the imagebuilder and is used by systems like
LibreMesh's chef.

The legacy images are build using a new sub-make which doesn't receive the
variable overwrites of the parent make process. As result, the BIN_DIR is
automatically defined to the default value from rules.mk. The images will
therefore not be placed in the output path which was selected by the user.

Providing BIN_DIR as an explicit variable override to the sub-make works
around this problem.

Fixes: 26c771452cd8 ("image.mk: add LegacyDevice wrapper to allow legacy image building code to be used for device profiles")
Reported-by: Paul Spooren <mail@aparcar.org>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
(cherry picked from commit 9a5a10eb6924efa519e1d9e27b61dc254876f9ec)

5 years agoar71xx: Fix 5 GHz MAC address for Archer C60 v2
Adrian Schmutzler [Sat, 26 Jan 2019 16:59:44 +0000 (17:59 +0100)]
ar71xx: Fix 5 GHz MAC address for Archer C60 v2

Looks like C60 v2 needs the MAC address to be calculated
manually, while the C60 v1 gets it correctly without manual
interference.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [added id]
(cherry picked from commit 319c5d7c49503d1afbfb3164b18cf966e11fac6a)

5 years agokernel: bump 4.14 4.14.101
Koen Vandeputte [Fri, 15 Feb 2019 10:04:05 +0000 (11:04 +0100)]
kernel: bump 4.14 4.14.101

Refreshed all patches.

Fixes:
- CVE-2019-3819

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.158
Koen Vandeputte [Fri, 15 Feb 2019 10:02:17 +0000 (11:02 +0100)]
kernel: bump 4.9 to 4.9.158

Refreshed all patches.

Fixes:
- CVE-2019-3819

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.99
Koen Vandeputte [Wed, 13 Feb 2019 10:30:07 +0000 (11:30 +0100)]
kernel: bump 4.14 to 4.14.99

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.156
Koen Vandeputte [Wed, 13 Feb 2019 10:28:09 +0000 (11:28 +0100)]
kernel: bump 4.9 to 4.9.156

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agomt76: update to the latest version
Felix Fietkau [Sun, 3 Feb 2019 19:45:26 +0000 (20:45 +0100)]
mt76: update to the latest version

a9d4c0e mt76: mt76x2: avoid running DPD calibration if tx is blocked
4d7e13f mt76: explicitly disable energy detect cca during scan
e3c1aad mt76: run MAC work every 100ms
4e8766a mt76: clear CCA timer stats in mt76x02_edcca_init
e301f23 mt76: measure the time between mt76x02_edcca_check runs
74075ef mt76: increase ED/CCA tx block threshold

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agokernel: bump 4.14 to 4.14.98
Koen Vandeputte [Thu, 7 Feb 2019 10:06:27 +0000 (11:06 +0100)]
kernel: bump 4.14 to 4.14.98

Refreshed all patches.

Remove upstreamed:
- 100-arm-cns3xxx-fix-writing-to-wrong-PCI-registers-after.patch

Altered patches:
- 721-phy_packets.patch

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.155
Koen Vandeputte [Thu, 7 Feb 2019 10:04:08 +0000 (11:04 +0100)]
kernel: bump 4.9 to 4.9.155

Refreshed all patches.

Remove upstreamed:
- 100-arm-cns3xxx-fix-writing-to-wrong-PCI-registers-after.patch

Altered patches:
- 721-phy_packets.patch

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agomac80211: brcmfmac: fix a possible NULL pointer dereference
Rafał Miłecki [Mon, 11 Feb 2019 10:25:54 +0000 (11:25 +0100)]
mac80211: brcmfmac: fix a possible NULL pointer dereference

This fixes a possible crash in the brcmf_fw_request_nvram_done():
[   31.687293] Backtrace:
[   31.689760] [<c004fb4c>] (__wake_up_common) from [<c004fc38>] (__wake_up_locked+0x1c/0x24)
[   31.698043]  r10:c6794000 r9:00000009 r8:00000001 r7:bf54dda0 r6:a0000013 r5:c78e7d38
[   31.705928]  r4:c78e7d3c r3:00000000
[   31.709528] [<c004fc1c>] (__wake_up_locked) from [<c00502a8>] (complete+0x3c/0x4c)
[   31.717148] [<c005026c>] (complete) from [<bf54590c>] (brcmf_fw_request_nvram_done+0x5c8/0x6a4 [brcmfmac])
[   31.726818]  r7:bf54dda0 r6:c6794000 r5:00001990 r4:c6782380
[   31.732544] [<bf545344>] (brcmf_fw_request_nvram_done [brcmfmac]) from [<c0204e40>] (request_firmware_work_func+0x38/0x60)
[   31.743607]  r10:00000008 r9:c6bdd700 r8:00000000 r7:c72c3cd8 r6:c67f4300 r5:c6bda300
[   31.751493]  r4:c67f4300
[   31.754046] [<c0204e08>] (request_firmware_work_func) from [<c0034458>] (process_one_work+0x1e0/0x318)
[   31.763365]  r4:c72c3cc0
[   31.765913] [<c0034278>] (process_one_work) from [<c0035234>] (worker_thread+0x2f4/0x448)
[   31.774107]  r10:00000008 r9:00000000 r8:c6bda314 r7:c72c3cd8 r6:c6bda300 r5:c6bda300
[   31.781993]  r4:c72c3cc0
[   31.784545] [<c0034f40>] (worker_thread) from [<c003984c>] (kthread+0x100/0x114)
[   31.791949]  r10:00000000 r9:00000000 r8:00000000 r7:c0034f40 r6:c72c3cc0 r5:00000000
[   31.799836]  r4:c735dc00 r3:c79ed540
[   31.803438] [<c003974c>] (kthread) from [<c00097d0>] (ret_from_fork+0x14/0x24)
[   31.810672]  r7:00000000 r6:00000000 r5:c003974c r4:c735dc00
[   31.816378] Code: e5b53004 e1a07001 e1a06002 e243000c (e5934000)
[   31.822487] ---[ end trace a0ffbb07a810d503 ]---

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 83bcacb5215c21e1894fbe3d651d83948479ce91)

5 years agoath9k: register GPIO chip for OF targets
Mathias Kresin [Fri, 7 Dec 2018 08:42:09 +0000 (09:42 +0100)]
ath9k: register GPIO chip for OF targets

This partitialy reverts commit f506de2cdaf9.

Registering the GPIO chip without a parent device completely breaks the
ath9k GPIOs for device tree targets.

As long as boards using the devicetree don't have the gpio-controller
property set for the ath9k node, the unloading of the driver works as
expected.

Register the GPIO chip with the ath9k device as parent only for OF
targets to find a trade-off between the needs of driver developers and
the broken LEDs and buttons seen by users.

Fixes: FS#2098
Signed-off-by: Mathias Kresin <dev@kresin.me>
(cherry picked from commit d35f2a5565fc51fb277f72a8565c871ce1785588)

5 years agonetifd: handle hotplug event socket errors
Hans Dedecker [Sat, 2 Feb 2019 19:43:09 +0000 (20:43 +0100)]
netifd: handle hotplug event socket errors

a2aba5c system-linux: handle hotplug event socket ENOBUFS errors

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agobrcm63xx: HG655b: fix the imagetag at dts
Daniel Gonzalez Cabanelas [Sun, 9 Dec 2018 20:29:48 +0000 (21:29 +0100)]
brcm63xx: HG655b: fix the imagetag at dts

Fix the imagetag on the HG655b to allow a correct partition detection at boot time.

It turns out that it was defined at the wrong partition. Just move the imagetag to
the linux firmware partition.

The bug is present since the 18.06 release. Without this fix, the board won't boot.

Fixes: a27d59bb4274 ("brcm63xx: switch to new partition layout specification")
Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
(cherry picked from commit 26d4cb2ca7acde1254f6ce6c0a54e0aca1489a0f)

5 years agokernel: bump 4.14 to 4.14.97
Koen Vandeputte [Thu, 31 Jan 2019 15:38:20 +0000 (16:38 +0100)]
kernel: bump 4.14 to 4.14.97

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.154
Koen Vandeputte [Thu, 31 Jan 2019 15:36:37 +0000 (16:36 +0100)]
kernel: bump 4.9 to 4.9.154

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agomt76: update to the latest version
Felix Fietkau [Thu, 31 Jan 2019 22:17:49 +0000 (23:17 +0100)]
mt76: update to the latest version

a4ec45c mt7603: fix LED support (copy CFLAGS from main Makefile)
edda5c5 mt76x02: use mask for vifs
dd52191 mt76x02: use commmon add interface for mt76x2u
a80acaf mt76x02: initialize mutli bss mode when set up address
38e832d mt76x02: minor beaconing init changes
171adaf mt76x02: init beacon config for mt76x2u
dcab682 mt76: beaconing fixes for USB
ff81de1 mt76x02: enable support for IBSS and MESH
8027b5d mt7603: remove copyright headers
e747e80 mt76: fix software encryption issues
2afa0d7 mt7603: remove WCID override for software encrypted frames

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agokernel: bump 4.14 to 4.14.96
Koen Vandeputte [Mon, 28 Jan 2019 09:49:44 +0000 (10:49 +0100)]
kernel: bump 4.14 to 4.14.96

Refreshed all patches.

New symbol added:
- CONFIG_CIFS_ALLOW_INSECURE_LEGACY

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.153
Koen Vandeputte [Mon, 28 Jan 2019 09:48:09 +0000 (10:48 +0100)]
kernel: bump 4.9 to 4.9.153

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agomt76: update to the latest version
Felix Fietkau [Wed, 30 Jan 2019 14:17:01 +0000 (15:17 +0100)]
mt76: update to the latest version

c3da1aa mt7603: trigger beacon stuck detection faster
7a53138 mt7603: trigger watchdog reset if flushing CAB queue fails
6eef33b mt7603: remove mt7603_txq_init
ae30c30 mt76: add driver callback for when a sta is associated
0db925f mt7603: update HT/VHT capabilities after assoc
b5ac8e4 mt7603: initialize LED callbacks only if CONFIG_MT76_LEDS is set
c989bac mt76x0: eeprom: fix chan_vs_power map in mt76x0_get_power_info
24bd2c0 mt76x0: phy: report target_power in debugfs
bc7ce2a mt76x0: init: introduce mt76x0_init_txpower routine

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agoOpenWrt v18.06.2: revert to branch defaults
Jo-Philipp Wich [Wed, 30 Jan 2019 12:34:55 +0000 (13:34 +0100)]
OpenWrt v18.06.2: revert to branch defaults

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoOpenWrt v18.06.2: adjust config defaults v18.06.2
Jo-Philipp Wich [Wed, 30 Jan 2019 12:34:49 +0000 (13:34 +0100)]
OpenWrt v18.06.2: adjust config defaults

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agobase-files: config_get: prevent filename globbing
Günther Kelleter [Mon, 8 Oct 2018 13:30:00 +0000 (15:30 +0200)]
base-files: config_get: prevent filename globbing

When config_get is called as "config_get section option" the option
is unexpectedly globbed by the shell which differs from the way options
are read to a variable with "config_get variable section option".
Add another layer of double quotes to fix it.

Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
(backported from commit c3389ab135400fba0cb710d9c6c63df2f563d9d9)

5 years agodnsmasq: backport missing braces fix
Jo-Philipp Wich [Wed, 30 Jan 2019 12:01:24 +0000 (13:01 +0100)]
dnsmasq: backport missing braces fix

Fold upstream fix d2d4990
("Fix missing braces in 8eac67c0a15b673c8d27002c248651b308093e4") into
the already existing static lease fix patch.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agobuild: fix umask detection bashism
Thorsten Glaser [Mon, 22 Oct 2018 17:28:50 +0000 (19:28 +0200)]
build: fix umask detection bashism

the leading 0 is optional and not emitted by some shells

Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
(cherry picked from commit da5bee5345ce8f66eb36b8993b87b684e5cce614)

5 years agobuild: fix STAGING_DIR cleaning for packages
Jeffery To [Wed, 12 Dec 2018 17:33:36 +0000 (01:33 +0800)]
build: fix STAGING_DIR cleaning for packages

This fixes two issues with cleaning package files from STAGING_DIR:

* CleanStaging currently can only remove files and not directories. This
  changes CleanStaging to use clean-package.sh, which does remove
  directories.

* Because of the way directories are ordered in the staging files list,
  clean-package.sh currently tries (and fails) to remove parent
  directories before removing subdirectories. This changes
  clean-package.sh to process the staging files list in reverse, so that
  subdirectories are removed first.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
(cherry picked from commit a1170936798e519776de605d6986ccb72f04cb06)

5 years agoar71xx: use correct wan mac address for the TP-Link Archer C7 v4
David Santamaría Rogado [Fri, 18 Jan 2019 21:28:41 +0000 (22:28 +0100)]
ar71xx: use correct wan mac address for the TP-Link Archer C7 v4

The correct MAC address for this device is lan_mac +1, there is no
need to set lan_mac so use base_mac variable instead lan_mac.

Based on this PR for ath79:
https://github.com/openwrt/openwrt/pull/1726

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
[fix alphabetical ordering, reword subject]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 4bcf58135210736f2a1603609d2a76b3e188e2ad)

5 years agoar71xx: Add usb drivers in Archer C7 v4/v5 images
Daniel Halmschlager [Tue, 4 Dec 2018 19:40:10 +0000 (20:40 +0100)]
ar71xx: Add usb drivers in Archer C7 v4/v5 images

This commit adds the default usb packages
- kmod-usb-core
- kmod-usb2
- kmod-usb-ledtrig-usbport
for Archer C7 v4 and v5.
(The C7 v5 configuration is based on the v4, therefore the change for v4
also applies for v5.)

Signed-off-by: Daniel Halmschlager <dh@dev.halms.at>
(backported from commit 99e212171abf44d6e0f7e7ba50a229ad7b3f3a34)

5 years agoopenssl: bump to 1.0.2q
Sven Roederer [Mon, 28 Jan 2019 19:11:50 +0000 (20:11 +0100)]
openssl: bump to 1.0.2q

This fixes the following security problems:
 * CVE-2018-5407: Microarchitecture timing vulnerability in ECC scalar multiplication
 * CVE-2018-0734: Timing vulnerability in DSA signature generation
 * Resolve a compatibility issue in EC_GROUP handling with the FIPS Object Module

Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
(cherry picked from commit 989060478ae270885727d91c25b9b52b0f33743c)

5 years agodnsmasq: backport upstream static lease fix
Jo-Philipp Wich [Wed, 30 Jan 2019 10:42:27 +0000 (11:42 +0100)]
dnsmasq: backport upstream static lease fix

Backport and rebase upstream fix 18eac67
("Fix entries in /etc/hosts disabling static leases.")

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agowireguard: bump to 0.0.20190123
Jason A. Donenfeld [Wed, 23 Jan 2019 13:49:44 +0000 (14:49 +0100)]
wireguard: bump to 0.0.20190123

* tools: curve25519: handle unaligned loads/stores safely

This should fix sporadic crashes with `wg pubkey` on certain architectures.

* netlink: auth socket changes against namespace of socket

In WireGuard, the underlying UDP socket lives in the namespace where the
interface was created and doesn't move if the interface is moved. This
allows one to create the interface in some privileged place that has
Internet access, and then move it into a container namespace that only
has the WireGuard interface for egress. Consider the following
situation:

1. Interface created in namespace A. Socket therefore lives in namespace A.
2. Interface moved to namespace B. Socket remains in namespace A.
3. Namespace B now has access to the interface and changes the listen
port and/or fwmark of socket. Change is reflected in namespace A.

This behavior is arguably _fine_ and perhaps even expected or
acceptable. But there's also an argument to be made that B should have
A's cred to do so. So, this patch adds a simple ns_capable check.

* ratelimiter: build tests with !IPV6

Should reenable building in debug mode for systems without IPv6.

* noise: replace getnstimeofday64 with ktime_get_real_ts64
* ratelimiter: totalram_pages is now a function
* qemu: enable FP on MIPS

Linux 5.0 support.

* keygen-html: bring back pure javascript implementation

Benoît Viguier has proofs that values will stay well within 2^53. We
also have an improved carry function that's much simpler. Probably more
constant time than emscripten's 64-bit integers.

* contrib: introduce simple highlighter library

This is the highlighter library being used in:
- https://twitter.com/EdgeSecurity/status/1085294681003454465
- https://twitter.com/EdgeSecurity/status/1081953278248796165

It's included here as a contrib example, so that others can paste it into
their own GUI clients for having the same strictly validating highlighting.

* netlink: use __kernel_timespec for handshake time

This readies us for Y2038. See https://lwn.net/Articles/776435/ for more info.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
(cherry picked from commit bbcd0634f8c9769a336386f8df471231d24a27cc)

5 years agowireguard: Update to snapshot 0.0.20181218
Daniel Engberg [Mon, 24 Dec 2018 09:35:44 +0000 (10:35 +0100)]
wireguard: Update to snapshot 0.0.20181218

Update WireGuard to 0.0.20181218

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit 9a37c95431b5401c309b7731920daa964842bdee)

5 years agombedtls: update to 2.14.1 for 18.06
Stijn Segers [Sat, 22 Dec 2018 10:16:17 +0000 (11:16 +0100)]
mbedtls: update to 2.14.1 for 18.06

Updates mbedtls to 2.14.1. This builds on the previous master commit 7849f74117ce83e4cfcd1448a22cc05dbf9b3486.

Fixes in 2.13.0:
* Fixed a security issue in the X.509 module which could lead to a buffer overread during certificate extensions parsing.
* Several bugfixes.
* Improvements for better support for DTLS on low-bandwidth, high latency networks with high packet loss.

Fixes in 2.14.1:
* CVE-2018-19608: Local timing attack on RSA decryption

Includes master commit 9e7c4702a1f4e49113d10bc736f50e8a06bdb8ba 'mbedtls: fix compilation on ARM < 6'.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
[Update to 2.14.1]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
[Adapted and squashed for 18.06.1+]
Signed-off-by: Stijn Segers <foss@volatilesystems.org>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agouhttpd: disable concurrent requests by default
Jo-Philipp Wich [Wed, 30 Jan 2019 09:12:00 +0000 (10:12 +0100)]
uhttpd: disable concurrent requests by default

In order to avoid straining CPU and memory resources on lower end devices,
avoid running multiple CGI requests in parallel.

Ref: https://forum.openwrt.org/t/high-load-fix-on-openwrt-luci/29006
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit c6aa9ff38870a30dbe6da17e4edad6039fe10ddf)

5 years agokernel: bump 4.14 to 4.14.95
Koen Vandeputte [Wed, 23 Jan 2019 13:10:59 +0000 (14:10 +0100)]
kernel: bump 4.14 to 4.14.95

Refreshed all patches.

Removed superseded patches:
- 0400-Revert-MIPS-smp-mt-Use-CPU-interrupt-controller-IPI-.patch

Add upstream patch to fix build error on ipq806x
- 420-enable-CONFIG_MMC_SDHCI_IO_ACCESSORS.patch

Compile-tested on: cns3xxx, imx6, ipq806x
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.152
Koen Vandeputte [Wed, 23 Jan 2019 13:08:31 +0000 (14:08 +0100)]
kernel: bump 4.9 to 4.9.152

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agouboot-fritz4040: fix crash caused by interaction with gcc 7.1+
Christian Lamparter [Fri, 25 Jan 2019 17:41:21 +0000 (18:41 +0100)]
uboot-fritz4040: fix crash caused by interaction with gcc 7.1+

David Bauer reported a u-boot crash (data abort) at a odd
place (byteswap) when he ran ping/tftp on his 7530.

|(FRITZ7530) # ping 192.168.1.70
|eth0 PHY0 up Speed :1000 Full duplex
|eth0 PHY1 Down Speed :10 Half duplex
|eth0 PHY2 Down Speed :10 Half duplex
|eth0 PHY3 Down Speed :10 Half duplex
|eth0 PHY4 Down Speed :10 Half duplex
|Using eth0 device
|data abort
|pc : [<84234774>]      lr : [<842351a4>]
|sp : 8412fdb0  ip : 0000009b     fp : 00000000
|r10: 00000000  r9 : 00000001     r8 : 8412ff68
|r7 : 00000000  r6 : 0000002a     r5 : 84244e90  r4 : 8425e28e
|r3 : 84244e90  r2 : 14000045     r1 : 8412fdb0  r0 : 8425e28e
|Flags: nZCv  IRQs off  FIQs off  Mode SVC_32
|Resetting CPU ...
|
|resetting ...

This issue is caused by switch from gcc 5.5 to 7.1+ as explained
in the upstream patch:

|From a768e513b07b5999a8e7d7740ac8d9da04ee7e51 Mon Sep 17 00:00:00 2001
|From: Denis Pynkin <denis.pynkin@collabora.com>
|Date: Fri, 21 Jul 2017 19:28:42 +0300
|Subject: [PATCH] net: Use packed structures for networking
|
|PXE boot is broken with GCC 7.1 due option '-fstore-merging' enabled
|by default for '-O2':
|
|BOOTP broadcast 1
|data abort
|pc : [<8ff8bb30>]          lr : [<00004f1f>]
|reloc pc : [<17832b30>]    lr : [<878abf1f>]
|sp : 8f558bc0  ip : 00000000     fp : 8ffef5a4
|r10: 8ffed248  r9 : 8f558ee0     r8 : 8ffef594
|r7 : 0000000e  r6 : 8ffed700     r5 : 00000000  r4 : 8ffed74e
|r3 : 00060101  r2 : 8ffed230     r1 : 8ffed706  r0 : 00000ddd
|Flags: nzcv  IRQs off  FIQs off  Mode S
|
|Core reason is usage of structures for network headers without packed
|attribute.

This patch just backports the upstream change to the
uboot-fritz4040 package.

Reported-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agomt76: update to the latest version
Felix Fietkau [Sun, 20 Jan 2019 17:01:57 +0000 (18:01 +0100)]
mt76: update to the latest version

d273ddd mt7603: fix number of frames limit in .release_buffered_frames
63bf183 mt76: add channel switch announcement support
e45db12 mt7603: fix tx status info
9d11596 mt7603: discard bogus tx status data
4bcb2f9 mt7603: fix txd q_idx field value
4206db7 mt76: set IEEE80211_HW_NEEDS_UNIQUE_STA_ADDR flag
c4e4982 mt7603: set IEEE80211_HW_TX_STATUS_NO_AMPDU_LEN
702f557 mt7603: use maximum tx count for buffered multicast packets
158529d mt7603: fix PSE reset retry sequence
fc31457 mt7603: implement support for SMPS
3e9a7d5 Revert "mt7603: fix txd q_idx field value"
815fd03 mt7603: fix CCA timing values
b35cc8e mt7603: set timing on channel change before starting MAC
79b337c mt7603: move CF-End rate update to mt7603_mac_set_timing
3df341d mt7603: avoid redundant MAC timing updates
1c751f3 mt76: avoid scheduling tx queues for powersave stations
2efa389 mt7603: limit station power save queue length to 64
63a79ff mt76: do not report out-of-range rx nss
fe30bd3 mt7603: issue PSE reset on tx hang
ce8cc5d mt7603: issue PSE client reset on init
e342cc5 mt7603: fix buffered multicast count register
aa470d8 mt7603: fix buffered multicast queue flush
b4ee01f mt76: fix tx status timeout processing
7d00d58 mt76x02: fix per-chain signal strength reporting
64abb35 mt76: fix corrupted software generated tx CCMP PN
0b939dc mt76: fix resetting software IV flag on key delete

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agokernel: bump 4.14 to 4.14.94
Koen Vandeputte [Fri, 18 Jan 2019 10:26:17 +0000 (11:26 +0100)]
kernel: bump 4.14 to 4.14.94

Refreshed all patches.

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.151
Koen Vandeputte [Fri, 18 Jan 2019 10:23:17 +0000 (11:23 +0100)]
kernel: bump 4.9 to 4.9.151

Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoopkg: update to latest Git head
Jo-Philipp Wich [Fri, 18 Jan 2019 17:43:18 +0000 (18:43 +0100)]
opkg: update to latest Git head

This update fixes some cosmetical issues and a number of segmentation
faults when parsing lists having Conflicts or Replaces tags.

d217daf libopkg: fix replacelist parsing and writing
9dd9a07 libopkg: fix segmentation fault when traversing conflicts
34571ba libopkg: consider provided packages in pkg_vec_mark_if_matches()
18740e6 opkg_download: print error when fork() fails
e3d7330 libopkg: don't print unresolved dependencies twice

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 1bd18f2b5cbf1c9c384e9725eff7804decf88c90)

5 years agoopkg: drop argument from check_signature in opkg.conf
Jonas Gorski [Mon, 10 Sep 2018 09:42:53 +0000 (11:42 +0200)]
opkg: drop argument from check_signature in opkg.conf

check_signature is a bool option and doesn't take any arguments. The
presence of the 1 falsely suggests setting it to 0 disables the check,
while the option actually needs to be removed or commented out to be
disabled. So remove the argument to make it more clear.

Fixes: beca028bd6bb ("build: add integration for managing opkg package feed keys")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
(cherry picked from commit d3bf5ff9bc7b55b2a3dab93853b33a0cd2c4ca47)

5 years agoramips: mt7621: fix 5GHz WiFi LED on ZBT WG3526
Andreas Ziegler [Thu, 27 Dec 2018 14:34:18 +0000 (15:34 +0100)]
ramips: mt7621: fix 5GHz WiFi LED on ZBT WG3526

This fixes the 5GHz WiFi LED which was previously not working.

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
(cherry picked from commit d492da702a2118b34ced9772586c5a6de68e70fd)

5 years agoodhcpd: fix onlink IA check (FS#2060)
Hans Dedecker [Wed, 16 Jan 2019 21:29:33 +0000 (22:29 +0100)]
odhcpd: fix onlink IA check (FS#2060)

ae16950 dhcpv6-ia: fix compiler warning
c70d5cf dhcpv6-ia: fix onlink IA check (FS#2060)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agokmod-sched-cake: bump to latest cake
Kevin Darbyshire-Bryant [Thu, 29 Nov 2018 16:19:22 +0000 (16:19 +0000)]
kmod-sched-cake: bump to latest cake

331ac70 Correctly update parent qlen when splitting GSO packets
581967c Makefile: Hook into Kbuild/Kconfig infrastructure

The parent qlen change is potentially relevant for us, the makefile is a
no-op.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 55e0a7131a4b6e98d7cd623727f8ac5c4702b60d)

5 years agokernel: bump 4.14 to 4.14.93
Koen Vandeputte [Tue, 15 Jan 2019 11:41:26 +0000 (12:41 +0100)]
kernel: bump 4.14 to 4.14.93

Refreshed all patches.

Remove upstreamed:
- 510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch

Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.150
Koen Vandeputte [Tue, 15 Jan 2019 10:57:34 +0000 (11:57 +0100)]
kernel: bump 4.9 to 4.9.150

Refreshed all patches.

Remove upstreamed:
- 510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch

Altered patches:
- 024-7-net-reorganize-struct-sock-for-better-data-locality.patch

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agomt76: update to the latest version
Felix Fietkau [Mon, 14 Jan 2019 14:16:04 +0000 (15:16 +0100)]
mt76: update to the latest version

6745830 mt76: fix race condition in station removal
7e5c819 mt76: add mt76_sta_remove helper
75aa36e mt7603: use wcid/wcid_mask from struct mt76_dev
fd85ff9 mt7603: use mt76_sta_remove helper
0848d2d mt7603: simplify mt7603_mcu_msg_send, remove skb_ret handling
83a80ca mt76: request tx status for powersave released EOSP packet
df5c797 mt76: fix uninitialized mutex access setting rts threshold
0bfa98e mt76: introduce mt76x02_config_mac_addr_list routine
4248446 mt76x0: pci: enable VHT rates in IBSS mode
f75efd8 mt76x2u: phy: add TX_SHAPING calibration
c1d67b4 mt76x2u: phy: run phy_channel_calibrate after channel switch
9fe0fe8 mt76x2u: main: use mt76x02_bss_info_changed utility routine
3fc95d7 mt76x2u: init: remove mt76x2u_init_beacon_offsets routine
88f6883 mt76: remove wait argument from mt76x02_mcu_calibrate
009ab91 mt76: clean up more unused EXPORT_SYMBOLs
963768d mt76x02: fix regression in tx station race condition fix
d7788cc mt76: mt76x02: make group_wcid the first member in struct mt76x02_vif
e65ad4c mt7603: make group_wcid the first member in struct mt7603_vif
7b1373e mt76: mt76x02: remove mt76x02_txq_init
a97127b mt76: replace sta_add/remove ops with common sta_state function
13f1e82 mt7603: clear wtbl entry for removed stations
90e2c1b mt7603: add mt7603_wtbl_set_skip_tx, change mt7603_wtbl_set_ps users
41931e4 mt7603: toggle skip_tx on station add/remove
d0fdf01 mt7603: avoid unnecessary wtbl writes for ps-filter
96b3b3d mt76x2u: main: fix typo setting sta_state mac80211 callback
471d397 mt7603: fix priority for buffered multicast packets
3873e82 mt7603: fix MT_BMAP_0/MT_GROUP_THD_0 register initializion for mt7628
749d5c3 mt7603: fix reserved page handling for mt7628
d22799b mt7603: reduce reserved pages for beacons
42c5281 mt7603: fix maximum frame size in scheduler init
fa7335b mt76: fix potential NULL pointer dereference in mt76_stop_tx_queues
84aa12a mt76: fix potential null pointer deref in mt76_sta_add
7c4c33c mt7603: skip efuse tx power data for mt7628
ca2c875 mt7603: add support for accessing remapped registers via ops
b44d793 mt7603: clear PSE redirections before MCU init
82363ab mt7603: move tx status to rx queue 0
c09e8a4 mt7603: fix buffering of tx packets for powersave clients
4734108 mt7603: use mt7603_wtbl_clear on station removal
9428e34 mt7603: fix watchdog reset sequence
b3f82a3 mt7603: report PSE reset failures via debugfs
a301dec mt7603: add back PSE client reset code
94cebfc mt7603: fix handling lost interrupt events during watchdog reset
b38fe7d mt7603: only issue PSE reset on PSE stuck
da666a7 mt7603: issue PSE reset if firmware debug register indicates stuck queues
5fb60a7 mt7603: fix aggregation size handling
31cd20e mt7603: issue PSE reset on stuck beacon
4063ae1 mt7603: check for PSE hang / stuck beacon first
00e03b9 mt7603: fix MT_WF_PHY_CR_RXTD_BASE definition
c3efb5d mt7603: add support for detecting MT7688 and single stream devices
2a136cb mt7603: fix TKIP key setup
cd456ca mt7603: disable broken support for WEP hardware encryption
3ecb7f8 mt7603: fix hardware queue assignment
6ac9653 mt7603: fix CAB queue limits
d22feb0 mt7603: move cab queue enabling to pre-tbtt tasklet
44bb372 mt7603: fix CAB queue flush mask
5a5b396 mt76: throttle transmission of buffered multicast packets
8084323 mt7603: implement code for adjusting energy detect CCA thresholds
8929a6e mt7603: increase MCU timeout
f2ba65f mt7603: update firmware to 20161027164355
0ad998b mt7603: increase aggregation limits (based on vendor driver changes)
da00af0 mt7603: clear bit 18 in MT_SEC_SCR to fix ICV error
417ab77 mt7603: improve recovery from PSE reset failure
fea7ad8 mt76: move mt76x02_phy_get_min_avg_rssi to mt76 core
9d009be mt7603: add dynamic sensitivity tuning based on false CCA events
2c8e9ac mt7603: initialize channel maximum power from eeprom data
b2cc29b mt76: move mt76x02_get_txpower to mt76 core
6203d46 mt7603: add support for setting transmit power
294e095 mt7603: reset DMA scheduler on MT7628
8178f0d mt7603: apply efuse data only when it exists
e67e551 mt76: dma: remove napi from mt76_dma_rx_fill signature
0490bd2 mt76: usb: do not build the skb if reported len does not fit in buf_size
eb076ae mt76: Add missing include of linux/module.h
1d2819e mt76: fix typo in mt76x02_check_mac_err routine
9c9fae3 mt76: mac: run mt76x02_mac_work routine atomically
6be90b6 mt76: usb: avoid queue/status spinlocks while passing tx status to mac80211
40dad32 mt76x0: pci: fix ACS support
d94e9c4 mt76x02: do not set protection on set_rts_threshold callback
0d83d73 mt76x02: fixup MT_PROT_RATE_* defines
628f8d7 mt76x02: set protection according to ht operation element
f7d8c17 mt76x0: configure MT_VHT_HT_FBK_CFG1
10f57cf mt76x2: add static qualifier to mt76x2_init_hardware
37b2ad3 mt76: dfs: run mt76x02_dfs_set_domain atomically
51b6daf mt76x2: init: set default value for MT_TX_LINK_CFG
9661da4 mt76: add energy detect CCA support to mt76x{0,2}e drivers
876d0e9 mt76: mac: minor optimizations in mt76x02_mac_tx_rate_val
c78e317 mt76: dma: do not build skb if reported len does not fit in buf_size
3598046 mt76: mmio: introduce mt76x02_check_tx_hang watchdog
58988a3 mt76: fix signedness of rx status signal field
bce700d mt7603: fix signal strength reporting on single-stream devices
148219d mt7603: fix checkpatch issues
2a092e2 mt7603: fix per-rate retry accounting
962152b mt7603: fix WMM TXOP limit configuration
24ec040 mt7603: fix BSSID configuration in AP mode
48fb011 mt7603: fix CF-End transmit rate when 11b stations are connected
9daa5ff mt76: make const array 'data' static, shrinks object size
7d4a95c mt76: dma: avoid indirect call in mt76_dma_tx_queue_skb
f84b008 mt76: fix tx status reporting for non-probing frames
8167074 Revert "mt7603: update firmware to 20161027164355"
2ad54b2 mt76: move wcid rssi ewma init to mt76 core
d77c861 mt76: fix rssi ewma tracking
eca96cd mt76: use proper name for __MT76x02_H macro
d1bc504 mt76: fix building without CONFIG_LEDS_CLASS
a946b78 mt76: add led support to mt76x0e driver

Signed-off-by: Felix Fietkau <nbd@nbd.name>