aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic
Commit message (Collapse)AuthorAgeFilesLines
* generic: add flow_offload accountingJohn Crispin2018-08-281-0/+70
| | | | | | | This patch makes the flow offloading layer account for the traffic inside the conntack entries. Signed-off-by: John Crispin <john@phrozen.org>
* kernel: add a RPS balancerJohn Crispin2018-08-281-0/+93
| | | | | | | | | By default the RPS delegation will happen by masking the last few bits of skb->hash. This patch adds an inermediate hash bucket that maps the masked hash to a RPS core. This makes RPS results much more deterministic on SMP systems. Signed-off-by: John Crispin <john@phrozen.org>
* kernel: make mtd mac address increment more flexibleFelix Fietkau2018-08-251-3/+9
| | | | | | Allow selecting the byte on which the increment should be added. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* generic: revert workarounds for AR8337 switchMathias Kresin2018-08-232-62/+1
| | | | | | | | | | | | | The intention of 967b6be118e3 ("ar8327: Add workarounds for AR8337 switch") was to remove the register fixups for AR8337. But instead they were removed for AR8327. The RGMII RX delay is forced even if the port is used as phy instead of mac, which results in no package flow at least for one board. Fixes: FS#1664 Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: bump 4.14 to 4.14.66Koen Vandeputte2018-08-222-12/+12
| | | | | | | | | Refreshed all patches Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.123Koen Vandeputte2018-08-222-12/+12
| | | | | | | | | Refreshed all patches Compile-tested on: ar71xx Runtime-tested on: ar71xx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 3.18 to 3.18.119Koen Vandeputte2018-08-2033-133/+108
| | | | | | | | | Refreshed all patches. Compile-tested on: adm5120, adm8668, au1000, mcs814x, ppc40x, ppc44x, xburst Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.122Koen Vandeputte2018-08-203-4/+4
| | | | | | | | | Refreshed all patches. Compile-tested on: ar71xx Runtime-tested on: ar71xx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump kernel 4.9 to version 4.9.120Hauke Mehrtens2018-08-151-65/+0
| | | | | | | | | | | The following patch was integrated upstream: * target/linux/generic/backport-4.9/500-ext4-fix-check-to-prevent-initializing-reserved-inod.patch This fixes tries to work around the following security problems: * CVE-2018-3620 L1 Terminal Fault OS, SMM related aspects * CVE-2018-3646 L1 Terminal Fault Virtualization related aspects Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: bump 4.14 to 4.14.62Koen Vandeputte2018-08-102-6/+4
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx, imx6, x86_64 Runtime-tested on: cns3xxx, imx6, x86_64 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.119Koen Vandeputte2018-08-101-76/+0
| | | | | | | | | | | | Refreshed all patches. Delete upstreamed patch: - 100-tcp-add-tcp_ooo_try_coalesce-helper.patch Compile-tested on: ar71xx Runtime-tested on: ar71xx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: move e1000e patches to backportsStijn Tintel2018-08-094-0/+0
| | | | | | They're already in linux.git, so they shouldn't be in pending. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: allow device-tree configuration of at803xDavid Bauer2018-08-081-0/+49
| | | | | | | | | | This commit adds the ability to configure specific functions of the at803x series ethernet-PHYs, which were previously configured exclusively with the help of platform-data, via device-tree. This is needed to fully support existing boards of the ar71xx platform. Signed-off-by: David Bauer <mail@david-bauer.net>
* kernel: backport upstream fix for CVE-2018-5390Jo-Philipp Wich2018-08-081-0/+76
| | | | | | | | | | Backport an upstream fix for a remotely exploitable TCP denial of service flaw in Linux 4.9+. The fixes are included in Linux 4.14.59 and later but did not yet end up in version 4.9.118. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* kernel: bump 4.9 to 4.9.118Koen Vandeputte2018-08-071-1/+1
| | | | | | | | | Refreshed all patches. Compile-tested on: ar71xx Runtime-tested on: ar71xx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: modules: fix kmod-regmap reduxChristian Lamparter2018-08-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Jonas Gorski commented on the previous patch: |This is actually the wrong fix and papers over an issue in one of our |local patches. | |We intentionally allow regmap to be built as a module, see | |/target/linux/generic/hack-4.14/259-regmap_dynamic.patch |[...] |[The regulator code] optionally supports regmap thanks to the stubs |provided if regmap is disabled - which breaks if you compile regmap |as a module. In order to mitigate this issue, this patch reverts the previous patch and replaces the existing IS_ENABLED(CONFIG_REGMAP) with IS_REACHABLE(CONFIG_REGMAP). This solves this particular issue as the regulator code will now automatically fallback to the regmap stubs in case the kmod-regmap module is enabled, but nothing else sets CONFIG_REGMAP=y. Note: There's still a potential issue that this patch doesn't solve: If someone ever wants to make a OpenWrt kernel package for a regulator module that requires the REGMAP feature for a target that doesn't set CONFIG_REGMAP=y but has CONFIG_REGULATOR=y, the resulting kmod-regulator-xyz package will not work on the target. Luckily, there aren't any in-tree OpenWrt kernel module packages for regulators at the moment. On the bright side: regmap is a critical part nowadays and all new and upcoming architectures require it by default. This will likely only ever be a problem for legacy targets and devices that cannot afford to enable REGMAP. Cc: Jonas Gorski <jonas.gorski@gmail.com> Cc: John Crispin <john@phrozen.org> Fixes: d00913d1215b ("kernel: modules: fix kmod-regmap") Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* kernel: bump 4.14 to 4.14.60Koen Vandeputte2018-08-0321-181/+116
| | | | | | | | | | | | Refreshed all patches Removed upstreamed patches: - 500-ext4-fix-check-to-prevent-initializing-reserved-inod.patch Compile-tested on: cns3xxx, imx6, x86_64 Runtime-tested on: cns3xxx, imx6, x86_64 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.117Koen Vandeputte2018-08-034-4/+4
| | | | | | | | | Refreshed all patches Compile-tested on: ar71xx Runtime-tested on: ar71xx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.116Koen Vandeputte2018-08-0125-106/+117
| | | | | | | | | | | | | | | | | | | | | | | | | Refreshed all patches Remove upstreamed patches. - 103-MIPS-ath79-fix-register-address-in-ath79_ddr_wb_flus.patch - 403-mtd_fix_cfi_cmdset_0002_status_check.patch - 001-4.11-01-mtd-m25p80-consider-max-message-size-in-m25p80_read.patch - 001-4.15-08-bcm63xx_enet-correct-clock-usage.patch - 001-4.15-09-bcm63xx_enet-do-not-write-to-random-DMA-channel-on-B.patch - 900-gen_stats-fix-netlink-stats-padding.patch Introduce a new backported patch to address ext4 breakage, introduced in 4.9.112 - backport-4.9/500-ext4-fix-check-to-prevent-initializing-reserved-inod.patch This patch has been slightly altered to compensate for a new helper function introduced in later kernels. Also add ARM64_SSBD symbol to ARM64 targets still running kernel 4.9 Compile-tested on: ar71xx, bcm2710 Runtime-tested on: ar71xx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: remove duplicate #define's in at803x Ethernet PHY driverDaniel Golle2018-07-312-20/+14
| | | | | | | | | | | AT803X_REG_CHIP_CONFIG and AT803X_BT_BX_REG_SEL have been defined upstream by commit f62265b53ef3 ("at803x: double check SGMII side autoneg") An existing local patch then added those exact same defines again which isn't necessary, so remove them. Fixes: f791fb4af450 ("kernel: add linux 4.9 support") Fixes: b3f95490b9be ("kernel: generic: Add kernel 4.14 support") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: re-add patch for AT8032 Ethernet PHYDaniel Golle2018-07-313-7/+77
| | | | | | | | | | The patch was wrongly removed by a kernel version bump to 4.9.105 in the believe that it was merged upstream thow it wasn't. This lead to unrecoverable link losses on devices which use those PHYs such as many ubnt single-port CPEs. Fixes: 7dca1bae82 (kernel: bump to 4.9.105) Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: add pending e1000e fixesStijn Tintel2018-07-314-0/+331
| | | | | | | | | | | | | | | The previous round of fixes for the 82574 chip cause an issue with emulated e1000e devices in VMware ESXi 6.5. It also contains changes that are not strictly necessary. These patches fix the issues introduced in the previous series, revert the unnecessary changes to avoid unforeseen fallout, and avoid a case where interrupts can be missed. The final two patches of this series are already in the kernel, so no need to include them here. Patchwork: https://patchwork.ozlabs.org/cover/881776/ Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: bump 4.14 to 4.14.59Stijn Tintel2018-07-3120-383/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop patch that was superseded upstream: ramips/0036-mtd-fix-cfi-cmdset-0002-erase-status-check.patch Drop upstreamed patches: - apm821xx/020-0001-crypto-crypto4xx-remove-bad-list_del.patch - apm821xx/020-0011-crypto-crypto4xx-fix-crypto4xx_build_pdr-crypto4xx_b.patch - ath79/0011-MIPS-ath79-fix-register-address-in-ath79_ddr_wb_flus.patch - brcm63xx/001-4.15-08-bcm63xx_enet-correct-clock-usage.patch - brcm63xx/001-4.15-09-bcm63xx_enet-do-not-write-to-random-DMA-channel-on-B.patch - generic/backport/080-net-convert-sock.sk_wmem_alloc-from-atomic_t-to-refc.patch - generic/pending/170-usb-dwc2-Fix-DMA-alignment-to-start-at-allocated-boun.patch - generic/pending/900-gen_stats-fix-netlink-stats-padding.patch In 4.14.55, a patch was introduced that breaks ext4 images in some cases. The newly introduced patch backport-4.14/500-ext4-fix-check-to-prevent-initializing-reserved-inod.patch addresses this breakage. Fixes the following CVEs: - CVE-2018-10876 - CVE-2018-10877 - CVE-2018-10879 - CVE-2018-10880 - CVE-2018-10881 - CVE-2018-10882 - CVE-2018-10883 Compile-tested: ath79, octeon, x86/64 Runtime-tested: ath79, octeon, x86/64 Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: switch compatible property for RedBoot DT bindingMatt Merhar2018-07-302-2/+2
| | | | | | | | | | | | | | | This changes the DT binding's compatible property to "ecoscentric,redboot-fis-partitions", removing the existing reference to Red Hat. Per the documentation hosted at eCosCentric's website, eCosCentric is RedBoot's sole commercial maintainer since 2002, and the project has been under the stewardship of the Free Software Foundation since 2008. This also updates the property in the Inventel Livebox 1 .dts, the binding's only current user. Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
* kernel: add missing include to redboot.cRafał Miłecki2018-07-302-2/+10
| | | | | | | | This fixes: drivers/mtd/redboot.c:299:34: error: array type has incomplete element type 'struct of_device_id' Fixes: 5e8b4be53177 ("kernel: add DT binding support to the mtd redboot parser") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: generic: fix problem with w1-gpio-customPawel Dembicki2018-07-302-0/+86
| | | | | | | | | | In boards with fdt is impossible to use kmod-w1-gpio-custom. w1-gpio-custom create platform structure for w1-gpio module, but if board use fdt, data is ignored in w1-gpio probe. This workaround fix the problem. Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
* kernel: add DT binding support to the mtd redboot parserRafał Miłecki2018-07-302-0/+62
| | | | | | It allows using that parser with the "compatible" set in DT. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: backport mtd support for subpartitions in DTRafał Miłecki2018-07-2716-36/+240
| | | | | | | | | | | | | | | | This is a new & warm feature that allows nesting partiitons in DT and mixing their types (e.g. static vs. dynamic). It's very useful for boards that have most partitions static but some of them require extra parsing (e.g. a "firmware" partition). It's required to successfully backport support for new devices using that new syntax in their DT files. Since brcm63xx has a custom alternative patch the upstream one is being reverted for it. The plan is to make brcm63xx use the upstream implementation. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: backport mtd patches with Broadcom of_match_table-sRafał Miłecki2018-07-274-0/+168
| | | | | | | Two tiny & trivial patches with no regression risk. One simplifies bcm53xx downstream patch. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: don't auto attach ubi on read errorMathias Kresin2018-07-242-10/+20
| | | | | | | | | | | | With a10a204aab26cc ("kernel: make ubi auto-attach check for a tar file magic") the check for the magic was added without considering a failing mtd_read(). If the read fails, no check is done and the mount code is called straight away. Failing with an error message for such cases seems to me the cleaner way, as it would allow to spot hidden/workaround issues. Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: handle bad blocks in ubi auto attach codeMathias Kresin2018-07-242-8/+36
| | | | | | | | | | The first block(s) of the ubi mtd device might be bad. We need to take care on our own to skip the bad block(s) and read the next one(s). Don't treat recoverable read errors as fatal and check for the UBI magic if the data of a block could be recovered using ECC or similar. Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: improve ubi auto attach code readabilityMathias Kresin2018-07-242-52/+62
| | | | | | | | | | | | | | Move the put_mtd_device() called on multiple error conditions to a goto label to use it later for more error conditions. The early return on failed open of the mtd device and mismatching mtd type allows to get rid of one level of indentation. By jumping to the cleanup code, a refcount bug is fixed for the wrong flash type condition. While at it, make clear that we only check for the UBI magic if the read from flash was successful. Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: backport a change to 4.9 which disables overly aggressive warnings ↵Felix Fietkau2018-07-221-0/+45
| | | | | | on gcc 8 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: backport fixes for GCC 8 errors in syscall definitionsFelix Fietkau2018-07-224-0/+457
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: backport page fragment API changes from 4.10+ to 4.9Felix Fietkau2018-07-143-0/+291
| | | | | | mt76 now relies on this API Signed-off-by: Felix Fietkau <nbd@nbd.name>
* config: extend small_flash featureAlex Maclean2018-07-123-3/+3
| | | | | | | | | | Extend the small_flash feature to disable swap, core dumps, and kernel debug info, and change the squashfs block size to 1024KiB. Also change squashfs fragment cache to 2 for small_flash to ease memory usage. Signed-off-by: Alex Maclean <monkeh@monkeh.net>
* kernel: only optimized for size if small_flashMathias Kresin2018-07-123-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | Add a new config option to allow to select the default compile optimization level for the kernel. Select the optimization for size by default if the small_flash feature is set. Otherwise "Optimize for performance" is set. Add the small_flash feature flag to all (sub)targets which had the optimization for size in their default kernel config. Remove CC_OPTIMIZE_FOR_* symbols from all kernel configs to apply the new setting. Exceptions to the above are: - lantiq, where the optimization for size is only required for the xway_legacy subtarget but was set for the whole target - mediatek, ramips/mt7620 & ramips/mt76x8 where boards should have plenty of space and an optimization for size doesn't make much sense - rb532, which has 128MByte flash Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: replace bridge port isolate hack with upstream patch backport on 4.14Felix Fietkau2018-07-113-80/+148
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: adjust bridge port isolate patch to match upstream attribute namingFelix Fietkau2018-07-113-24/+9
| | | | | | | | Newer kernels have a patch that implements compatible functionality directly. Adjust the attribute of our own patch in preparation for dropping it later Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: bump 4.14 to 4.14.54Koen Vandeputte2018-07-1123-271/+271
| | | | | | | | | | | | Rereshed all patches Reworked patches to match upstream: 335-v4.16-netfilter-nf_tables-add-single-table-list-for-all-fa.patch Compile-tested on: cns3xxx, imx6, x86_64 Runtime-tested on: cns3xxx, imx6, x86_64 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bcm47xxpart: fix getting user-space data partition nameRafał Miłecki2018-07-102-2/+4
| | | | | | | | | | | Partition name is picked by a parser_trx_data_part_name(). It has to get correct partition offset (taking care of bad blocks) to work properly. This fixes UBI support for devices that have kernel flashed on partition with a bad block. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: move CONFIG_USB_MTU3 to generic configHauke Mehrtens2018-07-071-0/+1
| | | | | | | | | | | CONFIG_USB_MTU3 is not visible for the mediatek target by default, but only when CONFIG_USB_GADGET is set. This will config option will be remove with when running "make kernel_oldconfig", move this option to the generic config to prevent this. This fixes the build of the mt7623 subtarget of the mediatek target. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: disable some DRM_PANEL config optionsHauke Mehrtens2018-07-071-0/+2
| | | | | | | The modules should not be build by default. This fixes the build of the zynq target. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: usb: dwc2 DMA alignment fixesAntti Seppälä2018-07-072-0/+176
| | | | | | | | | | Add two patches submitted for upstream review that significantly improve the dwc2 driver on openwrt from kernel stability and performance perspectives. Fixes: FS#1367 Signed-off-by: Antti Seppälä <a.seppala@gmail.com>
* kernel: remove linux 4.4 supportFelix Fietkau2018-07-07269-42118/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: bump 4.14 to 4.14.53Koen Vandeputte2018-07-041-2/+2
| | | | | | | | | Refreshed all patches Compile-tested on: cns3xxx, imx6, x86_64 Runtime-tested on: cns3xxx, imx6, x86_64 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.111Koen Vandeputte2018-07-041-2/+2
| | | | | | | | | Refreshed all patches Compile-tested on: ar71xx Runtime-tested on: ar71xx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: fix AT8032 PHY phy id maskMathias Kresin2018-07-043-13/+16
| | | | | | | | | | | | Don't mask bit 4 of the AT8022 phy id. If bit 4 of the AT8022 phy id (0x004dd023) is masked, it will match the phy id of the AR8327 switch (0x004dd033) as well. It results in applied at803x driver settings/callbacks, which will at least limit the AR8327 phys to 100MBit operation instead of the possible 1000MBit. Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: gen_stats: Fix netlink stats dumping in the presence of paddingKevin Darbyshire-Bryant2018-07-032-0/+98
| | | | | | | | | | | | | | | | | | | | | | | | Backport hot off the press upstream netlink patch. Fixes stats display from CAKE qdisc on MIPS allowing us to bump CAKE to latest version. The gen_stats facility will add a header for the toplevel nlattr of type TCA_STATS2 that contains all stats added by qdisc callbacks. A reference to this header is stored in the gnet_dump struct, and when all the per-qdisc callbacks have finished adding their stats, the length of the containing header will be adjusted to the right value. However, on architectures that need padding (i.e., that don't set CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS), the padding nlattr is added before the stats, which means that the stored pointer will point to the padding, and so when the header is fixed up, the result is just a very big padding nlattr. Because most qdiscs also supply the legacy TCA_STATS struct, this problem has been mostly invisible, but we exposed it with the netlink attribute-based statistics in CAKE. Fix the issue by fixing up the stored pointer if it points to a padding nlattr. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kernel: bump 4.14 to 4.14.52Koen Vandeputte2018-07-024-22/+17
| | | | | | | | | Refreshed all patches Compile-tested on: cns3xxx, imx6, x86_64 Runtime-tested on: cns3xxx, imx6, x86_64 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>