[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250528112319.3a7c31c4@canb.auug.org.au>
Date: Wed, 28 May 2025 11:23:19 +1000
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: Huacai Chen <chenhuacai@...ngson.cn>
Cc: Thomas Gleixner <tglx@...utronix.de>, Ingo Molnar <mingo@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>, Peter Zijlstra <peterz@...radead.org>,
Charlie Jenkins <charlie@...osinc.com>, Huacai Chen
<chenhuacai@...nel.org>, Linux Kernel Mailing List
<linux-kernel@...r.kernel.org>, Linux Next Mailing List
<linux-next@...r.kernel.org>, Youling Tang <tangyouling@...inos.cn>
Subject: Re: linux-next: manual merge of the tip tree with the loongarch
tree
Hi all,
On Mon, 5 May 2025 13:56:58 +1000 Stephen Rothwell <sfr@...b.auug.org.au> wrote:
>
> Today's linux-next merge of the tip tree got a conflict in:
>
> arch/loongarch/kernel/entry.S
>
> between commit:
>
> d62879a8b16c ("LoongArch: Enable HAVE_ARCH_STACKLEAK")
>
> from the loongarch tree and commit:
>
> 7ace1602abf2 ("LoongArch: entry: Migrate ret_from_fork() to C")
>
> from the tip tree.
>
> I fixed it up (I think - see below) and can carry the fix as
> necessary. This is now fixed as far as linux-next is concerned, but any
> non trivial conflicts should be mentioned to your upstream maintainer
> when your tree is submitted for merging. You may also want to consider
> cooperating with the maintainer of the conflicting tree to minimise any
> particularly complex conflicts.
>
>
> diff --cc arch/loongarch/kernel/entry.S
> index 77f6fb9146a2,2abc29e57381..000000000000
> --- a/arch/loongarch/kernel/entry.S
> +++ b/arch/loongarch/kernel/entry.S
> @@@ -78,25 -77,21 +78,23 @@@ SYM_CODE_START(handle_syscall
> SYM_CODE_END(handle_syscall)
> _ASM_NOKPROBE(handle_syscall)
>
> - SYM_CODE_START(ret_from_fork)
> + SYM_CODE_START(ret_from_fork_asm)
> UNWIND_HINT_REGS
> - bl schedule_tail # a0 = struct task_struct *prev
> - move a0, sp
> - bl syscall_exit_to_user_mode
> + move a1, sp
> + bl ret_from_fork
> + STACKLEAK_ERASE
> RESTORE_STATIC
> RESTORE_SOME
> RESTORE_SP_AND_RET
> - SYM_CODE_END(ret_from_fork)
> + SYM_CODE_END(ret_from_fork_asm)
>
> - SYM_CODE_START(ret_from_kernel_thread)
> + SYM_CODE_START(ret_from_kernel_thread_asm)
> UNWIND_HINT_REGS
> - bl schedule_tail # a0 = struct task_struct *prev
> - move a0, s1
> - jirl ra, s0, 0
> - move a0, sp
> - bl syscall_exit_to_user_mode
> + move a1, sp
> + move a2, s0
> + move a3, s1
> + bl ret_from_kernel_thread
> + STACKLEAK_ERASE
> RESTORE_STATIC
> RESTORE_SOME
> RESTORE_SP_AND_RET
This is now a conflict between the loongarch tree and Linus' tree.
--
Cheers,
Stephen Rothwell
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists