Downgrade linker error on protected symbols in .dynbss to a warning

Alan Modra amodra@gmail.com
Fri Apr 10 12:25:00 GMT 2015


On Fri, Apr 10, 2015 at 03:49:23AM -0700, H.J. Lu wrote:
> Adding a warning is wrong since it is OK to have copy relocation against
> protected symbol.  It works with glibc 2.22.

Not without gcc changes, and the gcc changes you posted will generate
code that is wrong if using glibc 2.21.  Somehow you even got your
changes past review into gcc-5!  That's sad for gcc-5 on x86_64.

>  Totally revert my patch is
> also wrong as indicated by tests I added since protected symbols
> should reference globally on targets with copy relocation. It will also fail
> the new protected symbol tests in glibc.

Please show me who approved your patch in the first place.

I'll OK a patch that leaves the warning enabled for previous gcc code
but disables it when detecting code that is safe to use with .dynbss
copies of protected visibility variables.  Otherwise you are just
hiding a real problem, as reported in PR15228.  Exactly how you detect
the safe code is up to you.

-- 
Alan Modra
Australia Development Lab, IBM



More information about the Binutils mailing list