openwrt/staging/981213.git
2 years agoscripts: make sure sort-order is independent from locale
Daniel Golle [Wed, 6 Apr 2022 16:25:16 +0000 (17:25 +0100)]
scripts: make sure sort-order is independent from locale

Set LC_ALL=C environment variable when calling 'sort' as the sort
order otherwise depends on the locale set.

Fixes: 56ce110b73 ("scripts: make sure conffiles are sorted")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agodnsmasq: add procd interface index tracking
Valentyn Datsko [Wed, 6 Apr 2022 13:13:13 +0000 (16:13 +0300)]
dnsmasq: add procd interface index tracking

Problem exist when dnsmasq is exclusively bind to particular interface.
After reconfiguring or restarting this interface, its index changes, but
dnsmasq uses the old one. When this problem occurs, dnsmasq does not
listen on the correct interface so DHCP does not work, and clients do not
get an IP address. Procd netdev param can be added to restart dnsmasq when
the interface index is changed.

Signed-off-by: Valentyn Datsko <valikk.d@gmail.com>
[combined into a single &&-connected statement]
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agobridger: add bridge forwarding accelerator
Felix Fietkau [Wed, 6 Apr 2022 12:09:34 +0000 (14:09 +0200)]
bridger: add bridge forwarding accelerator

This package uses BPF to create a fast path which improves bridging performance
by bypassing the bridge layer. It also supports creating tc offload rules for
hardware that supports it.
Hardware offload support can be used with MT7622 + MT7915 once it is merged

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agokernel: set SOURCE_DATE_EPOCH for initramfs root dir
Daniel Golle [Wed, 6 Apr 2022 11:19:31 +0000 (12:19 +0100)]
kernel: set SOURCE_DATE_EPOCH for initramfs root dir

Make sure the timestamp of the root directory of the initramfs is set
to SOURCE_DATE_EPOCH as well.

Fixes: 29d7461d11 ("kernel: set options to make external initramfs reproducible")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agoqosify: update to the latest version
Felix Fietkau [Tue, 5 Apr 2022 19:27:40 +0000 (21:27 +0200)]
qosify: update to the latest version

Replace the tc-full dependency with tc + libnl-tiny

1cd5e12eecdc loader/interface: attach bpf program directly using netlink

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoubox: update to the latest version
Felix Fietkau [Tue, 5 Apr 2022 15:32:40 +0000 (17:32 +0200)]
ubox: update to the latest version

b87a4fdca634 kmodloader: support loading module options and blacklist from /etc/modules.conf

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agokernel: package mhi mbim driver
Koen Vandeputte [Tue, 5 Apr 2022 13:07:36 +0000 (15:07 +0200)]
kernel: package mhi mbim driver

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2 years agokernel: package mhi wwan ctrl driver
Koen Vandeputte [Tue, 5 Apr 2022 13:05:02 +0000 (15:05 +0200)]
kernel: package mhi wwan ctrl driver

MHI WWAN CTRL allows QCOM-based PCIe modems to expose different modem
control protocols/ports to userspace, including AT, MBIM, QMI, DIAG
and FIREHOSE. These protocols can be accessed directly from userspace
(e.g. AT commands) or via libraries/tools (e.g. libmbim, libqmi, libqcdm)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2 years agokernel: package mhi network driver
Koen Vandeputte [Fri, 1 Apr 2022 08:50:46 +0000 (10:50 +0200)]
kernel: package mhi network driver

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2 years agokernel: package mhi pci driver
Koen Vandeputte [Tue, 5 Apr 2022 12:53:01 +0000 (14:53 +0200)]
kernel: package mhi pci driver

This driver provides MHI PCI controller driver for devices
such as Qualcomm SDX55 based PCIe modems

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2 years agokernel: package mhi bus driver
Koen Vandeputte [Fri, 1 Apr 2022 08:50:25 +0000 (10:50 +0200)]
kernel: package mhi bus driver

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2 years agoath79: mikrotik: enable ecc hamming algorithm for kernel 5.15
Koen Vandeputte [Tue, 5 Apr 2022 11:52:25 +0000 (13:52 +0200)]
ath79: mikrotik: enable ecc hamming algorithm for kernel 5.15

This algorithm has it's own symbol now.
Enable it to fix nand support

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2 years agoath79: mikrotik: add 5.15 support for mikrotik subtarget
Koen Vandeputte [Tue, 5 Apr 2022 11:53:20 +0000 (13:53 +0200)]
ath79: mikrotik: add 5.15 support for mikrotik subtarget

Tested on RB922

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2 years agokernel: add missing symbol for 5.15
Koen Vandeputte [Tue, 5 Apr 2022 10:28:42 +0000 (12:28 +0200)]
kernel: add missing symbol for 5.15

Driver for the National Semiconductor DP83640 PHYTER (DP83640_PHY) [N/m/y/?] (NEW)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2 years agoath79: fix ar934x spi driver delays
Oskari Lemmela [Wed, 26 Jan 2022 06:38:43 +0000 (08:38 +0200)]
ath79: fix ar934x spi driver delays

Backport spi driver delay fixes from the 5.17-rc1 kernel.

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
[port also to kernel 5.15]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2 years agoCI: usability improvements for tools
Paul Spooren [Wed, 30 Mar 2022 00:43:17 +0000 (01:43 +0100)]
CI: usability improvements for tools

* Always store build logs
* Store .config as an artifact
* Rename job to `tools-{ os }` for log archive without spaces
* Run CI job on changes to the CI file itself

Signed-off-by: Paul Spooren <mail@aparcar.org>
2 years agobpf-headers: update to linux 5.15
Felix Fietkau [Mon, 4 Apr 2022 15:48:57 +0000 (17:48 +0200)]
bpf-headers: update to linux 5.15

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agogrub2: add missing license
Paul Spooren [Mon, 4 Apr 2022 11:17:25 +0000 (13:17 +0200)]
grub2: add missing license

The PKG_LICENSE field was missing.
While at it, normalize the Makefile a bit.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2 years agoqoriq: enable support for Marvell Alaska PHYs
Stijn Tintel [Sun, 3 Apr 2022 18:31:19 +0000 (21:31 +0300)]
qoriq: enable support for Marvell Alaska PHYs

The WatchGuard Firebox M200 and M300 use a Marvell 88e1543 PHY for the
first 3 ethernet ports. This PHY is supported by the Marvell Alaska PHY
driver, so enable it.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agoRevert "kernel: backport MT7530 VLAN fix"
Stijn Tintel [Sun, 3 Apr 2022 16:08:45 +0000 (19:08 +0300)]
Revert "kernel: backport MT7530 VLAN fix"

There are various reports on Github and in the forum that this commit
causes multiple problems.

This reverts commit ee6ba216d8ba1b02154c287e64d709a8bc7b0054.

Fixes: #9420
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agokernel: load device-mapper early on boot
Daniel Golle [Sun, 3 Apr 2022 15:19:31 +0000 (16:19 +0100)]
kernel: load device-mapper early on boot

Previously commit openwrt/packages@3abb7cb ("lvm2: Added script and updated Makefile[...]")
couldn't actually work and allow rootfs_data to be stored on a LVM2 as
the necessary kernel modules had not been loaded at this point.
Fix this by loading device-mapper modules early at boot.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agoocteon: Introduce 5.15 testing kernel
Donald Hoskins [Fri, 1 Apr 2022 04:30:53 +0000 (00:30 -0400)]
octeon: Introduce 5.15 testing kernel

octeon/patches-5.10 -> octeon/patches-5.15
Removed 140-octeon_e300_support.patch as E300 support appears to be upstreamed.
Reworked 130-add_itus_support.patch to compensate for the upstreaming of E300

octeon/config-5.15
The following Kernel Symbols were ADDED:
Line 5: +CONFIG_AF_UNIX_OOB=y
Line 6: +CONFIG_AHCI_OCTEON=y
Line 9: +CONFIG_ARCH_KEEP_MEMBLOCK=y
Line 16: +CONFIG_ATA=y
Line 17: +CONFIG_BINARY_PRINTF=y
Line 29: +CONFIG_CPU_R4K_FPU=y
Line 45: +CONFIG_FWNODE_MDIO=y
Line 51: +CONFIG_GENERIC_FIND_FIRST_BIT=y
Line 59: +CONFIG_GLOB=y
Line 61: +CONFIG_GPIO_CDEV=y
Line 77: +CONFIG_LTO_NONE=y
Line 85: +CONFIG_MIPS_FP_SUPPORT=y
Line 93: +CONFIG_NET_SELFTESTS=y
Line 94: +CONFIG_NET_SOCK_MSG=y
Line 105: +CONFIG_PATA_OCTEON_CF=y
Line 106: +CONFIG_PATA_TIMINGS=y
Line 114: +CONFIG_PTP_1588_CLOCK_OPTIONAL=y
Line 121: +CONFIG_SATA_AHCI_PLATFORM=y
Line 122: +CONFIG_SATA_HOST=y
Line 124: +CONFIG_SCSI_COMMON=y
Line 132: +CONFIG_SOCK_RX_QUEUE_MAPPING=y
Line 157: +CONFIG_USB_XHCI_HCD=y
Line 158: +CONFIG_USB_XHCI_PLATFORM=y

The following kernel symbols were REMOVED:
Line 21: -CONFIG_BLK_SCSI_REQUEST=y
Line 37: -CONFIG_ENABLE_MUST_CHECK=y
Line 69: -CONFIG_HOLES_IN_ZONE=y
Line 102: -CONFIG_OF_NET=y
Line 140: -CONFIG_SYS_SUPPORTS_HUGETLBFS=y

Compiled for Itus Shield, Boots successfully, continuing to test
for existing 5.10 memory leak.

Signed-off-by: Donald Hoskins <grommish@gmail.com>
[refresh patches]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agoRevert "octeon: mark source-only"
Stijn Tintel [Sun, 3 Apr 2022 02:24:17 +0000 (05:24 +0300)]
Revert "octeon: mark source-only"

The memory leak is fixed by the kernel patches backported in the
previous commit.

This reverts commit 1fa8780056a8c7a2e26c8b4d5e6979232f117349.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agokernel: backport pgalloc memory leak fix
Stijn Tintel [Sun, 3 Apr 2022 02:14:06 +0000 (05:14 +0300)]
kernel: backport pgalloc memory leak fix

Backport a fix for the massive memory leak observed in Octeon after
switching to kernel 5.10.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agokernel: add missing symbol
Stijn Tintel [Sat, 2 Apr 2022 20:41:27 +0000 (23:41 +0300)]
kernel: add missing symbol

Enabling KERNEL_KPROBES exposes KERNEL_BPF_KPROBE_OVERRIDE. Add a build
option for it to fix build failures with KERNEL_KPROBES enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agobpf-headers: support CONFIG_HZ=300
Felix Fietkau [Fri, 25 Mar 2022 11:14:40 +0000 (12:14 +0100)]
bpf-headers: support CONFIG_HZ=300

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoimx: base-files: drop redundant space after case keywords
Piotr Dymacz [Mon, 14 Mar 2022 13:39:37 +0000 (14:39 +0100)]
imx: base-files: drop redundant space after case keywords

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2 years agokernel: modules: drop 'AddDepends/bluetooth' calls
Piotr Dymacz [Fri, 11 Mar 2022 17:58:36 +0000 (18:58 +0100)]
kernel: modules: drop 'AddDepends/bluetooth' calls

Function 'AddDepends/bluetooth' doesn't exist in our codebase.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2 years agolayerscape: image: drop redundant parameter from kernel build recipe
Piotr Dymacz [Fri, 1 Apr 2022 11:56:36 +0000 (13:56 +0200)]
layerscape: image: drop redundant parameter from kernel build recipe

Neither 'fit', nor target-specific 'traverse-fit' build recipes accept
FDT load address in 3rd parameter.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2 years agokernel: scale nf_conntrack_max more reasonably
Vincent Pelletier [Sat, 19 Feb 2022 02:06:23 +0000 (02:06 +0000)]
kernel: scale nf_conntrack_max more reasonably

Use the kernel's built-in formula for computing this value.
The value applied by OpenWRT's sysctl configuration file does not scale
with the available memory, under-using hardware capabilities.
Also, that formula also influences net.netfilter.nf_conntrack_buckets,
which should improve conntrack performance in average (fewer connections
per hashtable bucket).

Backport upstream commit for its effect on the number of connections per
hashtable bucket.

Apply a hack patch to set the RAM size divisor to a more reasonable value (2048,
down from 16384) for our use case, a typical router handling several thousands
of connections.

Signed-off-by: Vincent Pelletier <plr.vincent@gmail.com>
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agoscripts: make sure conffiles are sorted
Paul Spooren [Thu, 31 Mar 2022 21:51:29 +0000 (22:51 +0100)]
scripts: make sure conffiles are sorted

It may happen that conffiles are in different order on different builds.
Make sure they have the same order by sorting them.

FIX: #9612

