Commit Graph

325 Commits

Author SHA1 Message Date
Tianling Shen
9d6e3e6c02
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-10-08 14:46:37 +08:00
Christian Marangi
ebabdff401
tools: add option BUILD_ALL_HOST_TOOLS to compile all host tools
Add option to compile all host tools even if not needed.
This can be useful to prepare a universal precompiled host tools
archive to use in another buildroot and speedup compilation.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2022-09-30 22:26:54 +02:00
Tianling Shen
0e0795a497
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-09-23 16:56:39 +08:00
Felix Fietkau
6eeb5d4564 kernel: disable wireless extensions only when needed
They are only needed by a few very old drivers

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2022-09-22 15:26:58 +02:00
Tianling Shen
165b0899d4
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-09-16 15:32:20 +08:00
Hauke Mehrtens
9403810c02 toolchain: Select USE_SSTRIP with external musl toolchain
When we use the internal toolchain USE_SSTRIP will be selected by
default for musl libc and USE_STRIP when glibc is used. Do the same when
an external toolchain is used. USE_GLIBC will also be set for external
toolchain builds based on the EXTERNAL_TOOLCHAIN_LIBC_USE_GLIBC setting.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-09-12 23:16:22 +02:00
Josh Roys
90c6e3aedf
scripts: always check certificates
Remove flags from wget and curl instructing them to ignore bad server
certificates. Although other mechanisms can protect against malicious
modifications of downloads, other vectors of attack may be available
to an adversary.

TLS certificate verification can be disabled by turning oof the
"Enable TLS certificate verification during package download" option
enabled by default in the "Global build settings" in "make menuconfig"

Signed-off-by: Josh Roys <roysjosh@gmail.com>
[ add additional info on how to disable this option ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2022-09-10 15:24:22 +02:00
ZiMing Mo
53bb8156ea
Merge Mainline
Signed-off-by: ZiMing Mo <msylgj@immortalwrt.org>
2022-08-22 16:24:07 +08:00
Thibaut VARÈNE
832e7b8172 build: always set CONFIG_IPV6
Disabling this build tunable breaks build and seems unrealistically
likely to be fixed.

This patch sets the related CONFIG to always true and removes the
config prompt, keeping the change minimal, and, should !CONFIG_IPV6 ever
be fixed, easy to revert.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Acked-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Paul Spooren <mail@aparcar.org>
Acked-by: Josef.Schlehofer <pepe.schlehofer@gmail.com>
Acked-by: Jo-Philipp Wich <jo@mein.io>
2022-08-20 21:41:03 +03:00
Tianling Shen
37d1d43db8
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-07-08 12:44:26 +08:00
Florian Fainelli
e7ec2d7399 kernel: add KERNEL_DEBUG_VIRTUAL
This option allows turning on CONFIG_DEBUG_VIRTUAL which is useful to
debug incorrect uses of the virtual to physical and physical to virtual
translations functions.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2022-07-07 15:07:16 -07:00
Tianling Shen
f58bf546eb
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-07-04 16:43:32 +08:00
Rafał Miłecki
abc5b28db1 bcm53xx: use -falign-functions=32 for kernel compilation
Northstar SoCs have pretty small CPU caches and their performance is
heavily affected by cache hits & misses. It means that all kind of
random code changes can affect performance as they often reorganize
(change alignment & possibly reorder) kernel symbols.

It was discussed in ARM / net mailinglists:
1. ARM router NAT performance affected by random/unrelated commits [1] [2]
2. Optimizing kernel compilation / alignments for network performance [3] [4]

It seems that -falign-functions can be used as a partial workaround. It
doesn't solve all cases (e.g. documented watchdog one [5]) but it surely
helps with many of them.

A complete long term solution may be PGO (profile-guided optimization)
but it isn't available at this point.

[1] https://lkml.org/lkml/2019/5/21/349
[2] https://www.spinics.net/lists/linux-block/msg40624.html
[3] https://lore.kernel.org/linux-arm-kernel/066fc320-dc04-11a4-476e-b0d11f3b17e6@gmail.com/T/
[4] https://www.spinics.net/lists/netdev/msg816103.html
[5] http://lists.openwrt.org/pipermail/openwrt-devel/2022-July/038989.html

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2022-07-03 13:59:12 +02:00
Tianling Shen
b6fc8cad90
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-06-21 09:04:16 +08:00
Rafał Miłecki
907d7d7472 kernel: support setting extra CFLAGS for kernel compilation
They may be used e.g. to optimize kernel size or performance.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2022-06-20 22:17:38 +02:00
Tianling Shen
4687da56ee
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-05-20 17:36:46 +08:00
Stijn Tintel
8f5c9a7d94 kernel: add KERNEL_BPF_EVENTS config option
This is required to use BPF maps of type BPF_MAP_TYPE_PERF_EVENT_ARRAY
for sending data from BPF programs to user-space for post-processing
or logging.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2022-05-18 13:32:06 +03:00
Tony Ambardar
531e0399cd build: add option KERNEL_DEBUG_INFO_BTF
Generate BTF (BPF Type Format) information from DWARF debug info. This is
embedded in the kernel and exported via sysfs as /sys/kernel/btf/vmlinux.
BTF data enhances kernel portability and introspection for BPF programs.

Selecting this also enables the dwarves host package which provides the
pahole tool used for BTF encoding.

Test using: "bpftool btf dump file /sys/kernel/btf/vmlinux format c"

This needs to depend on KERNEL_DEBUG_INFO_REDUCED not being set,
otherwise we can enable both KERNEL_DEBUG_INFO_BTF and
KERNEL_DEBUG_INFO_REDUCED, which will result in undefined behaviour.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
[split DEBUG_INFO_REDUCED into separate commit, add dependency]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2022-05-18 13:32:06 +03:00
Stijn Tintel
44bcad24b6 kernel: add DEBUG_INFO_REDUCED config option
Add DEBUG_INFO_REDUCED as a kernel config option and remove it from the
kernel configs. This is in preparation of the upcoming option to enable
BTF typeinfo, which is incompatible with DEBUG_INFO_REDUCED.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2022-05-18 13:32:06 +03:00
Stijn Tintel
d5dc6cdc53 kernel: add missing dependency to KERNEL_RPI_AXIPERF
This symbol is added by the bcm27xx target patches so it should depend
on that target.

Fixes: efd9463dcf ("kernel: add missing symbol for bcm27xx")
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2022-05-18 13:31:05 +03:00
Stijn Tintel
efd9463dcf kernel: add missing symbol for bcm27xx
When KERNEL_PERF_EVENTS is enabled in OpenWrt, the RPI_AXIPERF symbol is
exposed. Add a build option for it to fix build failures with
KERNEL_PERF_EVENTS enabled.

Fixes: 20ea6adbf1 ("bcm27xx: add support for linux v5.15")
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2022-05-17 20:54:25 +03:00
Tianling Shen
0e64bc6216
Config-images: enlarge kernel partsize to 32 MiB
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-05-04 15:12:02 +08:00
Tianling Shen
f0a8cfa1df
x86: add PVE image build
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
(cherry picked from commit c9344d6a6a)
2022-04-25 08:03:48 +08:00
Tianling Shen
727aabb447
config/Config-images.in: tweak default settings for buildbot
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-04-14 11:00:19 +08:00
Tianling Shen
bfebf042dc
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-04-05 05:15:07 +08:00
Stijn Tintel
500c37c56f 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>
2022-04-02 23:41:27 +03:00
Tianling Shen
c36fb31110
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-02-25 05:09:10 +08:00
Petr Štetiar
ce7264a6e0 config: build: cleanup whitespace issue
In order to have it tidy.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2022-02-19 13:10:01 +01:00
AmadeusGhost
3a8c6f9067 Merge Official Source 2022-02-09 19:51:52 +08:00
Marek Behún
45d541bb40 kernel: add kmod-vrf
Add option to compile kmod-vrf, support for Virtual Routing and
Forwarding (Lite).

This module depends on NET_L3_MASTER_DEV, which is a boolean kernel
option, so we need to create a configuration option also for this, and
make kmod-vrf depend on it.

Signed-off-by: Marek Behún <kabel@kernel.org>
2022-02-01 22:59:09 +01:00
Tianling Shen
5b8437bf43
Merge Official Source
Keep iptables for now.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2022-01-24 19:03:56 +08:00
Daniel Golle
8a324fb759
uml: make use of 'rootfs-part' feature
Use 'rootfs-part' feature instead of referencing the TARGET_uml in
Config-images.in.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-01-23 19:48:31 +00:00
Daniel Golle
d05ac928f6
sunxi: make use of 'rootfs-part' feature
Use 'rootfs-part' feature instead of referencing the TARGET_sunxi in
Config-images.in.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-01-23 19:48:25 +00:00
Daniel Golle
3a69b4bbb9
omap: make use of 'rootfs-part' feature
Use 'rootfs-part' feature instead of referencing the TARGET_omap in
Config-images.in.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-01-23 19:48:20 +00:00
AmadeusGhost
5dcd22bbc4 Merge Official Source 2022-01-11 23:58:41 +08:00
Matthew Hagan
033b6cef94 kernel: enhance multicast routing support
Certain utilities, such as smcroute [1], require additional multicast
routing options to be enabled, otherwise they will not function
correctly. Enable these relevant dependancies when IPv4 and/or IPv6
multicast routing are enabled.

[1] https://github.com/troglobit/smcroute/blob/master/README.md#linux-requirements

This increases the uncompressed kernel size on MIPS 24kc by 8KBytes
and the compressed kernel size by 1.8KBytes.

Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
2022-01-08 00:48:39 +01:00
Tianling Shen
bd0bd2af71
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2021-12-14 01:07:17 +08:00
Oldřich Jedlička
fd4ad6cae8 x86: added support to generate VHDX images
Added support to generate dynamic-sized VHDX images for Hyper-V.
Compile-tested on x86 and run-tested on Windows 10 21H2 (Hyper-V).

Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
2021-12-05 18:49:14 +01:00
Tianling Shen
b8ddd8c352
Config-images: change default title to ImmortalWrt
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
(cherry picked from commit 58954a92d6)
2021-11-29 03:21:47 +08:00
Tianling Shen
9afafb2357
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2021-11-23 18:11:24 +08:00
Jianhui Zhao
43b498f669 kernel: remove non-existent config symbols
The crashlog patch as not ported to kernel 5.4.

Fixes: 4e0c54bc5b ("kernel: add support for kernel 5.4")
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2021-11-20 18:53:14 +01:00
Tianling Shen
ba3b754396
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2021-11-16 22:31:16 +08:00
Stijn Tintel
38106a484c kernel: add missing symbol
Enabling KERNEL_FTRACE exposes the HIST_TRIGGERS triggers symbol. Add a
build option for it to fix build failures with KERNEL_FTRACE enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2021-11-15 03:13:43 +02:00
Tianling Shen
c418a6b451
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2021-11-09 21:22:46 +08:00
Stijn Tintel
786cbf0fa4 kernel: fix KERNEL_KASAN_VMALLOC build option
It should be config, not CONFIG.

Fixes: cbeab2cd99 ("kernel: add another missing KASAN symbol")
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2021-11-07 18:57:12 +02:00
Stijn Tintel
0ccbcb0223 kernel: add missing keyword to KERNEL_KASAN_VMALLOC
The help keyword is missing, which breaks menuconfig etc.

Fixes: cbeab2cd99 ("kernel: add another missing KASAN symbol")

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2021-11-07 18:55:17 +02:00
Stijn Tintel
cbeab2cd99 kernel: add another missing KASAN symbol
Enabling KERNEL_KASAN exposes yet another missing symbol. This did not
appear on bcm27xx but is appearing now on x86/64. Add a new kernel build
option for KASAN_VMALLOC to fix build on x86/64 with KERNEL_KASAN
enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-11-07 18:38:16 +02:00
Stijn Tintel
c5fa7ec2a6 kernel: add missing UBSAN config symbols
Enabling KERNEL_UBSAN exposes several missing symbols. Add new kernel
build options for UBSAN_BOUNDS and UBSAN_TRAP, disable CONFIG_TEST_UBSAN
in the generic kernel configs and enable CONFIG_UBSAN_MISC in generic
5.10 config. The latter symbol was removed in later kernels, as it was
causing some issues, so just disable it in 5.10 instead of adding a
build option for it.

Fixes build failures with KERNEL_UBSAN enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-11-07 17:38:01 +02:00
Stijn Tintel
ec68c75c62 kernel: add missing KASAN config symbols
Enabling KERNEL_KASAN exposes several missing symbols. As KASAN_SW_TAGS
is only implemented for arm64 CPUs and requires clang, it doesn't make
sense to make this a build option so just default to KASAN_GENERIC and
disable KASAN_SW_TAGS.

While at it, disable TEST_KASAN_MODULE in the generic 5.10 config.

Fixes build failures with KERNEL_KASAN enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-11-07 17:26:47 +02:00
Tianling Shen
786a6828e7
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2021-11-05 14:06:57 +08:00