Commit graph

40 commits

Author SHA1 Message Date
Ksawlii
30be8d24dc Revert "config: Enable Cpusets Assist"
This reverts commit ee9eb5ecb8.
2024-11-18 07:48:28 +01:00
Ksawlii
33064395e7 defconfigs: Nuked CONFIG_CFI_CLANG* 2024-11-17 23:43:38 +01:00
Ksawlii
2db26df4fb Added a build option without Debug 2024-11-17 22:11:18 +01:00
Viresh Kumar
0b239017a9 arch_topology: Rename freq_scale as arch_freq_scale
Rename freq_scale to a less generic name, as it will get exported soon
for modules. Since x86 already names its own implementation of this as
arch_freq_scale, lets stick to that.

Suggested-by: Will Deacon <will@kernel.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
2024-11-17 17:45:22 +01:00
Sultan Alsawaf
15898055b7 arm64: lse: Always use LSE atomic instructions
Since we are compiling for a single chipset that is known to support LSE,
the system_uses_lse_atomics() static branch can be eliminated entirely.

Therefore, make system_uses_lse_atomics() always true to always use LSE
atomics, and update ARM64_LSE_ATOMIC_INSN() users to get rid of the extra
nops used for alternatives patching at runtime.

This reduces generated code size by removing LL/SC atomics, which improves
instruction cache footprint.

Signed-off-by: Sultan Alsawaf <sultan@kerneltoast.com>
2024-11-17 17:45:05 +01:00
TEACAET
ee9eb5ecb8 config: Enable Cpusets Assist 2024-11-17 17:38:55 +01:00
Ren Zhijie
8cb061b824 arm64: armv8_deprecated: fix unused-function error
commit 223d3a0d30b6e9f979f5642e430e1753d3e29f89 upstream.

If CONFIG_SWP_EMULATION is not set and
CONFIG_CP15_BARRIER_EMULATION is not set,
aarch64-linux-gnu complained about unused-function :

arch/arm64/kernel/armv8_deprecated.c:67:21: error: ‘aarch32_check_condition’ defined but not used [-Werror=unused-function]
 static unsigned int aarch32_check_condition(u32 opcode, u32 psr)
                     ^~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

To fix this warning, modify aarch32_check_condition() with __maybe_unused.

Fixes: 0c5f416219da ("arm64: armv8_deprecated: move aarch32 helper earlier")
Signed-off-by: Ren Zhijie <renzhijie2@huawei.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Link: https://lore.kernel.org/r/20221124022429.19024-1-renzhijie2@huawei.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-08 11:26:06 +01:00
Mark Rutland
45234f663e arm64: armv8_deprecated: move aarch32 helper earlier
commit 0c5f416219da3795dc8b33e5bb7865a6b3c4e55c upstream.

Subsequent patches will rework the logic in armv8_deprecated.c.

In preparation for subsequent changes, this patch moves some shared logic
earlier in the file. This will make subsequent diffs simpler and easier to
read.

At the same time, drop the `__kprobes` annotation from
aarch32_check_condition(), as this is only used for traps from compat
userspace, and has no risk of recursion within kprobes. As this is the
last kprobes annotation in armve8_deprecated.c, we no longer need to
include <asm/kprobes.h>.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Joey Gouly <joey.gouly@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20221019144123.612388-9-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-08 11:26:05 +01:00
Mark Rutland
8daf78df00 arm64: armv8_deprecated move emulation functions
commit 25eeac0cfe7c97ade1be07340e11e7143aab57a6 upstream.

Subsequent patches will rework the logic in armv8_deprecated.c.

In preparation for subsequent changes, this patch moves the emulation
logic earlier in the file, and moves the infrastructure later in the
file. This will make subsequent diffs simpler and easier to read.

This is purely a move. There should be no functional change as a result
of this patch.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Joey Gouly <joey.gouly@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20221019144123.612388-8-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-08 11:26:05 +01:00
Mark Rutland
c11282937a arm64: armv8_deprecated: fold ops into insn_emulation
commit b4453cc8a7ebbd45436a8cd3ffeaa069ceac146f upstream.

The code for emulating deprecated instructions has two related
structures: struct insn_emulation_ops and struct insn_emulation, where
each struct insn_emulation_ops is associated 1-1 with a struct
insn_emulation.

It would be simpler to combine the two into a single structure, removing
the need for (unconditional) dynamic allocation at boot time, and
simplifying some runtime pointer chasing.

This patch merges the two structures together.

There should be no functional change as a result of this patch.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Joey Gouly <joey.gouly@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20221019144123.612388-7-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-08 11:26:05 +01:00
Mark Rutland
38d8f53bc8 arm64: allow kprobes on EL0 handlers
commit b3a0c010e900a9f89dcd99f10bd8f7538d21b0a9 upstream.

Currently do_sysinstr() and do_cp15instr() are marked with
NOKPROBE_SYMBOL(). However, these are only called for exceptions taken
from EL0, and there is no risk of recursion in kprobes, so this is not
necessary.

Remove the NOKPROBE_SYMBOL() annotation, and rename the two functions to
more clearly indicate that these are solely for exceptions taken from
EL0, better matching the names used by the lower level entry points in
entry-common.c.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Joey Gouly <joey.gouly@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20221019144123.612388-2-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-08 11:26:02 +01:00
Mark Rutland
57dfdfa428 arm64: die(): pass 'err' as long
commit 18906ff9af6517c20763ed63dab602a4150794f7 upstream.

Recently, we reworked a lot of code to consistentlt pass ESR_ELx as a
64-bit quantity. However, we missed that this can be passed into die()
and __die() as the 'err' parameter where it is truncated to a 32-bit
int.

As notify_die() already takes 'err' as a long, this patch changes die()
and __die() to also take 'err' as a long, ensuring that the full value
of ESR_ELx is retained.

At the same time, die() is updated to consistently log 'err' as a
zero-padded 64-bit quantity.

Subsequent patches will pass the ESR_ELx value to die() for a number of
exceptions.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>
Cc: Alexandru Elisei <alexandru.elisei@arm.com>
Cc: Amit Daniel Kachhap <amit.kachhap@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20220913101732.3925290-3-mark.rutland@arm.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-08 11:25:59 +01:00
Gabriel2392
bcec93dfdf Revert "a53x: Get, fix, build and load zfs as module"
This reverts commit d647d8588c15ccd1a8fa96d20fed65b6c5c61f9d.
2024-10-04 20:09:30 -03:00
Gabriel
ea8931ae2b config: Enable CONFIG_USB_MON 2024-10-04 20:09:30 -03:00
Gabriel
eb2211b3d8 config: Enable CONFIG_PID_NS 2024-10-04 20:09:30 -03:00
Gabriel
80e4b2d56f a53x: Enable CONFIG_USER_NS 2024-10-04 20:09:30 -03:00
Gabriel2392
707896531b a53x: Get, fix, build and load zfs as module 2024-10-04 20:09:30 -03:00
Gabriel2392
0e1e7afdf9 crypto/zram: Add lz4fast algorithm
> Up to 3 times faster than default lz4
> Uses LZ4_compress_fast level 32
2024-10-04 20:09:29 -03:00
Gabriel2392
f0e1d81647 Add build stuff 2024-06-15 16:48:05 -03:00
Gabriel
7370a77c88 a53x: enable squashfs, btrfs and xfs 2024-06-15 16:43:02 -03:00
Gabriel2392
d04378f078 Backport mac80211 patches from linux-6.1.y 2024-06-15 16:29:20 -03:00
Gabriel2392
c58c7488b1 Add rtl8821au drivers
From https://github.com/morrownr/8821au-20210708 with fixes from https://github.com/aircrack-ng/rtl8812au and some other fixes for clang / 5.10 android kernel.
2024-06-15 16:29:05 -03:00
Gabriel2392
ec54855c0d config: Enable CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3 2024-06-15 16:28:49 -03:00
TALU
2a549c0e64 Revert "arm64: sigcontext: use standard __uint128_t type for vregs in struct fpsimd_context."
This reverts commit 447dabc1fedbafb1f9894e0c3054bf546a1af913
as it causes this issue with the Android build system:

out/soong/.intermediates/vendor/lineage/build/soong/generated_kernel_includes/ge
n/usr/include/asm/sigcontext.h:53:2: error: unknown type name '__uint128_t'
        __uint128_t vregs[32];
        ^
1 error generated.
2024-06-15 16:28:48 -03:00
roynatech2544
79d88bc5f0 ARM64: boot: dts: Use always-y
always is deprecated
2024-06-15 16:28:20 -03:00
Gabriel2392
8ed10b410f dts: Remove useless dtbs 2024-06-15 16:27:09 -03:00
Linux4
8c7c9710ce ARM64: dts: Fix multi string separation 2024-06-15 16:25:47 -03:00
roynatech2544
34a6e2f931 ARM64: boot: Select Image as default target 2024-06-15 16:21:19 -03:00
Gabriel2392
2efbd45726 configs: Disable Mali debugging 2024-06-15 16:21:18 -03:00
Gabriel2392
b31296d247 configs/drivers: Disable all sec_debug related stuff 2024-06-15 16:21:18 -03:00
Gabriel2392
4014f44f37 configs: Disable STACKPROTECTOR* 2024-06-15 16:21:18 -03:00
Gabriel2392
10f91eca87 configs: Disable CONFIG_LOCALVERSION_AUTO 2024-06-15 16:21:18 -03:00
Gabriel2392
5b70558bfb configs: Enable r38 Mali driver 2024-06-15 16:21:18 -03:00
Jesse Chan
291e406356 defconfig: disable CONFIG_CRYPTO_FIPS 2024-06-15 16:21:18 -03:00
roynatech2544
1fcebcf001 ARM64: configs: Turn off CONFIG_HEADERS_INSTALL
We dont need kernel headers
- Also enable CONFIG_DEBUG_SECTION_MISMATCH
2024-06-15 16:21:18 -03:00
erfanoabdi
dc32d2987c drivers: Nuke kperfmon 2024-06-15 16:21:16 -03:00
Rob Burton
c453e653ba security: samsung: defex_lsm: nuke 2024-06-15 16:20:49 -03:00
BlackMesa123
adc8f9c501 ARM64: configs: a53x_defconfig: Disable Knox/Security related features 2024-06-15 16:19:51 -03:00
Gabriel2392
c81e3117dd Make a copy of defconfig 2024-06-15 16:16:19 -03:00
Gabriel2392
7ed7ee9edf Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00