Linus fixes a sound bug ?

Well, kinda. Just follow the comments on this bug report regarding a sound problem in Fedora 14.

A user reported about not being able to get mp3 play smoothly and a few other confirmed the issue with Fedora 14. Tests pointed at the kernel or sound driver. A user (Michael Young) and the Linus him self proved this wrong. and Michael found out it caused by a “feature” in glibc. From there Linus provided a work around till the glibc guys will fix the issue (and as for now they claim it’s not a bug).

I’m sure the user who opened the bug reported didn’t expect this whole chain of events… it’s quite amazing.

4 Comments

Filed under Fedora

4 responses to “Linus fixes a sound bug ?

  1. Joe Buck

    It’s not a glibc bug; it is a bug in the Flash plugin.

    The standard for memcpy says that the source buffer and the destination buffer cannot overlap, and that if you want to do a copy with overlapping ranges you should use memmove. The code happened to work before, because the copy happened in a forward direction; the new implementation changed it to go in a backward direction because this is faster on some processors. The function still correctly implements the Posix behavior, but this broke the proprietary Flash plugin. Flash should have called memmove in this place.

  2. Tor

    Yep, not a glibc bug, it’s an Adobe bug. Pretty basic bug too. Of course the effect of that kind of bugs can be severe, so (according to one of Linus’ posts in that thread) the x86 in-kernel memcpy is actually a memmove, so to not crash the kernel if a bug like that shows up in kernel code.

    User level is something else, and Adobe should fix their code. A bit of valgrinding would have detected that, if code inspection didn’t.

    I’m not so certain the backwards-copying glibc memcpy will really turn out to be faster, it’s difficult to imagine why it would be, for the general case. Even then, I’m less concerned about problems with the flash player (it didn’t crash even, it only affected the sound). There’s wasn’t even a flash player at all for quite a while recently (the 64-bit one, that is), and if the glibc change can flush out that kind of bugs, well that’s fine I think. More important than the pain of having trouble with the flash player for some time. (One of the comments mentioned a beta flash player though.. does Fedora use the _previous_, retracted flash player? I’m not familiar with Fedora.)

  3. As always, Linus shows how fucked up he is:

    Not only he proves that flash is fucked up, but also proves that the fixes made by Intel to glibc are crap and his version of memcpy().

    Yes, Linus kicks ass, as always.

  4. I quite agree with glibc developers that this is not a bug in glibc but just a flash player bug.

    To be honest I don’t understand why they change this, but this is other questions…

    So everybody is right – but still most users are screwed by the fact that flash does not work well. So from Fedora’s point of view I would revert this memcpy back for a while and request flash developers to release an update.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s