Re: [PATCH 0/2] Tentative fix for the divide-by-zero on score/paris/..

From: Quentin Casasnovas
Date: Wed Apr 15 2015 - 17:17:54 EST


On Wed, Apr 15, 2015 at 06:26:58AM -0700, Guenter Roeck wrote:
> On 04/15/2015 01:54 AM, Quentin Casasnovas wrote:
> > The following two patches might (hopefully) fix the build breakage on score
> > and some other architectures. I've checked the new __ex_table checker
> > still works on x86-64 with them (it still detects an entry pointing to
> > .altinstr_rplacement) and they should apply cleanly on top of Rusty's
> > module-next branch.
> >
> > Thanks to Guenter for the bug analysis and sorry again for the breakage.
> >
> > Let me know if this makes things better..
> >
>
> the crash is fixed, but now I get
>
> FATAL: The relocation at __ex_table+0x4 references
> section "" which is not executable, IOW
> the kernel will fault if it ever tries to
> jump to it. Something is seriously wrong
> and should be fixed.
>
> for parisc:defconfig,
>
> FATAL: The relocation at __ex_table+0x634 references
> section "__ex_table" which is not executable, IOW
> the kernel will fault if it ever tries to
> jump to it. Something is seriously wrong
> and should be fixed.
>
> for score:allnoconfig, and
>
> FATAL: The relocation at __ex_table+0x8 references
> section "" which is not executable, IOW
> it is not possible for the kernel to fault
> at that address. Something is seriously wrong
> and should be fixed.
>
> for mn10300:defconfig.
>
> While I agree that those should get fixed (if they are real problems,
> especially the ones for parisc and mn10300), I don't think it is
> a good idea to fail the build because of it.
>
> Note that I did find the problem in the score build; that was a real bug.
> I don't know what may be wrong with the others.
>

The attached patch fixes the build failures on parisc and mn10300 on my
defconfig build and should apply cleanly on top of the previous two.

I'm not able to download the score cross toolchain for the moment but will
do tomorrow. Guenter, may I ask if there were any other problems than the
one you fixed in string.S there?

Quentin