context: add property to forcefully disable shared memory channels
requested to merge igor.v.kovalenko/pulseaudio:pr/add-context-force-disable-shm-property into master
If application wants last bits of virtual memory, allow it to forcefully disable shared memory communication channels via PA_PROP_CONTEXT_FORCE_DISABLE_SHM boolean value
pa_mainloop *pulse_ml = pa_mainloop_new();
pa_proplist *proplist = pa_proplist_new();
if (pa_proplist_sets(proplist, PA_PROP_CONTEXT_FORCE_DISABLE_SHM, "true") == 0) {
pa_context *pulse_ctx = pa_context_new_with_proplist(pa_mainloop_get_api(pulse_ml), "MyApp", proplist);
}
Primary user would be Wine 32bit with 2Gb vmem limit.
See also https://bugs.winehq.org/show_bug.cgi?id=43685#c4
Note mmap() error handling is still worth looking at but in that winehq bug comment it looks like a consequence of vmem shortage.
Edited by Igor Kovalenko