summaryrefslogtreecommitdiffstats
path: root/src/pulsecore
Commit message (Collapse)AuthorAgeFilesLines
...
* | core-util: add call to detect if we are called from within a VMLennart Poettering2009-11-052-0/+92
| |
* | daemon: make sure pa has its own session and process group, but is not its ↵Lennart Poettering2009-10-312-0/+18
| | | | | | | | leader so that we cannot acquire a tty ever
* | Mac OS X: add semaphore implementationDaniel Mack2009-10-311-0/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Wed, Sep 16, 2009 at 11:57:04PM +0200, Lennart Poettering wrote: > On Wed, 16.09.09 15:15, Daniel Mack (daniel@caiaq.de) wrote: > > > + s = pa_xnew(pa_semaphore, 1); > > + MPCreateSemaphore(UINT_MAX, value, &(s->sema)); > > + pa_assert(s->sema != 0); > > Hmm, I'd prefer if the ret val of MPCreateSemaphore() would be checked > here. > > Also I find it a bit weird checking for s->sema, though not > initializing it to 0 in the beginning. If the call actually failed, > then the assert will check uninitialized memory. Also, comparing > pointers with 0 sucks. That should be NULL. > > Given that this can not realisitically fail, only in OOM or OOM-like > situations in which case we abort anyway it mght be enough just writing: > > pa_assert_se(MPCreateSemaphore(UINT_MAX, value, &s->sema) == 0); > > (Assuming that success is signalled by retval == 0 on MacOSX) > > > +void pa_semaphore_free(pa_semaphore *s) { > > + pa_assert(s); > > + MPDeleteSemaphore(s->sema); > > Same here. > > > + pa_xfree(s); > > +} > > + > > +void pa_semaphore_post(pa_semaphore *s) { > > + pa_assert(s); > > + MPSignalSemaphore(s->sema); > > And here. > > > +} > > + > > +void pa_semaphore_wait(pa_semaphore *s) { > > + pa_assert(s); > > + /* should probably check return value (-ve is error), noErr is ok. */ > > + MPWaitOnSemaphore(s->sema, kDurationForever); > > And here. Ok, done. See the patch below. Daniel >From 26df2fbae6d9215a3ae084876fb5f79e4d9cf4f0 Mon Sep 17 00:00:00 2001 From: Kim Lester <kim@dfusion.com.au> Date: Wed, 16 Sep 2009 09:23:39 +0800 Subject: [PATCH] Mac OS X: add semaphore implementation
* | Wrap clock_gettime and friendsDaniel Mack2009-10-311-6/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Wed, Sep 16, 2009 at 11:48:58PM +0200, Lennart Poettering wrote: > On Wed, 16.09.09 15:15, Daniel Mack (daniel@caiaq.de) wrote: > > > From: Kim Lester <kim@dfusion.com.au> > > > > OS X does not define clockid_t or clock_gettime() and friends. > > Add a wrapper to fix this. > > Hmpf. I am not particularly happy with this. This adds a lot of > unnecessary compat code. We don't actually need implementations of > clock_getres(). All we need is some kind of check whether system > timers are accurate or whether they are rounded up to scheduling > slices. On Linux we do that check with clock_getres(), but all the > information it returns is actually not intertesting at all. We just > check if this is below some trheshold, that's all. > > clock_settime() we don't use at all! We shouldn't carry compat code > for that. > > And clock_gettime we don't really need either. We need some kind of > accurate system timers (preferably monotonic), and on Linux we use > clock_gettime() for that. But we already have a fallback there for > gettimeofday(). > > Or in other words, the current APIs pa_rtclock_get(), > pa_rtclock_hrtimer() is supposed to be the abstract API that has > different backends on different systems. I'd very much prefer if any > MacOS specific code would simply be plugged in there instead of > creating various new abstraction interfaces! Ok - what about the version below? I don't particularily like the Daniel >From 9f0a051953ec354ccdb8aa44a9845c408b26ae0b Mon Sep 17 00:00:00 2001 From: Kim Lester <kim@dfusion.com.au> Date: Wed, 16 Sep 2009 14:40:01 +0800 Subject: [PATCH] Implement pa_rtclock_get() and pa_rtclock_hrtimer() for Darwin OS X does not define clockid_t or clock_gettime() and friends. Add wrappers to fix this. Based on a patch from Kim Lester <kim@dfusion.com.au>.
* | X11: attach X11 properties to Screen, not DisplayLeszek Koltunski2009-10-301-6/+14
| |
* | svolume: fix MMX errorWim Taymans2009-10-301-1/+6
| | | | | | | | | | We need to sign extend the lower part of the multiplication before adding it to the higher part. Makes -1 * 0xffff work again.
* | sink: simplify silence checksWim Taymans2009-10-301-12/+10
| |
* | socket-util: drop redundant castsLennart Poettering2009-10-301-12/+12
| |
* | socket-util: allocate at least sizeof(sockaddr_storage) spaceLennart Poettering2009-10-301-2/+2
| |
* | use pa_fopen_cloexec() where applicableLennart Poettering2009-10-306-10/+10
| |
* | tdb: use O_CLOEXEC if availableLennart Poettering2009-10-301-9/+34
| |
* | core-util: introduce pa_fopen_cloexec()Lennart Poettering2009-10-302-2/+28
| |
* | core-util: make sure to enable FD_CLOEXEC unconditionally to cope with ↵Lennart Poettering2009-10-301-3/+12
| | | | | | | | kernels that silently accept but ignore O_CLOEXEC
* | use cloexec wrappers wherever applicableLennart Poettering2009-10-3013-62/+22
| |
* | core-util: introduce FD_CLOEXEC wrappers for open/socket/pipe/acceptLennart Poettering2009-10-302-0/+85
| |
* | simd: update test casesLennart Poettering2009-10-292-3/+11
| |
* | smoother: add comments about optimization recommendations from Jason NewtonLennart Poettering2009-10-291-0/+7
| |
* | libpulse: introduce PA_STREAM_RELATIVE_VOLUMELennart Poettering2009-10-291-3/+14
| |
* | protocol-native: if a client set volume/mute/device store it since it is ↵Lennart Poettering2009-10-281-2/+8
| | | | | | | | user input
* | protocol-native: declare that user configured volumes are always absoluteLennart Poettering2009-10-281-1/+3
| |
* | memblock: decrease tile size to 64k againLennart Poettering2009-10-281-1/+1
| |
* | Fix build when using -fweb, accept both register and memory constraints.Diego Elio 'Flameeyes' Pettenò2009-10-072-4/+4
| | | | | | | | | | This was reported as Gentoo bug #287391 by Torsten Kaiser, and the fix was suggested by Mike Frysinger.
* | Merge remote branch 'phish3/master'Lennart Poettering2009-10-071-1/+1
|\ \
| * | module-equalizer-sink: trying new buffering strategiesJason Newton2009-09-291-1/+1
| | |
* | | Merge branch 'master' into dbus-workTanu Kaskinen2009-10-0234-316/+505
|\| | | | | | | | | | | | | | Conflicts: src/daemon/daemon-conf.c
| * | svolume: tweak constraints for 32 bitsWim Taymans2009-09-232-4/+4
| | | | | | | | | | | | | | | | | | Tweak the constraints a little so that register starved 32bit systems can select a stack variable for the channel paramter instead of reusing one of the registers we're using in the code.
| * | core: dump proplist when creating stream similar to how we already to it for ↵Lennart Poettering2009-09-202-4/+12
| | | | | | | | | | | | sinks/sources
| * | memtrap: properly add items to linked listLennart Poettering2009-09-191-1/+4
| | |
| * | namereg: choose default sink/source as soon as one becomes availableLennart Poettering2009-09-181-1/+12
| | |
| * | memblock: don't try to reuse PA_MEMBLOCK_APPENDED memblocks since they ↵Lennart Poettering2009-09-181-4/+11
| | | | | | | | | | | | usually are much bigger than we want them
| * | socket-client: modernizationsLennart Poettering2009-09-182-38/+24
| | |
| * | memblock: modernizationsLennart Poettering2009-09-181-3/+2
| | |
| * | timeval: make timeval conversion routines handle PA_USEC_INVALID specialLennart Poettering2009-09-181-1/+7
| | |
| * | core-rtclock: introduce pa_timespec_store() akin pa_timeval_store()Lennart Poettering2009-09-182-0/+15
| | |
| * | macro: introduce PA_INT_TYPE_MIN, PA_INT_TYPE_MAX, PA_INT_TYPE_SIGNED macrosLennart Poettering2009-09-181-0/+12
| | |
| * | core-util: unify how we determine the temporary directoryLennart Poettering2009-09-172-10/+25
| | |
| * | Improve TMPDIR handlingLennart Poettering2009-09-171-1/+1
| | | | | | | | | | | | | | | | | | Patch from 'jnelson', http://pulseaudio.org/ticket/653
| * | svolume_mmx: disable test accidentaly left onLennart Poettering2009-09-171-1/+1
| | |
| * | Merge remote branch 'wtay/optimize'Lennart Poettering2009-09-172-14/+8
| |\ \
| | * | svolume_mmx: optimize some moreWim Taymans2009-09-161-13/+7
| | | | | | | | | | | | | | | | | | | | | | | | We can reorder the algortihm a bit like we do for sse so that we don't need the contants and masking instructions. Saves 2 instructions for the mmx code.
| | * | svolume_sse: fix commentWim Taymans2009-09-161-1/+1
| | | |
| * | | memblock: make it easy to disable mempool usage with $PULSE_MEMPOOL_DISABLELennart Poettering2009-09-171-0/+7
| |/ /
| * | core: add an additional volume factor that is applied after resampling took ↵Lennart Poettering2009-09-112-10/+56
| | | | | | | | | | | | place
| * | native: send PA_COMMAND_PLAYBACK_BUFFER_ATTR_CHANGED messages only to ↵Lennart Poettering2009-09-101-13/+15
| | | | | | | | | | | | clients that understand it
| * | simd: be more precise which SIMD optimizations we activateLennart Poettering2009-09-095-16/+28
| | |
| * | sample-util: add pa_convert_size() call for converting sizes between two ↵Lennart Poettering2009-09-092-0/+12
| | | | | | | | | | | | sample specs
| * | ratelimit: allow non-static ratelimit structsLennart Poettering2009-09-091-4/+14
| | |
| * | protocol-native: log explicitly when someone asks us to quitLennart Poettering2009-09-081-0/+2
| | |
| * | core-util: properly fill in exception array for pa_reset_sigs() ↵Lennart Poettering2009-09-081-1/+1
| | | | | | | | | | | | (llvm-clang-analyzer)
| * | conf-parser: properly initialize variable we free() later (llvm-clang-analyzer)Lennart Poettering2009-09-081-1/+1
| | |