Re: [PATCH 5.10 000/317] 5.10.219-rc1 review

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jun 13, 2024 at 08:43:41PM +0530, Naresh Kamboju wrote:
> On Thu, 13 Jun 2024 at 17:43, Greg Kroah-Hartman
> <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > This is the start of the stable review cycle for the 5.10.219 release.
> > There are 317 patches in this series, all will be posted as a response
> > to this one.  If anyone has any issues with these being applied, please
> > let me know.
> >
> > Responses should be made by Sat, 15 Jun 2024 11:31:50 +0000.
> > Anything received after that time might be too late.
> >
> > The whole patch series can be found in one patch at:
> >         https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.10.219-rc1.gz
> > or in the git tree and branch at:
> >         git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.10.y
> > and the diffstat can be found below.
> >
> > thanks,
> >
> > greg k-h
> 
> 
> The following build errors are noticed on riscv with clang-18 toolchain
> but gcc-12 builds pass.
> 
> However, compared with older releases this is a build regression on
> stable-rc 5.10.
> 
> Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>
> 
> riscv:
>  defconfig - gcc-12 - PASS
>  defconfig - clang-18 - FAILED
> 
> Build error:
> ------
> arch/riscv/kernel/stacktrace.c:75:52: error: incompatible pointer to
> integer conversion passing 'void *' to parameter of type 'unsigned
> long' [-Wint-conversion]
>    75 |                                 if
> (unlikely(!__kernel_text_address(pc) || !fn(arg, pc)))
>       |
>                 ^~~
> include/linux/compiler.h:78:42: note: expanded from macro 'unlikely'
>    78 | # define unlikely(x)    __builtin_expect(!!(x), 0)
>       |                                             ^
> arch/riscv/kernel/stacktrace.c:75:57: error: incompatible integer to
> pointer conversion passing 'unsigned long' to parameter of type 'void
> *' [-Wint-conversion]
>    75 |                                 if
> (unlikely(!__kernel_text_address(pc) || !fn(arg, pc)))
>       |
>                      ^~
> include/linux/compiler.h:78:42: note: expanded from macro 'unlikely'
>    78 | # define unlikely(x)    __builtin_expect(!!(x), 0)
>       |                                             ^
> 2 errors generated.
> make[3]: *** [scripts/Makefile.build:286:
> arch/riscv/kernel/stacktrace.o] Error 1

It looks like either commit 9dd97064e21f ("riscv: Make stack walk
callback consistent with generic code") should be applied with the
straight from upstream copy of commit 7ecdadf7f8c6 ("riscv: stacktrace:
Make walk_stackframe cross pt_regs frame") or the latter commit's 5.10
backport should be modified to match the linux-5.10.y order of the
arguments:

diff --git a/arch/riscv/kernel/stacktrace.c b/arch/riscv/kernel/stacktrace.c
index c38b20caad7c..010e4c881c8b 100644
--- a/arch/riscv/kernel/stacktrace.c
+++ b/arch/riscv/kernel/stacktrace.c
@@ -72,7 +72,7 @@ void notrace walk_stackframe(struct task_struct *task, struct pt_regs *regs,
 			pc = ftrace_graph_ret_addr(current, NULL, frame->ra,
 						   &frame->ra);
 			if (pc == (unsigned long)ret_from_exception) {
-				if (unlikely(!__kernel_text_address(pc) || !fn(arg, pc)))
+				if (unlikely(!__kernel_text_address(pc) || !fn(pc, arg)))
 					break;
 
 				pc = ((struct pt_regs *)sp)->epc;

Cheers,
Nathan




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux