On 25.11.2024 21:28, Julien Grall wrote: > On 01/10/2024 16:17, Jan Beulich wrote: >> Locally override SYM_PUSH_SECTION() to retain the intended section >> association. >> >> Signed-off-by: Jan Beulich <jbeul...@suse.com> >> --- >> v7: New. >> >> --- a/xen/arch/arm/arm32/head.S >> +++ b/xen/arch/arm/arm32/head.S >> @@ -48,13 +48,20 @@ >> >> .section .text.header, "ax", %progbits >> .arm >> +/* >> + * Code below wants to all live in the section established above. >> Annotations >> + * from xen/linkage.h therefore may not switch sections (honoring >> + * CONFIG_CC_SPLIT_SECTIONS). Override the respective macro. >> + */ >> +#undef SYM_PUSH_SECTION >> +#define SYM_PUSH_SECTION(name, attr) > > Are you suggesting the code in arch/*/head.S has a latent bug?
I don't think I'd call this a "bug". Code which is sensitive to what precise section it lives in better is left unaffected by the per-function sections that CC_SPLIT_SECTIONS=y asks for. Which precise way this is arranged for is a separate question. You'll find a few more instances of this approach throughout the series. Jan