Closed Bug 604307 Opened 14 years ago Closed 14 years ago

libycbcr.so contains text relocations

Categories

(Core :: Audio/Video, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Tracking Status
blocking2.0 --- final+

People

(Reporter: stransky, Assigned: cajbir)

References

Details

+++ This bug was initially created as a clone of Bug #595112 +++ Built without libxul I got: [komat@dhcp-24-199 bin]$ eu-findtextrel libycbcr.so | c++filt either the file containing the function 'mozilla::gfx::ConvertYCbCrToRGB32(unsigned char const*, unsigned char const*, unsigned char const*, unsigned char*, int, int, int, int, int, int, int, mozilla::gfx::YUVType)' or the file containing the function '_fini' is not compiled with -fpic/-fPIC
Seems to be caused by the the inline asembly: [komat@dhcp-24-199 ycbcr]$ objdump --dynamic-syms libycbcr.so libycbcr.so: file format elf32-i386 DYNAMIC SYMBOL TABLE: 00000710 g DF .text 00000000 Base FastConvertYUVToRGB32Row _ZN7mozilla3gfx19ConvertYCbCrToRGB32EPKhS2_S2_PhiiiiiiiNS0_7YUVTypeE
Anyway, the FastConvertYUVToRGB32Row in i386 seems to be the culprint. It uses PIC incompatible asm constructions.
Presumably this also happens with libxul, right?
Assignee: nobody → kinetik
Bug 583138 updates to the latest chromium code which has different versions for PIC and non-PIC. You can see the source for the versions here: http://codesearch.google.com/codesearch/p?hl=en#OAMlx_jo-ck/src/media/base/yuv_row_posix.cc&q=fastconvert&exact_package=chromium&sa=N&cd=4&ct=rc
(In reply to comment #3) > Presumably this also happens with libxul, right? Seems so but it's hidden inside it. I tried to built ff with --disable-libxul and only library with relocations was libycbcr.so, libxul.so itself was clear.
Component: GFX: Color Management → Video/Audio
QA Contact: color-management → video.audio
Not going to look at this until bug 583138 lands.
Depends on: 583138
Building with my patch for bug 583138 and libxul disabled gives the following: $ eu-findtextrel obj-i686-pc-linux-gnu/dist/bin/libycbcr.so eu-findtextrel: no text relocations reported in 'obj-i686-pc-linux-gnu/dist/bin/libycbcr.so'
Resolving as fixed by bug 583138, and reassigning to doublec since he fixed it.
Assignee: kinetik → chris.double
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.