[alsa-devel] [PATCH] Set CLOEXEC flag for pipes in PulseAudio plugins
Takashi Iwai
tiwai at suse.de
Tue Sep 27 09:54:45 CEST 2011
At Mon, 26 Sep 2011 17:09:24 +0100,
Chris Rankin wrote:
>
> Hi,
>
> I have noticed that Alsa / PulseAudio are leaking a couple of pipes after a
> fork/exec, and have traced the leak to the following two plugins:
>
> libasound_module_ctl_pulse.so
> libasound_module_pcm_pulse.so
>
> This is with Fedora 15. I have attached a patch for the problem.
Thanks, applied now.
Takashi
>
> Cheers,
> Chris
> [2 ALSA-PULSE-CLOEXEC.diff <text/x-patch (7bit)>]
> --- alsa-plugins-1.0.24.orig/pulse/pulse.c 2011-01-26 11:05:44.000000000 +0000
> +++ alsa-plugins-1.0.24/pulse/pulse.c 2011-09-26 16:49:43.000000000 +0100
> @@ -114,6 +114,10 @@
> return fcntl(fd, F_SETFL, fl | O_NONBLOCK);
> }
>
> +static int make_close_on_exec(int fd) {
> + return fcntl(fd, F_SETFD, FD_CLOEXEC);
> +}
> +
> snd_pulse_t *pulse_new(void)
> {
> snd_pulse_t *p;
> @@ -134,7 +138,9 @@
> p->thread_fd = fd[1];
>
> make_nonblock(p->main_fd);
> + make_close_on_exec(p->main_fd);
> make_nonblock(p->thread_fd);
> + make_close_on_exec(p->thread_fd);
>
> p->mainloop = pa_threaded_mainloop_new();
> if (!p->mainloop)
> [3 <text/plain; us-ascii (7bit)>]
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
More information about the Alsa-devel
mailing list