Commit graph

5 commits

Author SHA1 Message Date
Felix Fietkau
1e1a0592f8 kernel: fix crashes on MIPS when loading kernel modules under memory pressure
When memory is tight, modules may need to be loaded into vmalloc()
space. The code then has to generate jump trampolines which enable
relocations between vmalloc space and physical address space.

The code had a bug that was freeing these trampolines even when the
module was successfully loaded.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-15 12:35:17 +01: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
Felix Fietkau
1a797043e5 kernel: revert section sorting change from r41951
It currently does not seem to make a difference anymore, except by
increasing compressed kernel image size

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

SVN-Revision: 45385
2015-04-11 21:21:03 +00:00
Hauke Mehrtens
a76ee3b1d5 kernel: make the kernel 3.18 patches apply and boot on arm.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 43095
2014-10-27 22:55:39 +00:00
Rafał Miłecki
1513b39a8c kernel: start working on 3.18 support
This commit:
1) Copies 3.14 patches
2) Drops mainlined stuff
3) Modifies some patches to apply

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

SVN-Revision: 43093
2014-10-27 18:14:39 +00:00