I'm finishing SDL video driver for xine when i noticed that if hardware acceleration is disabled (SDL_VIDEO_YUV_HWACCEL=0 or no hw support) the SDL driver dies by segfault. Backtrace as follows: #0 0x40772fd3 in _Hermes_X86_CPU () from /usr/lib/libSDL-1.2.so.0 (gdb) bt #0 0x40772fd3 in _Hermes_X86_CPU () from /usr/lib/libSDL-1.2.so.0 #1 0x0855ab28 in ?? () at eval.c:41 #2 0x40759a3f in SDL_CreateYUVOverlay () from /usr/lib/libSDL-1.2.so.0 #3 0x4071fd11 in sdl_update_frame_format (this_gen=0x80be340, frame_gen=0x80f96a0, width=320, height=240, ratio_code=42, format=842094169, flags=3) at video_out_sdl.c:322 (#3 is the last xine code before SDL) Searching for this problem on google i found an interesting message: http://www.libsdl.org/pipermail/sdl/2001-October/039389.html So i tried to fix the problem with the steps: 1) downloaded SDL-1.2.3 sources and recompiled it on RH7.2. 2) tried xine again. No luck, still segfaults. 3) downloaded and installed nasm-0.98.08. 4) recompiled SDL-1.2.3 with the new nasm. 5) tried xine again. Worked flawless, the problem is gone. I guess this guy (Mattias Engdegerd) is right. You must upgrade to a newer nasm version or disable the asm code.
Since I can't build SDL against something we aren't shipping I'm reassigning this to nasm as a request to update the nasm package.
There is no newer release of nasm. This is a development version. I don't want to add that... I'll upgrade when it's released.
Ok. So maybe SDL asm code should be disabled until we have a nasm version capable of generating good code? (eg. commenting USE_ASMBLIT) In fact, I don't want to discuss if it's either SDL or nasm fault. I'm justing suggesting a workaround to have working libraries at RH distro. This bug is real. Some other reports about it: http://pub89.ezboard.com/fkyra4971frm5.showMessage?topicID=7.topic http://www.libsdl.org/pipermail/sdl/2001-October/039089.html (this one explains the bug) People over the web have even guessed this to be a gcc-2.96 problem!! there are myths that never die... :)
btw, version 0.98.08 is the only one listed on downloads section of nasm homepage. http://www.octium.net/nasm/?page=download it looks like a release version to me (marked as "bugfixes")
I know the nasm bug is real, and when 0.99 or 1.0 is out, I'll upgrade. (wow... yet another nasm site. Another one has 0.98.22.)