[PATCH] usercopy: delete __noreturn from usercopy_abort

2024-03-03 Thread Jiangfeng Xiao
y]) from (do_one_initcall+0xac/0x204) (do_one_initcall) from (do_init_module+0x44/0x1c8) (do_init_module) from (load_module+0x1d48/0x2434) (load_module) from (sys_finit_module+0xc0/0xf4) (sys_finit_module) from (ret_fast_syscall+0x0/0x50) ``` Fixes: b394d468e7d7 ("usercopy: Enhance and rename report_us

Re: [PATCH] usercopy: delete __noreturn from usercopy_abort

2024-03-04 Thread Jiangfeng Xiao
On 2024/3/4 23:15, Jann Horn wrote: > On Mon, Mar 4, 2024 at 3:02 AM Jiangfeng Xiao > wrote: >> When the last instruction of a noreturn function is a call >> to another function, the return address falls outside >> of the function boundary. This seems to cause ke

Re: [PATCH] usercopy: delete __noreturn from usercopy_abort

2024-03-04 Thread Jiangfeng Xiao
On 2024/3/5 10:54, Jiangfeng Xiao wrote: > > > On 2024/3/4 23:15, Jann Horn wrote: >> On Mon, Mar 4, 2024 at 3:02 AM Jiangfeng Xiao >> wrote: >>> When the last instruction of a noreturn function is a call >>> to another function, the return address fal

Re: [PATCH] usercopy: delete __noreturn from usercopy_abort

2024-03-04 Thread Jiangfeng Xiao
On 2024/3/5 1:40, Kees Cook wrote: > On Mon, Mar 04, 2024 at 04:15:07PM +0100, Jann Horn wrote: >> On Mon, Mar 4, 2024 at 3:02 AM Jiangfeng Xiao >> wrote: >>> When the last instruction of a noreturn function is a call >>> to another function, the return

Re: [PATCH] usercopy: delete __noreturn from usercopy_abort

2024-03-05 Thread Jiangfeng Xiao
On 2024/3/5 17:32, Kees Cook wrote: > On Tue, Mar 05, 2024 at 11:31:06AM +0800, Jiangfeng Xiao wrote: >> >> >> On 2024/3/5 1:40, Kees Cook wrote: >>> On Mon, Mar 04, 2024 at 04:15:07PM +0100, Jann Horn wrote: >>>> On Mon, Mar 4, 2024 at 3:02 AM Jiangf

Re: [PATCH] usercopy: delete __noreturn from usercopy_abort

2024-03-05 Thread Jiangfeng Xiao
On 2024/3/6 1:58, Josh Poimboeuf wrote: For the usercopy_abort function, whether '__noreturn' is added does not affect the internal behavior of the usercopy_abort function. Therefore, it is recommended that '__noreturn' be deleted so that backtrace can work properly. >>> >>>

Re: [PATCH] usercopy: delete __noreturn from usercopy_abort

2024-03-17 Thread Jiangfeng Xiao
On 2024/3/6 1:58, Josh Poimboeuf wrote: > Adding ARM folks -- see > https://lkml.kernel.org/lkml/1709516385-7778-1-git-send-email-xiaojiangf...@huawei.com > for the original bug report. > > This is an off-by-one bug which is common in unwinders, due to the fact > that the address on the stack

[PATCH] ARM: unwind: improve unwinders for noreturn case

2024-03-19 Thread Jiangfeng Xiao
x86 does. Refer to the unwind_next_frame function in the unwind_orc.c Suggested-by: Josh Poimboeuf Link: https://lkml.kernel.org/lkml/20240305175846.qnyiru7uaa7itqba@treble/ Signed-off-by: Jiangfeng Xiao --- arch/arm/include/asm/stacktrace.h | 4 arch/arm/kernel/stacktrace.c | 2 -- a

Re: [PATCH] ARM: unwind: improve unwinders for noreturn case

2024-03-19 Thread Jiangfeng Xiao
On 2024/3/20 10:46, Kees Cook wrote: > On Wed, Mar 20, 2024 at 10:19:29AM +0800, Jiangfeng Xiao wrote: >> This is an off-by-one bug which is common in unwinders, >> due to the fact that the address on the stack points >> to the return address rather than the call address.

Re: [PATCH] ARM: unwind: improve unwinders for noreturn case

2024-03-19 Thread Jiangfeng Xiao
On 2024/3/20 11:34, Matthew Wilcox wrote: > On Wed, Mar 20, 2024 at 11:30:13AM +0800, Jiangfeng Xiao wrote: >> The checkpatch.pl script reports the "WARNING: printk() should >> include KERN_ facility level" warning. >> >> That's why I changed print

[PATCH v2] ARM: unwind: improve unwinders for noreturn case

2024-03-19 Thread Jiangfeng Xiao
x86 does. Refer to the unwind_next_frame function in the unwind_orc.c Suggested-by: Josh Poimboeuf Link: https://lkml.kernel.org/lkml/20240305175846.qnyiru7uaa7itqba@treble/ Signed-off-by: Jiangfeng Xiao --- ChangeLog v1->v2 - stay printk("%s...", loglvl, ...) --- arch/arm/include/

Re: [PATCH v2] ARM: unwind: improve unwinders for noreturn case

2024-03-20 Thread Jiangfeng Xiao
On 2024/3/20 16:45, Russell King (Oracle) wrote: > On Wed, Mar 20, 2024 at 11:44:38AM +0800, Jiangfeng Xiao wrote: >> This is an off-by-one bug which is common in unwinders, >> due to the fact that the address on the stack points >> to the return address rather than the c

[PATCH v3] ARM: unwind: improve unwinders for noreturn case

2024-03-20 Thread Jiangfeng Xiao
the unwind_next_frame function in the unwind_orc.c Suggested-by: Josh Poimboeuf Link: https://lkml.kernel.org/lkml/20240305175846.qnyiru7uaa7itqba@treble/ Suggested-by: "Russell King (Oracle)" Link: https://lkml.kernel.org/lkml/zeg8wryfemmjc...@shell.armlinux.org.uk/ Signed-off-by: Jiangfeng Xiao

Re: [PATCH v2] ARM: unwind: improve unwinders for noreturn case

2024-03-21 Thread Jiangfeng Xiao
On 2024/3/21 3:40, Russell King (Oracle) wrote: > On Wed, Mar 20, 2024 at 11:30:05PM +0800, Jiangfeng Xiao wrote: >> >> >> On 2024/3/20 16:45, Russell King (Oracle) wrote: >>> On Wed, Mar 20, 2024 at 11:44:38AM +0800, Jiangfeng Xiao wrote: >>>> Th

Re: [PATCH v2] ARM: unwind: improve unwinders for noreturn case

2024-03-22 Thread Jiangfeng Xiao
On 2024/3/22 17:52, Russell King (Oracle) wrote: > On Fri, Mar 22, 2024 at 09:24:20AM +, David Laight wrote: >> From: Russell King >>> Sent: 22 March 2024 00:09 >>> >>> On Thu, Mar 21, 2024 at 11:43:41PM +0100, Ard Biesheuvel wrote: Given that this particular issue would just disappear