[alsa-devel] kmemleak findings about USB audio recording on	3.3.2
    Alexander E. Patrakov 
    patrakov at gmail.com
       
    Sun May 27 13:18:38 CEST 2012
    
    
  
2012/5/18 Clemens Ladisch <clemens at ladisch.de>:
> Please try this patch.
>
> --8<---------------------------------------------------------------->8--
> ALSA: usb-audio: fix rate_list memory leak
>
> The array of sample rates is reallocated every time when opening
> the PCM device, but was freed only once when unplugging the device.
>
> Reported-by: "Alexander E. Patrakov" <patrakov at gmail.com>
> Signed-off-by: Clemens Ladisch <clemens at ladisch.de>
> ---
>  sound/usb/pcm.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
>
> --- a/sound/usb/pcm.c
> +++ b/sound/usb/pcm.c
> @@ -783,6 +783,9 @@ static int snd_usb_pcm_check_knot(struct snd_pcm_runtime *runtime,
>        int count = 0, needs_knot = 0;
>        int err;
>
> +       kfree(subs->rate_list.list);
> +       subs->rate_list.list = NULL;
> +
>        list_for_each_entry(fp, &subs->fmt_list, list) {
>                if (fp->rates & SNDRV_PCM_RATE_CONTINUOUS)
>                        return 0;
I have applied this on top of 3.4.0. So far, the microphone works, and
there are no leaks detected.
-- 
Alexander E. Patrakov
    
    
More information about the Alsa-devel
mailing list