lkml.org 
[lkml]   [2024]   [Mar]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 5.15 45/76] modpost: Add '.ltext' and '.ltext.*' to TEXT_SECTIONS
On Wed, Mar 13, 2024 at 10:12:29AM -0700, Nathan Chancellor wrote:
>Hi Sasha,
>
>On Wed, Mar 13, 2024 at 12:41:52PM -0400, Sasha Levin wrote:
>> From: Nathan Chancellor <nathan@kernel.org>
>>
>> [ Upstream commit 397586506c3da005b9333ce5947ad01e8018a3be ]
>>
>> After the linked LLVM change, building ARCH=um defconfig results in a
>> segmentation fault in modpost. Prior to commit a23e7584ecf3 ("modpost:
>> unify 'sym' and 'to' in default_mismatch_handler()"), there was a
>> warning:
>>
>> WARNING: modpost: vmlinux.o(__ex_table+0x88): Section mismatch in reference to the .ltext:(unknown)
>> WARNING: modpost: The relocation at __ex_table+0x88 references
>> section ".ltext" which is not in the list of
>> authorized sections. If you're adding a new section
>> and/or if this reference is valid, add ".ltext" to the
>> list of authorized sections to jump to on fault.
>> This can be achieved by adding ".ltext" to
>> OTHER_TEXT_SECTIONS in scripts/mod/modpost.c.
>>
>> The linked LLVM change moves global objects to the '.ltext' (and
>> '.ltext.*' with '-ffunction-sections') sections with '-mcmodel=large',
>> which ARCH=um uses. These sections should be handled just as '.text'
>> and '.text.*' are, so add them to TEXT_SECTIONS.
>>
>> Cc: stable@vger.kernel.org
>> Closes: https://github.com/ClangBuiltLinux/linux/issues/1981
>> Link: https://github.com/llvm/llvm-project/commit/4bf8a688956a759b7b6b8d94f42d25c13c7af130
>> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
>> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
>> Signed-off-by: Sasha Levin <sashal@kernel.org>
>
>This causes a warning when building with HOSTCC=clang:
>
> scripts/mod/modpost.c:1123:37: warning: excess elements in array initializer [-Wexcess-initializers]
> 1123 | .good_tosec = {ALL_TEXT_SECTIONS , NULL},
> | ^~~~
> .../lib/clang/17/include/stddef.h:89:16: note: expanded from macro 'NULL'
> 89 | # define NULL ((void*)0)
> | ^~~~~~~~~~
> 1 warning generated.
>
>Same comment as on the other UML clang-18 patch, I do not think this is
>necessary right now in 5.15 and earlier. The other modpost patch can go
>as well, as it is only a prerequisite change.

Dropped, thanks!

--
Thanks,
Sasha

\
 
 \ /
  Last update: 2024-03-13 21:19    [W:0.078 / U:2.312 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site