* [PATCH AUTOSEL 6.1 1/5] sched: Fix KCSAN noinstr violation
@ 2023-05-09 3:55 Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 2/5] lkdtm/stackleak: Fix " Sasha Levin
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Sasha Levin @ 2023-05-09 3:55 UTC (permalink / raw)
To: linux-kernel, stable; +Cc: Josh Poimboeuf, Peter Zijlstra, Sasha Levin
From: Josh Poimboeuf <jpoimboe@kernel.org>
[ Upstream commit e0b081d17a9f4e5c0cbb0e5fbeb1abe3de0f7e4e ]
With KCSAN enabled, end_of_stack() can get out-of-lined. Force it
inline.
Fixes the following warnings:
vmlinux.o: warning: objtool: check_stackleak_irqoff+0x2b: call to end_of_stack() leaves .noinstr.text section
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/cc1b4d73d3a428a00d206242a68fdf99a934ca7b.1681320026.git.jpoimboe@kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
include/linux/sched/task_stack.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/sched/task_stack.h b/include/linux/sched/task_stack.h
index 5e799a47431e8..f158b025c1750 100644
--- a/include/linux/sched/task_stack.h
+++ b/include/linux/sched/task_stack.h
@@ -23,7 +23,7 @@ static __always_inline void *task_stack_page(const struct task_struct *task)
#define setup_thread_stack(new,old) do { } while(0)
-static inline unsigned long *end_of_stack(const struct task_struct *task)
+static __always_inline unsigned long *end_of_stack(const struct task_struct *task)
{
#ifdef CONFIG_STACK_GROWSUP
return (unsigned long *)((unsigned long)task->stack + THREAD_SIZE) - 1;
--
2.39.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH AUTOSEL 6.1 2/5] lkdtm/stackleak: Fix noinstr violation
2023-05-09 3:55 [PATCH AUTOSEL 6.1 1/5] sched: Fix KCSAN noinstr violation Sasha Levin
@ 2023-05-09 3:55 ` Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 3/5] riscv: Unconditionnally select KASAN_VMALLOC if KASAN Sasha Levin
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Sasha Levin @ 2023-05-09 3:55 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Josh Poimboeuf, Peter Zijlstra, Sasha Levin, keescook, gregkh
From: Josh Poimboeuf <jpoimboe@kernel.org>
[ Upstream commit f571da059f86fd9d432aea32c9c7e5aaa53245d8 ]
Fixes the following warning:
vmlinux.o: warning: objtool: check_stackleak_irqoff+0x2b6: call to _printk() leaves .noinstr.text section
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/ee5209f53aa0a62aea58be18f2b78b17606779a6.1681320026.git.jpoimboe@kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/misc/lkdtm/stackleak.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/misc/lkdtm/stackleak.c b/drivers/misc/lkdtm/stackleak.c
index 025b133297a6b..f1d0221609138 100644
--- a/drivers/misc/lkdtm/stackleak.c
+++ b/drivers/misc/lkdtm/stackleak.c
@@ -43,12 +43,14 @@ static void noinstr check_stackleak_irqoff(void)
* STACK_END_MAGIC, and in either casee something is seriously wrong.
*/
if (current_sp < task_stack_low || current_sp >= task_stack_high) {
+ instrumentation_begin();
pr_err("FAIL: current_stack_pointer (0x%lx) outside of task stack bounds [0x%lx..0x%lx]\n",
current_sp, task_stack_low, task_stack_high - 1);
test_failed = true;
goto out;
}
if (lowest_sp < task_stack_low || lowest_sp >= task_stack_high) {
+ instrumentation_begin();
pr_err("FAIL: current->lowest_stack (0x%lx) outside of task stack bounds [0x%lx..0x%lx]\n",
lowest_sp, task_stack_low, task_stack_high - 1);
test_failed = true;
@@ -86,11 +88,14 @@ static void noinstr check_stackleak_irqoff(void)
if (*(unsigned long *)poison_low == STACKLEAK_POISON)
continue;
+ instrumentation_begin();
pr_err("FAIL: non-poison value %lu bytes below poison boundary: 0x%lx\n",
poison_high - poison_low, *(unsigned long *)poison_low);
test_failed = true;
+ goto out;
}
+ instrumentation_begin();
pr_info("stackleak stack usage:\n"
" high offset: %lu bytes\n"
" current: %lu bytes\n"
@@ -113,6 +118,7 @@ static void noinstr check_stackleak_irqoff(void)
} else {
pr_info("OK: the rest of the thread stack is properly erased\n");
}
+ instrumentation_end();
}
static void lkdtm_STACKLEAK_ERASING(void)
--
2.39.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH AUTOSEL 6.1 3/5] riscv: Unconditionnally select KASAN_VMALLOC if KASAN
2023-05-09 3:55 [PATCH AUTOSEL 6.1 1/5] sched: Fix KCSAN noinstr violation Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 2/5] lkdtm/stackleak: Fix " Sasha Levin
@ 2023-05-09 3:55 ` Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 4/5] powerpc/fsl_uli1575: Allow to disable FSL_ULI1575 support Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 5/5] recordmcount: Fix memory leaks in the uwrite function Sasha Levin
3 siblings, 0 replies; 5+ messages in thread
From: Sasha Levin @ 2023-05-09 3:55 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Alexandre Ghiti, Björn Töpel, Palmer Dabbelt,
Sasha Levin, paul.walmsley, palmer, aou, linux-riscv
From: Alexandre Ghiti <alexghiti@rivosinc.com>
[ Upstream commit 864046c512c2cd8418dc928b91981fb12a80396c ]
If KASAN is enabled, VMAP_STACK depends on KASAN_VMALLOC so enable
KASAN_VMALLOC with KASAN so that we can enable VMAP_STACK by default.
Signed-off-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Reviewed-by: Björn Töpel <bjorn@rivosinc.com>
Link: https://lore.kernel.org/r/20230203075232.274282-7-alexghiti@rivosinc.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
arch/riscv/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 06b9b2f60b9fb..4e4d077227020 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -113,6 +113,7 @@ config RISCV
select HAVE_RSEQ
select IRQ_DOMAIN
select IRQ_FORCED_THREADING
+ select KASAN_VMALLOC if KASAN
select MODULES_USE_ELF_RELA if MODULES
select MODULE_SECTIONS if MODULES
select OF
--
2.39.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH AUTOSEL 6.1 4/5] powerpc/fsl_uli1575: Allow to disable FSL_ULI1575 support
2023-05-09 3:55 [PATCH AUTOSEL 6.1 1/5] sched: Fix KCSAN noinstr violation Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 2/5] lkdtm/stackleak: Fix " Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 3/5] riscv: Unconditionnally select KASAN_VMALLOC if KASAN Sasha Levin
@ 2023-05-09 3:55 ` Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 5/5] recordmcount: Fix memory leaks in the uwrite function Sasha Levin
3 siblings, 0 replies; 5+ messages in thread
From: Sasha Levin @ 2023-05-09 3:55 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Pali Rohár, Michael Ellerman, Sasha Levin, andriy.shevchenko,
linus.walleij, arnd, linuxppc-dev
From: Pali Rohár <pali@kernel.org>
[ Upstream commit 22fdf79171e8509db54599fd2c05ef0022ee83f5 ]
ULI1575 PCIe south bridge exists only on some Freescale boards. Allow to
disable CONFIG_FSL_ULI1575 symbol when it is not explicitly selected and
only implied. This is achieved by marking symbol as visible by providing
short description. Also adds dependency for this symbol to prevent enabling
it on platforms on which driver does not compile.
Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/20230409000812.18904-7-pali@kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
arch/powerpc/platforms/Kconfig | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/powerpc/platforms/Kconfig b/arch/powerpc/platforms/Kconfig
index d41dad227de84..608ac0290e3aa 100644
--- a/arch/powerpc/platforms/Kconfig
+++ b/arch/powerpc/platforms/Kconfig
@@ -261,7 +261,9 @@ config CPM2
on it (826x, 827x, 8560).
config FSL_ULI1575
- bool
+ bool "ULI1575 PCIe south bridge support"
+ depends on FSL_SOC_BOOKE || PPC_86xx
+ select FSL_PCI
select GENERIC_ISA_DMA
help
Supports for the ULI1575 PCIe south bridge that exists on some
--
2.39.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH AUTOSEL 6.1 5/5] recordmcount: Fix memory leaks in the uwrite function
2023-05-09 3:55 [PATCH AUTOSEL 6.1 1/5] sched: Fix KCSAN noinstr violation Sasha Levin
` (2 preceding siblings ...)
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 4/5] powerpc/fsl_uli1575: Allow to disable FSL_ULI1575 support Sasha Levin
@ 2023-05-09 3:55 ` Sasha Levin
3 siblings, 0 replies; 5+ messages in thread
From: Sasha Levin @ 2023-05-09 3:55 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Hao Zeng, Steven Rostedt, Sasha Levin, chenhuacai, zhangqing
From: Hao Zeng <zenghao@kylinos.cn>
[ Upstream commit fa359d068574d29e7d2f0fdd0ebe4c6a12b5cfb9 ]
Common realloc mistake: 'file_append' nulled but not freed upon failure
Link: https://lkml.kernel.org/r/20230426010527.703093-1-zenghao@kylinos.cn
Signed-off-by: Hao Zeng <zenghao@kylinos.cn>
Suggested-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
scripts/recordmcount.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
index cce12e1971d85..ec692af8ce9eb 100644
--- a/scripts/recordmcount.c
+++ b/scripts/recordmcount.c
@@ -102,6 +102,7 @@ static ssize_t uwrite(void const *const buf, size_t const count)
{
size_t cnt = count;
off_t idx = 0;
+ void *p = NULL;
file_updated = 1;
@@ -109,7 +110,10 @@ static ssize_t uwrite(void const *const buf, size_t const count)
off_t aoffset = (file_ptr + count) - file_end;
if (aoffset > file_append_size) {
- file_append = realloc(file_append, aoffset);
+ p = realloc(file_append, aoffset);
+ if (!p)
+ free(file_append);
+ file_append = p;
file_append_size = aoffset;
}
if (!file_append) {
--
2.39.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-05-09 3:57 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-09 3:55 [PATCH AUTOSEL 6.1 1/5] sched: Fix KCSAN noinstr violation Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 2/5] lkdtm/stackleak: Fix " Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 3/5] riscv: Unconditionnally select KASAN_VMALLOC if KASAN Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 4/5] powerpc/fsl_uli1575: Allow to disable FSL_ULI1575 support Sasha Levin
2023-05-09 3:55 ` [PATCH AUTOSEL 6.1 5/5] recordmcount: Fix memory leaks in the uwrite function Sasha Levin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox