Commit graph

76 commits

Author SHA1 Message Date
Felix Fietkau
75744d133d kernel: restore 640-bridge_no_eap_forward.patch to its original form
It was corrupted in r38528. The most obvious symptom is repeated messages like this:

Tue Sep  8 08:25:18 2015 kern.warn kernel: [77141.972226] br-lan: received packet on wlan0 with own address as source address

Signed-off-by: Dmitry Ivanov <dima@ubnt.com>

SVN-Revision: 46821
2015-09-08 14:29:55 +00:00
Felix Fietkau
2416e506f5 kernel: bridge, multicast-to-unicast: fix echoes on STA
Currently, multicast packets from an STA are sent to any according
multicast listener directly through the bridge multicast-to-unicast
feature. Unfortunately, so far this includes the originating STA, too,
resulting in multicast packets being echo'ed back to the originating STA
if it itself is a multicast listener for that group.

This behaviour breaks IPv6 duplicate address detection: An IPv6 Neighbor
Solicitation for IPv6 Duplicate Address Detection is being echo'ed back,
resulting in the host falsely detecting an address collision, which
makes the node unable to claim an IPv6 address and use IPv6 in general.

Mac80211 unfortunately only prevents the echoes for us for multicast
frames. For the multicast frames cast to a unicast destination we'll
need to take care of excluding the originator ourselves.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>

SVN-Revision: 46765
2015-09-02 09:23:59 +00:00
Jonas Gorski
a486ffacea linux: fix off-by-one in handling in /proc/net/route
Add an upstream fix for /proc/net/route causing missing routes doing
several continued reads from it.

Only 4.1+ is affected.

Closes #20403.

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

SVN-Revision: 46726
2015-08-26 10:11:41 +00:00
Felix Fietkau
ddf8858cea kernel: bridge, multicast-to-unicast: assign src after pskb_may_pull()
A call to pskb_may_pull() might reallocate skb->data. Therefore we
should only assign the src-pointer after any potential reallocations.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46721
2015-08-25 07:25:20 +00:00
Felix Fietkau
ea9963bb21 Revert "kernel: disable multicast-to-unicast translation for ipv6 neighbor solicitation (#17625)"
This reverts commit a080e8e1943156168913d0353a2e99d1151102aa.

It did not fix the problem but just hid some symptom. The real issue was
that IGMP/MLD report suppression was not considered for the
multicast-to-unicast feature. A recent netifd which isolates IGMP/MLD
reports between STAs by utilizing AP-isolation and bridge-hairpinning
should have fixed this.

It is perfectly fine to apply multicast-to-unicast to IPv6 Neighbor
Solicitations, too (once that feature is configured correctly).

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46720
2015-08-25 07:25:10 +00:00
Jonas Gorski
2d53e22357 kernel: remove already upstream applied patch
Remove 131-MIPS-export-get_c0_perfcount_int.patch which was already applied
in 4.1.6. This fixes the following build error:

arch/mips/ath79/setup.c:217:77: error: redefinition of '__kstrtab_get_c0_perfcount_int'
arch/mips/ath79/setup.c:211:77: note: previous definition of '__kstrtab_get_c0_perfcount_int' was here
arch/mips/ath79/setup.c:217:350: error: redefinition of '__ksymtab_get_c0_perfcount_int'
arch/mips/ath79/setup.c:211:350: note: previous definition of '__ksymtab_get_c0_perfcount_int' was here
scripts/Makefile.build:258: recipe for target 'arch/mips/ath79/setup.o' failed

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

SVN-Revision: 46715
2015-08-23 21:33:57 +00:00
Jonas Gorski
2d379e796f kernel: update 4.1 to 4.1.6
Changelog:
* https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.6

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

SVN-Revision: 46713
2015-08-23 18:06:11 +00:00
Jonas Gorski
2190f090bb mvebu: kirkwood: fix ehci-orion probe if generic-phy isn't enabled
Properly treat -ENOSYS as no PHY, else ehci-orion won't work without
generic phy support.

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

SVN-Revision: 46711
2015-08-23 13:35:03 +00:00
John Crispin
6856535e29 kernel: move linux, part-probe dt parsing in generic code
The "linux,part-probe" dts parsing is a pretty neat generic feature.
It has been posted to kernel.org and could easily be reused by all
targets.

This change moves the patch to the 3.18 and 4.1 generic folders, and
makes the feature available to all platforms who may want to use it.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 46654
2015-08-17 06:17:37 +00:00
Hauke Mehrtens
b1bd85c40e kernel: yaffs2: update to version from 2015-06-02
In addition to the update this also fixes compile problems with kernel 4.1.

This closes #20323.

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

SVN-Revision: 46609
2015-08-15 17:16:03 +00:00
Jonas Gorski
6be2305da8 kernel: update 4.1 to 4.1.5
Changelog:
 * https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.5

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

SVN-Revision: 46598
2015-08-14 13:06:33 +00:00
Jonas Gorski
caa73eb95c kernel: update 4.1 to 4.1.4
Changelog:
 * https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.4

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[jogo: fix brcm2708 patches, refresh target patches]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46560
2015-08-05 13:55:14 +00:00
Hauke Mehrtens
3dfacccf6f kernel: cdc_ncm: Add support for moving NDP to end of NCM frame
This patch was missing for kernel 4.0 and 4.1 in r46464. I also
replaced the version in OpenWrt with the version which went upstream
into the Linux mainline kernel.

This closes #20193 and #20192

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

