core: Support memfd transport; bump protocol version

Now that all layers in the stack support memfd blocks, add memfd
support for the daemon's global core mempool. Also introduce
"enable-memfd=" daemon argument and configuration option.

For now, memfd support is an opt-in feature to be activated only
when daemon's enable-memfd= is set to yes.

Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
This commit is contained in:
Ahmed S. Darwish 2016-04-15 23:07:36 +02:00 committed by Arun Raghavan
parent b1d47d60fc
commit d2a6afcab3
13 changed files with 122 additions and 24 deletions

View file

@ -292,13 +292,22 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
<p><opt>--disable-shm</opt><arg>[=BOOL]</arg></p>
<optdesc><p>PulseAudio clients and the server can exchange audio
data via POSIX shared memory segments (on systems that support
this). If disabled PulseAudio will communicate exclusively over
sockets. Please note that data transfer via shared memory
data via POSIX or memfd shared memory segments (on systems that
support this). If disabled PulseAudio will communicate exclusively
over sockets. Please note that data transfer via shared memory
segments is always disabled when PulseAudio is running with
<opt>--system</opt> enabled (see above).</p></optdesc>
</option>
<option>
<p><opt>--enable-memfd</opt><arg>[=BOOL]</arg></p>
<optdesc><p>PulseAudio clients and the server can exchange audio
data via memfds - the anonymous Linux Kernel shared memory mechanism
(on kernels that support this). If disabled PulseAudio will
communicate via POSIX shared memory.</p></optdesc>
</option>
<option>
<p><opt>-L | --load</opt><arg>="MODULE ARGUMENTS"</arg></p>