Re: [BUG] alpha: module xxx: Unknown relocation: 1

From: Bob Tracy
Date: Wed Apr 12 2017 - 23:46:47 EST


On Wed, Apr 12, 2017 at 07:36:36PM +1200, Michael Cree wrote:
> On Wed, Apr 12, 2017 at 07:57:52AM +0200, Helge Deller wrote:
> > On 12.04.2017 04:59, Bob Tracy wrote:
> > > Bottom line is, no kernel I've built since 4.9 can load a module. All
> > > attempts to load a module result in the error message emitted by
> > > "arch/alpha/kernel/module.c" as follows:
> > >
> > > module XXX: Unknown relocation: 1
> >
> > I assume it's due this commmit "modversions: treat symbol CRCs as 32 bit quantities":
> > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=71810db27c1c853b335675bee335d893bc3d324b
> >
> > For parisc this patch solves it:
> > parisc: support R_PARISC_SECREL32 relocation in modules
> > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=5f655322b1ba4bd46e26e307d04098f9c84df764
> >
> > > module XXX: Unknown relocation: 1
> >
> > For alpha it seems you need to add similar code to handle R_ALPHA_REFLONG
> > to apply_relocate_add() in arch/alpha/kernel/module.c
>
> Would the attached patch fix it? Untested because I don't see the
> above issue.

I'm up and running on 4.11.0-rc6. The patch works. Feel free to add me
as the "Tested-by". Much appreciated!

--Bob