Signed-off-by: Paul Spooren <mail@aparcar.org>
2 years agotoolchain: reproducible libstdcpp
Paul Spooren [Thu, 31 Mar 2022 16:13:37 +0000 (17:13 +0100)]
toolchain: reproducible libstdcpp

A Python script containing an unreproducible path is copied by default.
Remove it before generating the package.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2 years agoocteon: mark source-only
Stijn Tintel [Fri, 1 Apr 2022 10:05:10 +0000 (13:05 +0300)]
octeon: mark source-only

There is a hard to reproduce, even harder to track down memory leak in
Octeon since kernel 5.10. Mark octeon source-only until it is plugged.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agoRevert "ipq40xx: stop chromium sub-target builds on the buildbots"
Petr Štetiar [Fri, 1 Apr 2022 05:38:43 +0000 (07:38 +0200)]
Revert "ipq40xx: stop chromium sub-target builds on the buildbots"

This reverts commit 35d2bbc29ba7f802706bf65585aeb8808fcac622 as we
believe we found that it is indeed an openssl issue, where openssl is
trying to use getrandom(2), but fails because this particular builder
has an ancient kernel without that syscall. We didn't get to the bottom
of why openssl doesn't fall back to something like /dev/random.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agomxs: enable 5.15 as testing kernel
Zoltan HERPAI [Thu, 31 Mar 2022 13:57:27 +0000 (15:57 +0200)]
mxs: enable 5.15 as testing kernel

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 years agomxs: update config for 5.15
Zoltan HERPAI [Thu, 31 Mar 2022 13:59:32 +0000 (15:59 +0200)]
mxs: update config for 5.15

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 years agomxs: copy config from 5.10 to 5.15
Zoltan HERPAI [Thu, 31 Mar 2022 13:56:59 +0000 (15:56 +0200)]
mxs: copy config from 5.10 to 5.15

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 years agogeneric: add missing symbol for 5.15
Zoltan HERPAI [Thu, 31 Mar 2022 13:56:31 +0000 (15:56 +0200)]
generic: add missing symbol for 5.15

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 years agobusybox: Fix snprintf arguments in lock
Hauke Mehrtens [Thu, 31 Mar 2022 16:43:09 +0000 (18:43 +0200)]
busybox: Fix snprintf arguments in lock

The first argument for snprintf is the buffer and the 2. one is the
size. Fix the order. This broke the lock application.

Fixes: 34567750db2c ("busybox: fix busybox lock applet pidstr buffer overflow")
Reported-by: Hartmut Birr <e9hack@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agoath79: migrate Archer C5 5GHz radio device paths
Jan-Niklas Burfeind [Mon, 28 Mar 2022 16:07:59 +0000 (18:07 +0200)]
ath79: migrate Archer C5 5GHz radio device paths

When upgrading a TP-Link Archer C5 v1 from ar71xx to ath79,
the 5ghz radio stops working because the device path changed.

Same has been done for the Archer C7 before:

commit e19506f20618 ("ath79: migrate Archer C7 5GHz radio device paths")

Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me>
2 years agoimx: re-enable ARM arch timer
Petr Štetiar [Thu, 31 Mar 2022 13:50:46 +0000 (15:50 +0200)]
imx: re-enable ARM arch timer

Config option `ARM_ARCH_TIMER` has been removed during rebasing onto
5.15 kernel in commit 2b395c298247 ("imx: update config for 5.15").

Anyway, as stated in commit 8cdc356f8c30 ("mediatek: mt7623: Re-enable
ARM arch timer") config option `ARM_ARCH_TIMER` cannot be enabled in the
config directly; it is only selected by `HAVE_ARM_ARCH_TIMER`. We need
to enable the latter in our config.

Fixes: 2b395c298247 ("imx: update config for 5.15")
Reported-by: Piotr Dymacz <pepe2k@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agokernel: modules: fix kmod-drm-imx-ldb dependency for 5.15
Petr Štetiar [Thu, 31 Mar 2022 13:35:53 +0000 (15:35 +0200)]
kernel: modules: fix kmod-drm-imx-ldb dependency for 5.15

Fixes following issue:

 Package kmod-drm-imx-ldb is missing dependencies for the following libraries:
 drm_dp_aux_bus.ko

Introduced upstream in commit aeb33699fc2c ("drm: Introduce the DP AUX
bus") in kernel version 5.15.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agoimx: make 5.15 default kernel and remove 5.10 support
Petr Štetiar [Thu, 31 Mar 2022 12:42:29 +0000 (14:42 +0200)]
imx: make 5.15 default kernel and remove 5.10 support

In imx target we're sharing single, version agnostic kernel
`config-default` file, which doesn't work very well with current 5.10
and upcoming 5.15 kernel symbols as recent rebase onto 5.15 kernel
introduced in commit 2b395c298247 ("imx: update config for 5.15) has
introduced following regression with 5.10 kernel:

 Marvell 88E6xxx Ethernet switch fabric support (NET_DSA_MV88E6XXX) [Y/n/m/?] y
   Switch Global 2 Registers support (NET_DSA_MV88E6XXX_GLOBAL2) [Y/n/?] (NEW)

That NET_DSA_MV88E6XXX_GLOBAL2 kernel config symbol has been removed in
upstream commit 63368a7416df ("net: dsa: mv88e6xxx: Make global2 support
mandatory") in kernel version 5.12.

This issue could be probably fixed by introduction of separate kernel
config files for each currently used kernel versions and subtarget, but
it is not worth the hassle and resources as imx target is running mostly
upstream kernel, so lets fix it by switching to 5.15 version instead.

Fixes: 2b395c298247 ("imx: update config for 5.15")
Acked-by: Piotr Dymacz <pepe2k@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agotools: SOURCE_DATE_EPOCH handling for mkfs.fat
Paul Spooren [Wed, 30 Mar 2022 22:36:38 +0000 (23:36 +0100)]
tools: SOURCE_DATE_EPOCH handling for mkfs.fat

Backport upstream patch to have reproducible FAT signatures.
This should enable reproducibility for x86 EFI images.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2 years agokernel: modules: fix kmod-drm dependency for 5.15
Petr Štetiar [Tue, 29 Mar 2022 11:33:25 +0000 (13:33 +0200)]
kernel: modules: fix kmod-drm dependency for 5.15

Fixes following issue:

 Package kmod-drm is missing dependencies for the following libraries:
 fb.ko

Introduced upstream in commit f611b1e7624c ("drm: Avoid circular
dependencies for CONFIG_FB") in 5.14.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agokernel: generic: add more missing kernel symbols for 5.15
Petr Štetiar [Tue, 29 Mar 2022 11:04:49 +0000 (13:04 +0200)]
kernel: generic: add more missing kernel symbols for 5.15

Found while adding 5.15 support for imx target.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agoimx: update config for 5.15
Petr Štetiar [Mon, 28 Mar 2022 12:31:55 +0000 (14:31 +0200)]
imx: update config for 5.15

Refresh kernel config with `make kernel_oldconfig` make target.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agoimx: enable 5.15 as testing kernel
Petr Štetiar [Tue, 29 Mar 2022 07:33:31 +0000 (09:33 +0200)]
imx: enable 5.15 as testing kernel

So anyone interested can help with new kernel version integration and
testing.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agoimx: copy config and patches from 5.10 to 5.15
Petr Štetiar [Tue, 29 Mar 2022 07:32:34 +0000 (09:32 +0200)]
imx: copy config and patches from 5.10 to 5.15

So the upcoming changes needed for 5.15 can be reviewed easily.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agobcm53xx: prepare kernel 5.15 support
Rafał Miłecki [Wed, 30 Mar 2022 21:21:32 +0000 (23:21 +0200)]
bcm53xx: prepare kernel 5.15 support

Tested on Luxul XWR-3150 (boot, NAND, PCIe, switch, Ethernet).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agokernel: bump 5.10 to 5.10.109
John Audia [Mon, 28 Mar 2022 11:54:20 +0000 (07:54 -0400)]
kernel: bump 5.10 to 5.10.109

All patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, mt7622/RT3200
Run-tested: bcm2711/RPi4B, mt7622/RT3200

Signed-off-by: John Audia <graysky@archlinux.us>
2 years agobusybox: fix busybox lock applet pidstr buffer overflow
Qichao Zhang [Sun, 20 Mar 2022 01:43:22 +0000 (09:43 +0800)]
busybox: fix busybox lock applet pidstr buffer overflow

Kernel setting `/proc/sys/kernel/pid_max` can be set up to 4194304 (7
digits) which will cause buffer overflow in busbox lock patch, this
often happens when running in a rootfs container environment.
This commit enlarges `pidstr` to 12 bytes to ensure a sufficient buffer
for pid number and an additional char '\n'.

Signed-off-by: Qichao Zhang <njuzhangqichao@gmail.com>
2 years agoath79: fix label MAC address for Ubiquiti UniFi AP Outdoor+
Matthias Schiffer [Tue, 29 Mar 2022 22:20:39 +0000 (00:20 +0200)]
ath79: fix label MAC address for Ubiquiti UniFi AP Outdoor+

The label has the MAC address of eth0, not the WLAN PHY address. We can
merge the definition back into ar7241_ubnt_unifi.dtsi, as both DTS
derived from it use the same interface for their label MAC addresses
after all.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2 years agoath79: add 5.15 support for generic subtarget
David Bauer [Sun, 27 Mar 2022 21:12:39 +0000 (23:12 +0200)]
ath79: add 5.15 support for generic subtarget

Add Kernel 5.15 patches + config. This is currently only available for
the generic subtarget, as it was exclusively tested with this target.

Tested-on: Siemens WS-AP3610, Enterasys WS-AP3705i

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agobcm53xx: add switch ports for Buffalo WZR-900DHP & re-enable it
SHIMAMOTO Takayoshi [Sun, 27 Mar 2022 17:09:25 +0000 (02:09 +0900)]
bcm53xx: add switch ports for Buffalo WZR-900DHP & re-enable it

Specify the switch ports in the DTS file.
Re-enable it after it was disabled by commit e9672b1a8fa4 ("bcm53xx: switch to the
upstream DSA-based b53 driver").

Signed-off-by: SHIMAMOTO Takayoshi <takayoshi.shimamoto.360@gmail.com>
[rmilecki: reword commit & drop unneeded whitespace change]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm53xx: backport DT changes from 5.17 & 5.18
Rafał Miłecki [Wed, 30 Mar 2022 14:05:55 +0000 (16:05 +0200)]
bcm53xx: backport DT changes from 5.17 & 5.18

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobuild: store sha256_unsigned in JSON
Paul Spooren [Mon, 28 Mar 2022 02:29:09 +0000 (03:29 +0100)]
build: store sha256_unsigned in JSON

Introduce `sha256_unsigned` which is a checksum of the image _before_ a
signature is attached. This is helpful to compare image reproducibility.

Since the `.sha256sum` file is located in the $(KDIR) folder, switch
$(BIN_DIR) with $(KDIR) to simplify the code. The value of $(BIN_DIR)
itself is not stored inside the resulting JSON file, so it can be
replaced.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2 years agomt76: update to the latest version
Felix Fietkau [Tue, 29 Mar 2022 16:34:54 +0000 (18:34 +0200)]
mt76: update to the latest version

eed44048ca57 Revert "mt76: dma: reduce lock contention in mt76_dma_tx_cleanup"

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agobcm53xx: drop dead upgrade code
Rafał Miłecki [Tue, 29 Mar 2022 14:14:54 +0000 (16:14 +0200)]
bcm53xx: drop dead upgrade code

platform_nand_pre_upgrade() is gone since commit 790692dde2b9
("base-files: drop support for the platform_nand_pre_upgrade()").

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm53xx: add support for Asus RT-AC88U
Arınç ÜNAL [Fri, 12 Nov 2021 10:56:15 +0000 (18:56 +0800)]
bcm53xx: add support for Asus RT-AC88U

Asus RT-AC88U is an AC3100 router featuring 9 Ethernet ports over the
integrated Broadcom and the external Realtek switch.

Hardware info:
* Processor: Broadcom BCM4709C0KFEBG dual-core @ 1.4 GHz
* Switch: BCM53012 in BCM4709C0KFEBG & external RTL8365MB
* DDR3 RAM: 512 MB
* Flash: 128 MB (ESMT F59L1G81LA-25T)
* 2.4GHz: BCM4366 4×4 2.4/5G single chip 802.11ac SoC
* 5GHz: BCM4366 4×4 2.4/5G single chip 802.11ac SoC
* Ports: 8 Ports, 1 WAN Ports

Flashing instructions:
* Boot to CFE Recovery Mode by holding the reset button while power-on.
* Connect to the router with an ethernet cable.
* Set IPv4 address of the computer to 192.168.1.2 subnet 255.255.255.0.
* Head to http://192.168.1.1.
* Reset NVRAM.
* Upload the OpenWrt image.

CFE bootloader may reject flashing the image due to image integrity check.
In that case, follow the instructions below.

* Rename the OpenWrt image as firmware.trx.
* Run a TFTP server and make it serve the firmware.trx file.
* Run the URL below on a browser or curl.
  http://192.168.1.1/do.htm?cmd=flash+-noheader+192.168.1.2:firmware.trx+flash0.trx

Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
[rmilecki: mark BROKEN until we sort out nvram & CFE recovery]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agokernel: fix initramfs reproducibility
Daniel Golle [Tue, 29 Mar 2022 12:54:14 +0000 (13:54 +0100)]
kernel: fix initramfs reproducibility

Make sure xz uses at least 2 threads so compression always runs in
multi-threaded mode as the resulting file in single-threaded mode
differs.

Fixes: 29d7461d11 ("kernel: set options to make external initramfs reproducible")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agoimage: let mksquashfs4 use all processors
Stijn Tintel [Sat, 19 Feb 2022 15:54:22 +0000 (17:54 +0200)]
image: let mksquashfs4 use all processors

Drop the -processors argument from the mksquashfs4 call, so it will use
all available processors. This dramatically reduces the time to create
squashfs filesystems.

The times below are observed when building an image for my main router,
the WatchGuard Firebox M300 (qoriq target):

Before:
real    4m45,973s

After:
real    0m23,497s

With this commit `mksquashfs` may use more cores than defined via `-j`.
This is the same behaviour as for archive creation of ImageBuilder, SDK
or toolchain. There is no trivial way to limit `mksquashfs` CPU core
usage to the amount of "free" make jobs since two running `mksquashfs`
instances would each run with the total allowed number (-j) of threads.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
[extended reasoning in commit message]
Signed-off-by: Paul Spooren <mail@aparcar.org>
2 years agorealtek: Fix tc default package
Hauke Mehrtens [Mon, 28 Feb 2022 21:32:08 +0000 (22:32 +0100)]
realtek: Fix tc default package

The tc package does not exits any more, it was split into tc-tiny,
tc-full and tc-bpf. Include tc-bpf by default into realtek images.

This increases the compressed image size by about 232KBytes.

Tested-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agorealtek: Use firewall4
Hauke Mehrtens [Mon, 28 Feb 2022 20:57:55 +0000 (21:57 +0100)]
realtek: Use firewall4

The realtek target is not a router, but basic device, see DEVICE_TYPE.
The basic device type does not come with firewall by default, see
include/target.mk for details. The realtek target extended
DEFAULT_PACKAGES manually with firewall.

This changes the defaults to take firewall4 and nftables instead of
firewall and iptables. This also adds the additional package
kmod-nft-offload.

The only difference to the router type is the missing ppp,
ppp-mod-pppoe, dnsmasq and odhcpd-ipv6only package.

This increases the compressed image size by about 422KBytes.

Tested-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agorealtek: Remove dnsmasq and odhcpd-ipv6only from default
Hauke Mehrtens [Fri, 25 Mar 2022 12:57:40 +0000 (13:57 +0100)]
realtek: Remove dnsmasq and odhcpd-ipv6only from default

Do not include the dnsmasq and odhcpd-ipv6only package by default any
more. These services are not needed on a switch. If someone needs this
it is still possible to use opkg or image builder to add them.

This decreases the compressed image size by about 165KBytes.

Tested-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agosunxi: update config for 5.15
Petr Štetiar [Mon, 28 Mar 2022 12:31:55 +0000 (14:31 +0200)]
sunxi: update config for 5.15

Refresh kernel config with `make kernel_oldconfig` make target.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agosunxi: refresh kernel 5.15 patches
Petr Štetiar [Mon, 28 Mar 2022 12:23:48 +0000 (14:23 +0200)]
sunxi: refresh kernel 5.15 patches

So the patches apply cleanly.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agosunxi: rebase sun50i-h5-nanopi-r1s-h5.dts onto 5.15
Petr Štetiar [Mon, 28 Mar 2022 12:19:46 +0000 (14:19 +0200)]
sunxi: rebase sun50i-h5-nanopi-r1s-h5.dts onto 5.15

So the patch can be applied on top of 5.15 kernel.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agosunxi: enable 5.15 as testing kernel
Petr Štetiar [Mon, 28 Mar 2022 12:07:06 +0000 (14:07 +0200)]
sunxi: enable 5.15 as testing kernel

So anyone interested can help with new kernel version integration and
testing.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agosunxi: copy config and patches from 5.10 to 5.15
Petr Štetiar [Mon, 28 Mar 2022 12:05:48 +0000 (14:05 +0200)]
sunxi: copy config and patches from 5.10 to 5.15

So the upcoming changes needed for 5.15 can be reviewed easily.

Removed following upstreamed patches:

 * 062-add-sun8i-h3-zeropi-support.patch
 * 100-sunxi-h3-add-support-for-nanopi-r1.patch
 * 101-sunxi-h5-add-support-for-nanopi-r1s-h5.patch

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agokernel: modules: fix kmod-mdio-devres dependency for 5.15
Petr Štetiar [Mon, 28 Mar 2022 10:29:04 +0000 (12:29 +0200)]
kernel: modules: fix kmod-mdio-devres dependency for 5.15

Fixes following build issues:

 Package kmod-r8169 is missing dependencies for the following libraries:
 mdio_devres.ko

 Package kmod-ixgbe is missing dependencies for the following libraries:
 mdio_devres.ko

 Package kmod-amd-xgbe is missing dependencies for the following libraries:
 mdio_devres.ko

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agox86: update config for 5.15
Petr Štetiar [Mon, 28 Mar 2022 11:52:48 +0000 (13:52 +0200)]
x86: update config for 5.15

Refresh kernel config with `make kernel_oldconfig` make target.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agox86: enable 5.15 as testing kernel
Petr Štetiar [Mon, 28 Mar 2022 08:23:37 +0000 (10:23 +0200)]
x86: enable 5.15 as testing kernel

So anyone interested can help with new kernel version integration and
testing.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agox86: copy config and patches from 5.10 to 5.15
Petr Štetiar [Mon, 28 Mar 2022 08:21:38 +0000 (10:21 +0200)]
x86: copy config and patches from 5.10 to 5.15

So the upcoming changes needed for 5.15 can be reviewed easily.
Removing following patches backported from 5.15:

 * 101-v5.15-mfd-lpc_ich-Enable-GPIO-driver-for-DH89xxCC.patch
 * 102-v5.15-platform-x86-add-meraki-mx100-platform-driver.patch

Removed upstreamed patch `300-pcengines_apu1_led.patch` in commit
1b40faf7e4ab ("leds: apu: extend support for PC Engines APU1 with newer
firmware")

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agogeneric: backport 5.16 fix for hv utils build failure
Petr Štetiar [Mon, 28 Mar 2022 09:35:57 +0000 (11:35 +0200)]
generic: backport 5.16 fix for hv utils build failure

Backports following fix:

 hv: utils: add PTP_1588_CLOCK to Kconfig to fix build

 The hyperv utilities use PTP clock interfaces and should depend a
 a kconfig symbol such that they will be built as a loadable module or
 builtin so that linker errors do not happen.

 Prevents these build errors:

 ld: drivers/hv/hv_util.o: in function `hv_timesync_deinit':
 hv_util.c:(.text+0x37d): undefined reference to `ptp_clock_unregister'
 ld: drivers/hv/hv_util.o: in function `hv_timesync_init':
 hv_util.c:(.text+0x738): undefined reference to `ptp_clock_register'

References: https://lore.kernel.org/stable/20220328093115.7486-1-ynezz@true.cz/T/#u
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agokernel: generic: add more missing kernel symbols for 5.15
Petr Štetiar [Tue, 29 Mar 2022 06:46:51 +0000 (08:46 +0200)]
kernel: generic: add more missing kernel symbols for 5.15

Found while adding 5.15 support for x86/sunxi targets.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agogeneric: 5.15: fix FIT partition parser on block partitions
Daniel Golle [Tue, 29 Mar 2022 00:53:08 +0000 (01:53 +0100)]
generic: 5.15: fix FIT partition parser on block partitions

Using set_disk_ro() doesn't have the desired effect and instead of
just setting the single partition to be read-only it affects the
whole disk. Use the bd_read_only flag in struct block_device instead
to mark a partition being read-only.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agolayerscape: make boot filesystem reproducible
Daniel Golle [Mon, 28 Mar 2022 17:26:13 +0000 (18:26 +0100)]
layerscape: make boot filesystem reproducible

Set timestamp option for make_ext4fs to make boot filesystem
reproducible.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomvebu: make boot filesystem reproducible
Daniel Golle [Mon, 28 Mar 2022 17:25:34 +0000 (18:25 +0100)]
mvebu: make boot filesystem reproducible

Set timestamp option for make_ext4fs to make boot filesystem
reproducible.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agoscripts/gen_image_generic.sh: make ext4 bootfs reproducible
Daniel Golle [Mon, 28 Mar 2022 17:13:45 +0000 (18:13 +0100)]
scripts/gen_image_generic.sh: make ext4 bootfs reproducible

Set fixed timestamp for kernel other files in /boot filesystem.
This should help making x86 *combined* images reproducible.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomt76: update to the latest version
Felix Fietkau [Mon, 28 Mar 2022 11:24:26 +0000 (13:24 +0200)]
mt76: update to the latest version

65042bfd759c mt76: mt7915: introduce 802.11ax multi-bss support
e756ea3bd069 mt76: fix wrong HE data rate in sniffer tool
47b64131e820 mt76: mt7921: don't enable beacon filter when IEEE80211_CONF_CHANGE_MONITOR is set
7a05f4628e76 mt76: fix monitor rx FCS error in DFS channel
104dd5cb0a40 mt76: mt7915: fix DBDC default band selection on MT7915D
a7805e4e1d58 mt76: reduce tx queue lock hold time
0b1deb9292cd mt76: dma: use kzalloc instead of devm_kzalloc for txwi
2e51013b38c9 mt76: dma: reduce lock contention in mt76_dma_tx_cleanup
c96fbb86f7e5 mt76: mt7915: rework hardware/phy initialization
c2bb44cab51e mt76: mt7915: accept rx frames with non-standard VHT MCS10-11
36c23a4a8422 mt76: mt7921: accept rx frames with non-standard VHT MCS10-11
5b7dd093c8f0 mt76: fix use-after-free by removing a non-RCU wcid pointer
c692aacb9bde mt76: fix MBSS index condition in DBDC mode
fd6541905aa4 mt76: mt7921u: add suspend/resume support
201b33cf42c2 mt76: mt7921: rely on mt76_dev rxfilter in mt7921_configure_filter
9666c08228e7 mt76: mt7921: honor pm user configuration in mt7921_sniffer_interface_iter
1442710d7936 mt76: mt7915: always call mt7915_wfsys_reset() during init
ec4d9b9e8b70 mt76: mt7915: fix unbounded shift in mt7915_mcu_beacon_mbss
6b1efcd72946 mt76: mt7915: fix wfsys reset regression
376ea8152b2b mt76: mt7915: add missing chunk from wfsys reset fix

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agokernel: 5.15: fix mediatek usb module change
John Thomson [Mon, 28 Mar 2022 01:50:44 +0000 (11:50 +1000)]
kernel: 5.15: fix mediatek usb module change

The mediatek USB kernel module xhci-mtk was restructed.
The module after kernel 5.13 is named xhci-mtk-hcd.
Link:
https://lore.kernel.org/all/0b62e21ddfacc1c2874726dd27ccab80c993f303.1615170625.git.chunfeng.yun@mediatek.com/
Linux 14295a150050 ("usb: xhci-mtk: support to build xhci-mtk-hcd.ko")

Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
2 years agokernel: add missing nls dependency for kmod-fs-ntfs3
Felix Fietkau [Mon, 28 Mar 2022 08:58:40 +0000 (10:58 +0200)]
kernel: add missing nls dependency for kmod-fs-ntfs3

This showed up on a linux 5.15 build

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoramips: fix kernel module build errors on linux 5.15
Felix Fietkau [Mon, 28 Mar 2022 08:42:41 +0000 (10:42 +0200)]
ramips: fix kernel module build errors on linux 5.15

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agourandom-seed: use seedrng for seeding the random number generator
Jason A. Donenfeld [Mon, 28 Mar 2022 04:25:56 +0000 (00:25 -0400)]
urandom-seed: use seedrng for seeding the random number generator

The RNG can't actually be seeded from a shell script, due to the
reliance on ioctls. For this reason, the seedrng project provides a
basic script meant to be copy and pasted into projects like OpenWRT
and tweaked as needed: <https://git.zx2c4.com/seedrng/about/>.

This commit imports it into the urandom-seed package and wires up the
init scripts to call it. This also is a significant improvement over the
current init script, which does not robustly handle cleaning up of seeds
and syncing to prevent reuse. Additionally, the existing script creates
a new seed immediately after writing an old one, which means that the
amount of entropy might actually regress, due to failing to credit the
old seed.

Closes: https://github.com/openwrt/openwrt/issues/9570
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz> [fixed missing INSTALL_DIR]
2 years agotools/zlib: bump to latest stable release 1.2.12 (CVE-2018-25032)
Petr Štetiar [Mon, 28 Mar 2022 06:43:41 +0000 (08:43 +0200)]
tools/zlib: bump to latest stable release 1.2.12 (CVE-2018-25032)

List of changes since previous release from 2018 is quite long:

 * Fix crc32.c to compile local functions only if used.
 * Check for cc masquerading as gcc or clang in configure.
 * Remove destructive aspects of make distclean.
 * Separate out address sanitizing from warnings in configure.
 * Eliminate use of ULL constants.
 * Add fallthrough comments for gcc.
 * Clean up minizip to reduce warnings for testing.
 * Fix unztell64() in minizip to work past 4GB. (Daniël Hörchner)
 * minizip warning fix if MAXU32 already defined. (gvollant)
 * Replace black/white with allow/block. (theresa-m)
 * Fix indentation in minizip's zip.c.
 * Improve portability of contrib/minizip.
 * Correct typo in blast.c.
 * Change macro name in inflate.c to avoid collision in VxWorks.
 * Clarify gz* function interfaces, referring to parameter names.
 * Fix error in comment on the polynomial representation of a byte.
 * Fix memory leak on error in gzlog.c.
 * Avoid adding empty gzip member after gzflush with Z_FINISH.
 * Explicitly note that the 32-bit check values are 32 bits.
 * Use ARM crc32 instructions if the ARM architecture has them.
 * Add use of the ARMv8 crc32 instructions when requested.
 * Correct comment in crc32.c.
 * Don't bother computing check value after successful inflateSync().
 * Use atomic test and set, if available, for dynamic CRC tables.
 * Speed up software CRC-32 computation by a factor of 1.5 to 3.
 * Add crc32_combine_gen() and crc32_combine_op() for fast combines.
 * Add tables for crc32_combine(), to speed it up by a factor of 200.
 * Fix the zran.c example to work on a multiple-member gzip file.
 * Add gznorm.c example, which normalizes gzip files.
 * Show all the codes for the maximum tables size in enough.c.
 * Clarify that prefix codes are counted in enough.c.
 * Use inline function instead of macro for index in enough.c.
 * Clean up code style in enough.c, update version.
 * Use a macro for the printf format of big_t in enough.c.
 * Use a structure to make globals in enough.c evident.
 * Assure that the number of bits for deflatePrime() is valid.
 * Fix a bug that can crash deflate on some input when using Z_FIXED.
 * Correct the initialization requirements for deflateInit2().
 * Emphasize the need to continue decompressing gzip members.
 * Add legal disclaimer to README.
 * Fix deflateEnd() to not report an error at start of raw deflate.
 * Remove old assembler code in which bugs have manifested.
 * Make the names in functions declarations identical to definitions.
 * Avoid an undefined behavior of memcpy() in _tr_stored_block().
 * Avoid undefined behaviors of memcpy() in gz*printf().
 * Avoid an undefined behavior of memcpy() in gzappend().
 * Avoid the use of ptrdiff_t.
 * Handle case where inflateSync used when header never processed.
 * Don't compute check value for raw inflate if asked to validate.
 * Add address checking in clang to -w option of configure.
 * Return an error if the gzputs string length can't fit in an int.
 * Small speedup to inflate [psumbera].
 * Update use of errno for newer Windows CE versions.
 * Avoid some conversion warnings in gzread.c and gzwrite.c.
 * Have Makefile return non-zero error code on test failure.
 * Avoid a conversion error in gzseek when off_t type too small.
 * Fix CLEAR_HASH macro to be usable as a single statement.
 * Fix bug when window full in deflate_stored().
 * Limit hash table inserts after switch from stored deflate.
 * Permit a deflateParams() parameter change as soon as possible.
 * Cygwin does not have _wopen(), so do not create gzopen_w() there.

Removed 006-fix-compressor-crash-on-certain-inputs.patch which was
hotfix for CVE-2018-25032 and is now included in this release.

This release is not available on @SF (yet?) so the sources are now
pulled from GitHub.

Fixes: CVE-2018-25032
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agolibs/zlib: fix implicit function declaration warning
Petr Štetiar [Mon, 28 Mar 2022 06:41:54 +0000 (08:41 +0200)]
libs/zlib: fix implicit function declaration warning

Fixes following warning:

 adler32.c:141:12: warning: implicit declaration of function 'NEON_adler32' [-Wimplicit-function-declaration]
   141 |     return NEON_adler32(adler, buf, len);

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agolibs/zlib: bump to latest stable release 1.2.12 (CVE-2018-25032)
Petr Štetiar [Mon, 28 Mar 2022 06:38:26 +0000 (08:38 +0200)]
libs/zlib: bump to latest stable release 1.2.12 (CVE-2018-25032)

List of changes since previous release from 2018 is quite long:

 * Fix crc32.c to compile local functions only if used.
 * Check for cc masquerading as gcc or clang in configure.
 * Remove destructive aspects of make distclean.
 * Separate out address sanitizing from warnings in configure.
 * Eliminate use of ULL constants.
 * Add fallthrough comments for gcc.
 * Clean up minizip to reduce warnings for testing.
 * Fix unztell64() in minizip to work past 4GB. (Daniël Hörchner)
 * minizip warning fix if MAXU32 already defined. (gvollant)
 * Replace black/white with allow/block. (theresa-m)
 * Fix indentation in minizip's zip.c.
 * Improve portability of contrib/minizip.
 * Correct typo in blast.c.
 * Change macro name in inflate.c to avoid collision in VxWorks.
 * Clarify gz* function interfaces, referring to parameter names.
 * Fix error in comment on the polynomial representation of a byte.
 * Fix memory leak on error in gzlog.c.
 * Avoid adding empty gzip member after gzflush with Z_FINISH.
 * Explicitly note that the 32-bit check values are 32 bits.
 * Use ARM crc32 instructions if the ARM architecture has them.
 * Add use of the ARMv8 crc32 instructions when requested.
 * Correct comment in crc32.c.
 * Don't bother computing check value after successful inflateSync().
 * Use atomic test and set, if available, for dynamic CRC tables.
 * Speed up software CRC-32 computation by a factor of 1.5 to 3.
 * Add crc32_combine_gen() and crc32_combine_op() for fast combines.
 * Add tables for crc32_combine(), to speed it up by a factor of 200.
 * Fix the zran.c example to work on a multiple-member gzip file.
 * Add gznorm.c example, which normalizes gzip files.
 * Show all the codes for the maximum tables size in enough.c.
 * Clarify that prefix codes are counted in enough.c.
 * Use inline function instead of macro for index in enough.c.
 * Clean up code style in enough.c, update version.
 * Use a macro for the printf format of big_t in enough.c.
 * Use a structure to make globals in enough.c evident.
 * Assure that the number of bits for deflatePrime() is valid.
 * Fix a bug that can crash deflate on some input when using Z_FIXED.
 * Correct the initialization requirements for deflateInit2().
 * Emphasize the need to continue decompressing gzip members.
 * Add legal disclaimer to README.
 * Fix deflateEnd() to not report an error at start of raw deflate.
 * Remove old assembler code in which bugs have manifested.
 * Make the names in functions declarations identical to definitions.
 * Avoid an undefined behavior of memcpy() in _tr_stored_block().
 * Avoid undefined behaviors of memcpy() in gz*printf().
 * Avoid an undefined behavior of memcpy() in gzappend().
 * Avoid the use of ptrdiff_t.
 * Handle case where inflateSync used when header never processed.
 * Don't compute check value for raw inflate if asked to validate.
 * Add address checking in clang to -w option of configure.
 * Return an error if the gzputs string length can't fit in an int.
 * Small speedup to inflate [psumbera].
 * Update use of errno for newer Windows CE versions.
 * Avoid some conversion warnings in gzread.c and gzwrite.c.
 * Have Makefile return non-zero error code on test failure.
 * Avoid a conversion error in gzseek when off_t type too small.
 * Fix CLEAR_HASH macro to be usable as a single statement.
 * Fix bug when window full in deflate_stored().
 * Limit hash table inserts after switch from stored deflate.
 * Permit a deflateParams() parameter change as soon as possible.
 * Cygwin does not have _wopen(), so do not create gzopen_w() there.

Removed 006-fix-compressor-crash-on-certain-inputs.patch which was
hotfix for CVE-2018-25032 and is now included in this release.

This release is not available on @SF (yet?) so the sources are now
pulled from GitHub.

Fixes: CVE-2018-25032
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agomalta: enable testing kernel 5.15
Daniel Golle [Mon, 28 Mar 2022 00:58:16 +0000 (01:58 +0100)]
malta: enable testing kernel 5.15

Nothing special is needed here, just add KERNEL_TESTING_PATCHVER.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agobuild: autotools: fix cache path
Huangbin Zhan [Sat, 30 Oct 2021 07:28:28 +0000 (15:28 +0800)]
build: autotools: fix cache path

the cache directory should be autom4te.cache in all $(PKG_AUTOMAKE_PATHS)
rather than $(PKG_BUILD_DIR)/autom4te.cache only

Signed-off-by: Huangbin Zhan <zhanhb88@gmail.com>
2 years agoramips: add linux 5.15 support for mt7621
Felix Fietkau [Sun, 27 Mar 2022 19:26:31 +0000 (21:26 +0200)]
ramips: add linux 5.15 support for mt7621

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agobuild: add support for passing C preprocessor flags for DTS builds
Felix Fietkau [Sun, 27 Mar 2022 19:23:49 +0000 (21:23 +0200)]
build: add support for passing C preprocessor flags for DTS builds

Useful for adding #ifdefs based on build system provided definitions, or
for adding extra include paths

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agokernel: Backport mv88e6xxx patch to keep pvid at 0 if VLAN-unaware and remove hack
Marek Behún [Mon, 21 Mar 2022 16:53:10 +0000 (17:53 +0100)]
kernel: Backport mv88e6xxx patch to keep pvid at 0 if VLAN-unaware and remove hack

Backport patch
  8b6836d82470 ("net: dsa: mv88e6xxx: keep the pvid at 0 when VLAN-unaware")
from 5.15.

Keeping the pvid at 0 when VLAN-unaware makes it possible to drop the
hack introduced in commit 920eaab1d817 ("kernel: DSA roaming fix for
Marvell mv88e6xxx"). Dropping the hack makes it possible to use VLAN
interfaces with VID 1 on DSA ports without problems with FDB.

Signed-off-by: Marek Behún <kabel@kernel.org>
2 years agoipq806x: 5:15: fix dedicated krait cpufreq
Ansuel Smith [Fri, 5 Nov 2021 02:32:30 +0000 (03:32 +0100)]
ipq806x: 5:15: fix dedicated krait cpufreq

Fix dedicated cpufreq for kernel 5.15 as they changed module
order and now it can happen that cpufreq probe after cache driver.
Also add lock between cache scaling in set_target as it's now required
by opp functions.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2 years agoipq806x: backport nand raname to kernel 5.10
Ansuel Smith [Thu, 4 Nov 2021 21:37:23 +0000 (22:37 +0100)]
ipq806x: backport nand raname to kernel 5.10

Rename nand_controller to nand in kernel 5.10 to use the same dts across kernel version.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2 years agoipq806x: rework rootfs conflicts patch for smem
Ansuel Smith [Sun, 16 Jan 2022 02:54:58 +0000 (03:54 +0100)]
ipq806x: rework rootfs conflicts patch for smem

Now that smem actually free the leaked parts, when
a rootfs partition is detected, the kernel panics as
it try to free the static space allocated for the "ubi"
name. Change the logic and fix the name at the allocate_partition
function to correctly free the space allocated by smem.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2 years agoipq806x: 5:15: add testing kernel version
Ansuel Smith [Fri, 5 Nov 2021 00:14:57 +0000 (01:14 +0100)]
ipq806x: 5:15: add testing kernel version

Refresh patch for 5.15
Rework tweak patch to sync with upstream ipq8064 dtsi and fix
regression introduced.
Rename nand_controller to nand in every dts.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2 years agoipq806x: 5:15: drop upstream patch
Ansuel Smith [Tue, 11 Jan 2022 11:41:35 +0000 (12:41 +0100)]
ipq806x: 5:15: drop upstream patch

- Drop stmmac upstream patches
- Drop tsens patches
- Drop ADM driver
- Drop SMEM parser

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2 years agoipq806x: 5:15: refresh config
Ansuel Smith [Sat, 6 Nov 2021 13:58:30 +0000 (14:58 +0100)]
ipq806x: 5:15: refresh config

Refreshed using make kernel_menuconfig CONFIG_TARGET=generic

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2 years agoipq806x: 5:15: copy config and patch from 5.10
Ansuel Smith [Thu, 4 Nov 2021 20:56:41 +0000 (21:56 +0100)]
ipq806x: 5:15: copy config and patch from 5.10

Copy config and patch from kernel 5.10 to kernel 5.15

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>