arts cannot work with esd

Bug #34983 reported by Francois-Denis Gonthier
10
Affects Status Importance Assigned to Milestone
arts (Ubuntu)
Won't Fix
Low
Unassigned

Bug Description

arts cannot function with esd in Dapper, probably because of a recent upgrade in arts or KDE package that I could trace.

Symptoms: arts simply blocks. It became pretty bad for me because arts was set to run with esd in the control panel. Since it did not respond after starting, it gets automatically restarted, I ended up with a ton of artsd process doing nothing in background.

To reproduce:

kill any artsd process currently running.
in one terminal, start esd.
in another terminal, start artsd: artsd -a esd -l0

you will get this:

artsd version is 1.5.1
gsl: using Unix98 pthreads directly for mutexes and conditions
[artsd: 4826] SoundServerStartup --> got lock
virtualize StereoVolumeControl
audio format is 44100 Hz, 16 bits, 2 channels
addDirectory(/usr/lib/mcop,)
addDirectory(/usr/lib/mcop/Amarok,Amarok)
addDirectory(/usr/lib/mcop/Arts,Arts)
addDirectory(/usr/lib/mcop/Arts/Environment,Arts::Environment)
addDirectory(/home/neumann/.mcop/trader-cache,)
Arts::MidiManager registered successfully.
[artsd: 4826] SoundServerStartup <-- released lock

at this point, artsd is blocked and can't be stopped with ctrl+c. Stopping esd will stop artsd.

Stack trace of artsd at the moment it is blocked:

#0 0x00002aaaab66d602 in write () from /lib/libc.so.6
#1 0x00002aaaaae05d5f in Arts::AudioIOESD::write ()
   from /usr/lib/libartsflow.so.1
#2 0x00002aaaaae0deda in Arts::AudioSubSystem::handleIO ()
   from /usr/lib/libartsflow.so.1
#3 0x00002aaaaae21430 in Arts::Synth_PLAY_impl::notifyIO ()
   from /usr/lib/libartsflow.so.1
#4 0x00002aaaabbe3010 in Arts::StdIOManager::processOneEvent ()
   from /usr/lib/libmcop.so.1
#5 0x00002aaaabbdcce6 in Arts::StdIOManager::run () from /usr/lib/libmcop.so.1
#6 0x0000000000416b0d in ?? ()
#7 0x00002aaaab5cf49b in __libc_start_main () from /lib/libc.so.6
#8 0x000000000040ee1a in ?? ()
#9 0x00007fffff99fe78 in ?? ()
#10 0x000000000000001c in ?? ()
#11 0x0000000000000004 in ?? ()
#12 0x00007fffff9a08c4 in ?? ()
#13 0x00007fffff9a08d3 in ?? ()
#14 0x00007fffff9a08d6 in ?? ()
#15 0x00007fffff9a08da in ?? ()
#16 0x0000000000000000 in ?? ()

I will attach an strace output after this message.

Revision history for this message
Francois-Denis Gonthier (fdgonthier) wrote : strace output

Here is the strace output. You can see there is a big loop of write. It is an endless loop that stopped when I killed esd. I don't know what those write's are doing.

Revision history for this message
ZhengPeng Hou (zhengpeng-hou) wrote :

Can reprodue in my system

Matt Zimmerman (mdz)
Changed in arts:
assignee: nobody → jr
Revision history for this message
Frode M. Døving (frode) wrote :

Confirmed on current dapper.

Changed in arts:
assignee: jr → kubuntu-team
status: Unconfirmed → Confirmed
Revision history for this message
Sarah Kowalik (hobbsee-deactivatedaccount) wrote :

Does this still happen on gutsy? We've had a few upgrades since the dapper version...

Changed in arts:
assignee: kubuntu-team → nobody
status: Confirmed → Incomplete
Revision history for this message
Francois-Denis Gonthier (fdgonthier) wrote :

Woah, it's been a while.

I'm not running Gutsy at the moment. I've decided not to upgrade before the official release, for various reasons.

BUT, I can confirm this still happens on Feisty. I started artsd and esd the same way, and ended up with the same symptom of artsd being blocked.

When tested with mplayer -ao, sound play through esd, but not through artsd. It's apparently not accepting any connections.

stracing artsd shows the same endless loop with numerous call to write().

I conclude that nothing has changed about this bug.

Revision history for this message
Francois-Denis Gonthier (fdgonthier) wrote :

Last night I tested with arts 1.5.7 and esd 0.2.38, the versions that are currently in Gutsy. The same problem happens. I can then say that this problem is very likely to happen in Gutsy, except if the cause of a problem is in a component I have not yet been able to relate to the problem.

I've been tracing artsd code, and found the loop is contained in Arts::AudioSubSystem::handleIO at audiosubsys.cc. This is as far as I am in the debugging for now.

Changed in arts:
status: Incomplete → New
Revision history for this message
Alexander Kopf (kopf-alexander) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. You reported this bug a while ago and there hasn't been any activity in it recently. We were wondering is this still an issue for you? Can you try with latest Ubuntu release? Thanks in advance.

Changed in arts:
status: New → Incomplete
Revision history for this message
Francois-Denis Gonthier (fdgonthier) wrote : Re: [Bug 34983] Re: arts cannot work with esd

>>>>> "Xander" == Xander <email address hidden> writes:

    Xander> Thank you for taking the time to report this bug and
    Xander> helping to make Ubuntu better. You reported this bug a
    Xander> while ago and there hasn't been any activity in it
    Xander> recently. We were wondering is this still an issue for
    Xander> you? Can you try with latest Ubuntu release? Thanks in
    Xander> advance.

    Xander> ** Changed in: arts (Ubuntu) Status: New => Incomplete

Last time I tried it was still a problem. I don't remember testing
this with the now more relevant PulseAudio since Esound is slowly
getting deprecated.

IMHO, this bug is getting less relevant.

Revision history for this message
Daniel T Chen (crimsun) wrote :

(Demoting importance due to existing workaround.)

Changed in arts:
importance: Medium → Low
Revision history for this message
Jonathan Thomas (echidnaman) wrote :

aRts is now unmaintained upstream so this probably won't ever be fixed. New releases of Ubuntu wouldn't have arts installed anyways.

Changed in arts:
status: Incomplete → Invalid
status: Invalid → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.