[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YE+cp6mPfcOmJMsa@hirez.programming.kicks-ass.net>
Date: Mon, 15 Mar 2021 18:43:03 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Josh Poimboeuf <jpoimboe@...hat.com>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
Thomas Gleixner <tglx@...utronix.de>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
the arch/x86 maintainers <x86@...nel.org>,
Steven Rostedt <rostedt@...dmis.org>
Subject: Re: [GIT pull] locking/urgent for v5.12-rc3
On Mon, Mar 15, 2021 at 12:03:21PM -0500, Josh Poimboeuf wrote:
> On Mon, Mar 15, 2021 at 01:08:27PM +0100, Peter Zijlstra wrote:
> > On Mon, Mar 15, 2021 at 12:26:12PM +0100, Peter Zijlstra wrote:
> > > Ooooh, modules don't have this. They still have regular
> > > .static_call_sites sections, and *those* are unaligned.
> > >
> > > Section Headers:
> > > [Nr] Name Type Address Off Size ES Flg Lk Inf Al
> > >
> > > [16] .static_call_sites PROGBITS 0000000000000000 008aa1 0006f0 00 WA 0 0 1
> > >
> > > And that goes *BOOM*.. Let me ses if I can figure out how to make
> > > objtool align those sections.
> >
> > The below seems to have cured it:
> >
> > [16] .static_call_sites PROGBITS 0000000000000000 008aa8 0006f0 00 WA 0 0 8
> >
> >
> > So, anybody any opinion on if we ought to do this?
>
> I'd say yes to alignment, for the sake of consistency with vmlinux.
>
> Though instead of using objtool, it can be done in the module linker
> script:
Pfff, I should've looked for one.. Yes, that's much nicer.
> diff --git a/scripts/module.lds.S b/scripts/module.lds.S
> index 168cd27e6122..73345cbfe100 100644
> --- a/scripts/module.lds.S
> +++ b/scripts/module.lds.S
> @@ -17,6 +17,7 @@ SECTIONS {
> .init_array 0 : ALIGN(8) { *(SORT(.init_array.*)) *(.init_array) }
>
> __jump_table 0 : ALIGN(8) { KEEP(*(__jump_table)) }
> + .static_call_sites 0 : ALIGN(8) { KEEP(*(.static_call_sites)) }
>
> __patchable_function_entries : { *(__patchable_function_entries) }
>
>
Powered by blists - more mailing lists