Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1621759 > unrolled thread

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

Started byBob Tracy <rct@gherkin.frus.com>
First post2017-04-12 05:10 +0200
Last post2017-04-13 05:50 +0200
Articles 3 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [BUG] alpha: module xxx: Unknown relocation: 1 Bob Tracy <rct@gherkin.frus.com> - 2017-04-12 05:10 +0200
    Re: [BUG] alpha: module xxx: Unknown relocation: 1 Helge Deller <deller@gmx.de> - 2017-04-12 08:00 +0200
      Re: [BUG] alpha: module xxx: Unknown relocation: 1 Bob Tracy <rct@gherkin.frus.com> - 2017-04-13 05:50 +0200

#1621759 — [BUG] alpha: module xxx: Unknown relocation: 1

FromBob Tracy <rct@gherkin.frus.com>
Date2017-04-12 05:10 +0200
Subject[BUG] alpha: module xxx: Unknown relocation: 1
Message-ID<tvgPn-7AL-11@gated-at.bofh.it>
(Adding linux-kernel to the distribution.  The issue seems to be
architecture-specific, but I'm trying to understand what broke.)

The 4.10-rc1 patch set made fairly extensive modifications to
"a/kernel/module.c" (I'm leaving the "a" there so there's no doubt I
mean the top-level "kernel/module.c" file and not any of the
architecture-specific ones).

One of the changes was to replace an include of <asm/uaccess.h> with
<linux/uaccess.h>.  This is potentially significant because of the
mod we made to alpha's <asm/uaccess.h> to fix the BRSGP relocation
error on __copy_user() issue.

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'll start attempting to revert the recent module patches to see if that
helps.  If anyone reading this knows what's happening, feel free to
weigh-in before I spend too much time rebuilding kernels on a slow
machine.

--Bob

[toc] | [next] | [standalone]


#1621823

FromHelge Deller <deller@gmx.de>
Date2017-04-12 08:00 +0200
Message-ID<tvjtT-Eq-1@gated-at.bofh.it>
In reply to#1621759
On 12.04.2017 04:59, Bob Tracy wrote:
> (Adding linux-kernel to the distribution.  The issue seems to be
> architecture-specific, but I'm trying to understand what broke.)
> 
> The 4.10-rc1 patch set made fairly extensive modifications to
> "a/kernel/module.c" (I'm leaving the "a" there so there's no doubt I
> mean the top-level "kernel/module.c" file and not any of the
> architecture-specific ones).
> 
> One of the changes was to replace an include of <asm/uaccess.h> with
> <linux/uaccess.h>.  This is potentially significant because of the
> mod we made to alpha's <asm/uaccess.h> to fix the BRSGP relocation
> error on __copy_user() issue.
> 
> 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'll start attempting to revert the recent module patches to see if that
> helps.  If anyone reading this knows what's happening, feel free to
> weigh-in before I spend too much time rebuilding kernels on a slow
> machine.

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

Helge

[toc] | [prev] | [next] | [standalone]


#1622696

FromBob Tracy <rct@gherkin.frus.com>
Date2017-04-13 05:50 +0200
Message-ID<tvDVD-5wV-3@gated-at.bofh.it>
In reply to#1621823
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

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web