Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 573874 - sys-fs/udev: Gold is broken on sparc64, but udev is hard coded to use it
Summary: sys-fs/udev: Gold is broken on sparc64, but udev is hard coded to use it
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: Sparc Linux
: Normal normal (vote)
Assignee: udev maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: gold-tracker
  Show dependency tree
 
Reported: 2016-02-04 23:43 UTC by Alex McWhirter
Modified: 2016-02-15 14:33 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
udev ebuild patch (udev-225.ebuild.patch,395 bytes, patch)
2016-02-04 23:43 UTC, Alex McWhirter
Details | Diff
Revised udev patch (udev-225.ebuild.patch,382 bytes, patch)
2016-02-05 22:27 UTC, Alex McWhirter
Details | Diff
Revised udev patch (udev-225.ebuild.patch,279 bytes, patch)
2016-02-07 01:30 UTC, Alex McWhirter
Details | Diff
Disable ld.gold by default (udev-bug573874.patch,1.01 KB, patch)
2016-02-08 17:34 UTC, Mike Gilbert
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Alex McWhirter 2016-02-04 23:43:39 UTC
Created attachment 424630 [details, diff]
udev ebuild patch

Gold is broken on sparc64 and udev is hard coded to use it. This breaks udev and anything that needs udev. eudev works fine however.

This is a relatively simple patch recommenced by Mike Frysinger which causes udev to use bfd, the default linker.

Please see the attached patch
Comment 1 SpanKY gentoo-dev 2016-02-05 19:01:44 UTC
note: upstream is aware of the gold breakage and is working on it
Comment 2 SpanKY gentoo-dev 2016-02-05 19:03:24 UTC
Comment on attachment 424630 [details, diff]
udev ebuild patch

>-

looks like your diff is reversed

>-        # Gold is broken on sparc...

we normally omit things like "..." and just use complete sentences.  we also add a tag for the relevant bug number.
  # Gold is broken on sparc currently. #573874

>-        if use sparc ; then
>-                sed -i 's:-Wl,-fuse-ld=gold::' configure.ac || die
>-        fi

since you're modifying configure.ac (an autotools input), this needs to come before the eautoreconf command called earlier in this func
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2016-02-05 19:16:48 UTC
  econf ... cc_cv_LDFLAGS__Wl__fuse_ld_gold=no

and issue solved.
Comment 4 Mike Gilbert gentoo-dev 2016-02-05 19:54:07 UTC
Alex: Does this cause a build failure, or a runtime failure?

I'm wondering how this got missed in arch testing and stabilization.
Comment 5 SpanKY gentoo-dev 2016-02-05 21:24:47 UTC
(In reply to Mike Gilbert from comment #4)

sparc64 isn't a supported target (yet).  the bug in question doesn't affect sparc32.  it's a runtime error.
Comment 6 SpanKY gentoo-dev 2016-02-05 21:24:47 UTC
(In reply to Mike Gilbert from comment #4)

sparc64 isn't a supported target (yet).  the bug in question doesn't affect sparc32.  it's a runtime error.
Comment 7 Mike Gilbert gentoo-dev 2016-02-05 22:08:28 UTC
Thanks. sys-apps/systemd is almost certainly affected as well.
Comment 8 Alex McWhirter 2016-02-05 22:27:16 UTC
Created attachment 424700 [details, diff]
Revised udev patch

This should have the above issues fixed.
Comment 9 Alex McWhirter 2016-02-05 22:29:07 UTC
(In reply to Michał Górny from comment #3)
>   econf ... cc_cv_LDFLAGS__Wl__fuse_ld_gold=no
> 
> and issue solved.

IIRC, this did not fix the issue and udev compiled against gold anyways.

I'll try again when i get back to the office in order to verify.
Comment 10 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2016-02-06 13:16:14 UTC
As a side note: if gold is broken on sparc, why is it installed?
Comment 11 SpanKY gentoo-dev 2016-02-06 15:24:01 UTC
as i noted in comment #1, upstream is already working on the bug that udev hits
Comment 12 Alex McWhirter 2016-02-07 01:30:45 UTC
Created attachment 424804 [details, diff]
Revised udev patch

(In reply to Michał Górny from comment #3)
>   econf ... cc_cv_LDFLAGS__Wl__fuse_ld_gold=no
> 
> and issue solved.

Not sure why i wasn't able to get this to work before, but it seems to be working fine. New patch added as i find it much cleaner.
Comment 13 Mike Gilbert gentoo-dev 2016-02-08 17:34:10 UTC
Created attachment 424960 [details, diff]
Disable ld.gold by default

Here's a patch that does this unconditionally. I'm setting an environment variable for consistency with existing overrides.
Comment 14 SpanKY gentoo-dev 2016-02-08 23:36:43 UTC
(In reply to Mike Gilbert from comment #13)

that makes sense to me.  the user already gets to select the default linker via binutils-config or their LDFLAGS, and that applies to all packages.
Comment 15 William Hubbs gentoo-dev 2016-02-15 14:33:54 UTC
This is applied in 229.