Bug 146596

Summary: libdv uses text relocations in DSO
Product: [Fedora] Fedora Reporter: Warren Togami <wtogami>
Component: libdvAssignee: Jarod Wilson <jarod>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: dcantrell, drepper, gajownik, katzj, solar, vapier
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-08-20 14:49:44 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Warren Togami 2005-01-30 08:03:51 UTC
Description of problem:
Ulrich Drepper said that libdv currently uses text relocations in DSO's, which
is bad because it will soon be disallowed by selinux policy.  libdv must be
fixed and (harder part) verified.

Comment 1 Warren Togami 2005-10-18 02:56:30 UTC
foo, could you please post the link to the document that describes this problem
in general?


Comment 2 Warren Togami 2006-03-06 15:35:25 UTC
No progress on this, moving to FC6.

Comment 3 Jeremy Katz 2006-09-21 20:17:42 UTC
Has this been fixed?

Comment 4 Jarod Wilson 2006-09-22 19:34:00 UTC
In response to comment #1, I think this is it:
http://people.redhat.com/drepper/textrelocs.html

As for progres... So far as I can tell, this only impacts i386 builds. According
to eu-findtextrel, the problem is that the i386 assembly bits weren't compiled
with -fPIC, but forcing the build to use -fPIC still results in the same
message. Assembly isn't exactly my thing, so I'm not sure how to fix this, short
of passing the --disable-asm flag. Using --disable-asm does eliminate the text
relocations, but I'm not sure how seriously that would impact performance. I
suppose slower performance is better than it not working at all. Thoughts?

In the mean time, It would seem best to just pass --disable-asm on i386 builds.
Upstream has actually come back to life a bit of late, so maybe I can get
someone there to take a peek so we can turn asm on i386 back on later.

Comment 5 Mike Frysinger 2006-09-22 20:37:01 UTC
building asm files with -fPIC doesnt really have any meaning as the symbol
references are hand coded ... the asm itself is broken, not the build

Comment 6 Jarod Wilson 2006-09-25 20:51:47 UTC
(In reply to comment #5)
> building asm files with -fPIC doesnt really have any meaning as the symbol
> references are hand coded ... the asm itself is broken, not the build

That's sort of what I'd figured from my vague recollection of mmx assembly code.

/me makes mental note to file a bz for eu-findtextrel...

Mike, you mentioned on the libdv-dev mailing list you had some patches that were
not yet merged. Can you point me towards copies, by chance? The sf.net mailing
list archives are... less than fantastic...

Comment 7 Jesse Keating 2006-10-03 21:09:12 UTC
any further status?  Is this really blocking the release of fc6?

Comment 8 Jarod Wilson 2006-10-03 21:26:26 UTC
For the moment, we're going with an i386 build that has asm disabled. It'll be
slower, not sure how much, and when there's a text reloc fix available, we'll
incorporate it in a -updates build.

Comment 9 Jarod Wilson 2007-01-19 21:19:43 UTC
Bumping to libdv 1.0.0 and applying PIC patch from Mike:

http://bugs.gentoo.org/show_bug.cgi?id=121871
http://bugs.gentoo.org/attachment.cgi?id=98094

New rawhide and FC6 updates-testing builds to beat on are coming shortly. Test
i386 build reports no more text relocations:

$ eu-findtextrel /usr/lib/libdv.so.4*
eu-findtextrel: no text relocations reported in '/usr/lib/libdv.so.4'
eu-findtextrel: no text relocations reported in '/usr/lib/libdv.so.4.0.3'

Even better, I'm still able to decode dv material w/o a problem (playdv
sample.dv), so thus far, lookin' good (plus, its been enabled in Gentoo for
almost two months now).