SVN-Revision: 46493
2015-07-25 13:41:21 +00:00
Jonas Gorski
71f2d6f865 kmod-regmap: make regmap-mmio user selectable
REGMAP_MMIO is a hidden symbol, so it cannot be directly selected. If nothing
selects it, it will fail the build with:

ERROR: module '/store/buildbot/slave/slave/rb532/build/build_dir/target-mipsel_mips32_musl-1.1.10/linux-rb532/linux-3.18.19/drivers/base/regmap/regmap-mmio.ko' is missing.
make[2]: *** [/store/buildbot/slave/slave/rb532/build/bin/rb532/packages/base/kmod-regmap_3.18.19-1_rb532.ipk] Error 1

Fix this by adding a description to allow selecting it manually.

Fixes: r46451 ("kmod-regmap: enable MMIO support")
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46485
2015-07-25 09:55:32 +00:00
Felix Fietkau
bc0f9ad8ca kernel: fix oprofile performance counter interrupt handling on mips
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46482
2015-07-24 15:36:02 +00:00
Felix Fietkau
54f5f6fa6c kernel: update to linux 4.1.3
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46437
2015-07-22 12:45:07 +00:00
Felix Fietkau
473ddd592c kernel: fix sched_getaffinity on MIPS SMP systems (fixes enabling RPS/XPS in netifd with musl)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46420
2015-07-18 22:49:39 +00:00
John Crispin
1b73796895 kernel: fix build with CONFIG_MTD unset
Fixed typo in the patch provided by Hauke:
https://lists.openwrt.org/pipermail/openwrt-devel/2015-July/034274.html

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 46346
2015-07-14 07:38:47 +00:00
Hauke Mehrtens
763e2502b6 kernel: update 4.1 to 4.1.2
Changelog:
 * https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.2

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

SVN-Revision: 46301
2015-07-11 19:59:26 +00:00
John Crispin
8f0e96ee11 mips: Free memory when load_module fails (#14453)
The mips reloc patch introduced new allocations which were done before
add_unformed_module but never freed them in case of an error. A new hook in
Linux 3.19 called module_arch_freeing_init can be used for freeing memory
which were allocated during this init phase.

The problem can be seen when trying to load a module (via busybox insmod)
when it was already loaded.

    free -m
    for i in `seq 1 100`; do
        /sbin/insmod /lib/modules/*/ath9k.ko >& /dev/null
    done
    free -m

This simple loop would leak ~3.2 MB.

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

SVN-Revision: 46247
2015-07-07 13:48:27 +00:00
John Crispin
8fa677d7b0 generic: mtd backport for Spansion S25FL164K
Backport for the Spansion S25FL164K
It's a 8 MiB flash chip with 4 KiB erase sectors.

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>

SVN-Revision: 46237
2015-07-07 13:47:08 +00:00
John Crispin
b9463ce786 generic: Allow configuring an increment with mtd-mac-address
This is useful if the device also has an ethernet WAN interface with a
separate mac address (that is derived from the LAN mac address).

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 46220
2015-07-07 13:44:27 +00:00
Jonas Gorski
04053a1217 kernel: generic: add missing arm machtypes
Some machtypes were dropped when 4.0 support was added, and the
incomplete patch was taken over to 4.1.

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

SVN-Revision: 46187
2015-07-05 21:32:49 +00:00
Jonas Gorski
cf304f5a5e kernel: mips_disable_fpu: initialize fault_addr in fpu_emulator_cop1Handler
Code calling fpu_emulator_cop1Handler will pass on fault_addr, making gcc
complain about it not being initialized when the FPU emulator is disabled.

Fixes:

arch/mips/kernel/traps.c: In function 'do_fpe':
arch/mips/kernel/traps.c:864:22: error: 'fault_addr' may be used uninitialized in this function [-Werror=maybe-uninitialized]
  process_fpemu_return(sig, fault_addr, fcr31);
                      ^
arch/mips/kernel/traps.c: In function 'do_ri':
arch/mips/kernel/traps.c:806:22: error: 'fault_addr' may be used uninitialized in this function [-Werror=maybe-uninitialized]
  process_fpemu_return(sig, fault_addr, fcr31);
                      ^
arch/mips/kernel/traps.c:763:15: note: 'fault_addr' was declared here
  void __user *fault_addr;
               ^
arch/mips/kernel/traps.c: In function 'do_cpu':
arch/mips/kernel/traps.c:1421:28: error: 'fault_addr' may be used uninitialized in this function [-Werror=maybe-uninitialized]
   if (!process_fpemu_return(sig, fault_addr, fcr31) && !err)
                            ^
cc1: all warnings being treated as errors
make[7]: *** [arch/mips/kernel/traps.o] Error 1

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

SVN-Revision: 46184
2015-07-05 21:31:54 +00:00
Jonas Gorski
fa401693d9 kernel: improve uapi headers coexistence with musl
Make some network uapi headers detect if they are included after
not only glibc but also musl headers.

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

SVN-Revision: 46161
2015-07-03 11:48:45 +00:00
Jonas Gorski
a0c49ef46f generic: add linux 4.1 support
Boot tested: http://pastebin.com/L6aAb9xj

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
[jogo:
  update to 4.1 final
  add patches added since submission
  delete patches applied in later rcs
  restore commit messages in 220-gc-sections and 304-mips_disable_fpu
  fix 050-backport_netfilter_rtcache to match new API
  update inlined dma ops with upstream changes
  add missing config symbols
  enabled CONFIG_MULTIUSER
  update kmod defintions for 4.1
]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46112
2015-06-22 12:27:59 +00:00