Comment 9 for bug 549738

Revision history for this message
Steve Langasek (vorlon) wrote :

The basic problem here is pulseaudio starting up before consolekit has granted pulse access to the sound devices.

Apr 8 22:46:27 ubuntu pulseaudio[3807]: main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operation not permitted
Apr 8 22:46:27 ubuntu pulseaudio[3807]: main.c: setrlimit(RLIMIT_RTPRIO, (9, 9)) failed: Operation not permitted
Apr 8 22:46:27 ubuntu pulseaudio[3807]: core-rtclock.c: Timer slack is set to 50 us.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: core-util.c: Failed to acquire high-priority scheduling: Permission denied
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: This is PulseAudio 0.9.21-63-gd3efa-dirty
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Compilation host: i486-pc-linux-gnu
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Compilation CFLAGS: -g -O2 -g -Wall -O3 -Wall -W -Wextra -pipe -Wno-long-long -Winline -Wvla -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wold-style-definition -Wpointer-arith -Winit-self -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wcast-align -Wstrict-aliasing=2 -Wwrite-strings -Wno-unused-parameter -ffast-math -Wp,-D_FORTIFY_SOURCE=2 -fno-common -fdiagnostics-show-option
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Running on host: Linux i686 2.6.32-19-generic #28-Ubuntu SMP Wed Mar 31 17:46:20 UTC 2010
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Found 2 CPUs.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Page size is 4096 bytes
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Compiled with Valgrind support: no
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Running in valgrind mode: no
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Running in VM: no
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Optimized build: yes
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: All asserts enabled.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Machine ID is 7fce1b2cc87bb769666a15594bbdeddb.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Using runtime directory /home/ubuntu/.pulse/7fce1b2cc87bb769666a15594bbdeddb-runtime.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Using state directory /home/ubuntu/.pulse.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Using modules directory /usr/lib/pulse-0.9.21/modules.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Running in system mode: no
Apr 8 22:46:28 ubuntu pulseaudio[3807]: main.c: Fresh high-resolution timers available! Bon appetit!
Apr 8 22:46:28 ubuntu pulseaudio[3807]: cpu-x86.c: CPU flags: CMOV MMX SSE SSE2 SSE3 SSSE3
Apr 8 22:46:28 ubuntu pulseaudio[3807]: svolume_mmx.c: Initialising MMX optimized functions.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: remap_mmx.c: Initialising MMX optimized remappers.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: svolume_sse.c: Initialising SSE2 optimized functions.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: remap_sse.c: Initialising SSE2 optimized remappers.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: sconv_sse.c: Initialising SSE2 optimized conversions.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: memblock.c: Using shared memory pool with 1024 slots of size 64.0 KiB each, total size is 64.0 MiB, maximum usable slot size is 65496
Apr 8 22:46:28 ubuntu pulseaudio[3807]: database-tdb.c: Opened TDB database '/home/ubuntu/.pulse/7fce1b2cc87bb769666a15594bbdeddb-device-volumes.tdb'
Apr 8 22:46:28 ubuntu pulseaudio[3807]: module-device-restore.c: Sucessfully opened database file '/home/ubuntu/.pulse/7fce1b2cc87bb769666a15594bbdeddb-device-volumes'.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: module.c: Loaded "module-device-restore" (index: #0; argument: "").
Apr 8 22:46:28 ubuntu pulseaudio[3807]: database-tdb.c: Opened TDB database '/home/ubuntu/.pulse/7fce1b2cc87bb769666a15594bbdeddb-stream-volumes.tdb'
Apr 8 22:46:28 ubuntu pulseaudio[3807]: module-stream-restore.c: Sucessfully opened database file '/home/ubuntu/.pulse/7fce1b2cc87bb769666a15594bbdeddb-stream-volumes'.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: module.c: Loaded "module-stream-restore" (index: #1; argument: "").
Apr 8 22:46:28 ubuntu pulseaudio[3807]: database-tdb.c: Opened TDB database '/home/ubuntu/.pulse/7fce1b2cc87bb769666a15594bbdeddb-card-database.tdb'
Apr 8 22:46:28 ubuntu pulseaudio[3807]: module-card-restore.c: Sucessfully opened database file '/home/ubuntu/.pulse/7fce1b2cc87bb769666a15594bbdeddb-card-database'.
Apr 8 22:46:28 ubuntu pulseaudio[3807]: module.c: Loaded "module-card-restore" (index: #2; argument: "").
Apr 8 22:46:28 ubuntu pulseaudio[3807]: module.c: Loaded "module-augment-properties" (index: #3; argument: "").
Apr 8 22:46:28 ubuntu pulseaudio[3807]: cli-command.c: Checking for existance of '/usr/lib/pulse-0.9.21/modules/module-udev-detect.so': success
Apr 8 22:46:28 ubuntu pulseaudio[3807]: module-udev-detect.c: /dev/snd/controlC0 is accessible: no
Apr 8 22:46:28 ubuntu pulseaudio[3807]: module-udev-detect.c: Found 1 cards.

Once the session has started and consolekit is in play, the sound devices have an acl that lets the ubuntu user access them. 'killall pulseaudio' is enough to fix this from the desktop, as the next autospawned process will scan again and find the permissions in order.